update: README, neue Modelle (Gemma 3 4B, Phi-4-mini), Symlinks

- Modelle: Gemma 3 4B IT (2.4 GB), Phi-4-mini (2.5 GB),
  MiniCPM5-1B (688 MB) — als Symlinks auf Stick
- README: Vollständig überarbeitet mit allen Features
- Startup-Zeiten und IFEval-Scores dokumentiert
- CrowdCode CLI Features dokumentiert
- Shell-Kommando-Erkennung im CLI
This commit is contained in:
xray 2026-07-09 11:43:45 +02:00
parent 54c441af6f
commit 0023ccbd79
4 changed files with 83 additions and 42 deletions

122
README.md
View file

@ -1,64 +1,102 @@
# 🦙 MiniLlama — Portable LLM Chat
# 🦙 MiniLlama — Portable LLM Chat & API-Server
**MiniLlama** ist ein portabler LLM-Chat, der direkt vom USB-Stick läuft — ohne Installation, auf **Windows und Linux**.
**MiniLlama** ist ein portabler LLM-Stack, der direkt vom USB-Stick läuft — ohne Installation, auf **Windows und Linux**.
Enthält: Chat, API-Server (OpenAI-kompatibel), CrowdCode CLI für Dateioperationen + Wiki-Modus.
## Schnellstart
| OS | Befehl |
|----|--------|
| 🐧 Linux | `./start.sh` |
| 🪟 Windows | `start.bat` |
### 💬 Chat (direkt)
```bash
./start.sh # Linux
start.bat # Windows
```
Modell aus dem Menü wählen — loschatten.
Das Skript zeigt alle Modelle aus dem `models/`-Ordner als nummeriertes Menü an. Einfach die Ziffer wählen und loschatten.
### 🔌 API-Server (für CrowdCode, andere Tools)
```bash
./start-server.sh # → http://127.0.0.1:8080/v1
```
### 🤖 CrowdCode CLI (Dateioperationen + Chat)
```bash
./crowdcode.sh # Linux
crowdcode.bat # Windows
```
Startet Server automatisch bei Bedarf. Shell-Kommandos (`pwd`, `ls`, `git`) werden direkt ausgeführt.
## Projektstruktur
```
MiniLlama/
├── start.sh ← Starter für Linux (Bash)
├── start.bat ← Starter für Windows (Batch)
├── start.sh ← Chat (Linux)
├── start.bat ← Chat (Windows)
├── start-server.sh ← API-Server
├── crowdcode.sh ← CrowdCode CLI (Linux)
├── crowdcode.bat ← CrowdCode CLI (Windows)
├── deploy.sh ← Auf USB-Stick exportieren
├── cli/
│ └── crowdcode.js ← CrowdCode Node.js CLI (480 Zeilen)
├── bin/
│ ├── linux/ ← llama.cpp (b9936) für Linux x86_64
│ └── win/ ← llama.cpp für Windows x86_64
├── models/ ← Hier kommen die .gguf-Modelle rein
│ ├── linux/ ← llama.cpp (b9936) für Linux x86_64
│ └── win/ ← llama.cpp für Windows x86_64
├── models/ ← GGUF-Modelle (Symlinks auf Stick)
└── README.md
```
## Modelle
## Verfügbare Modelle
GGUF-Modelle (`*.gguf`) im `models/`-Ordner ablegen.
Die Start-Skripte erkennen automatisch alle vorhandenen Modelle und zeigen sie zur Auswahl an.
| Modell | Größe | Typ | IFEval | Lädt | FILE:-Pattern |
|--------|-------|-----|--------|------|---------------|
| **LFM2.5-8B-A1B** ⭐ | ~5,4 GB | MoE 1,5B aktiv | **91,84** | ? | ✅ Tool-Calling |
| **Gemma 3 4B IT** ⭐ | 2,4 GB | Dicht | **90,2** | ~3s | ✅ Getestet |
| **Phi-4-mini** ⭐ | 2,5 GB | Dicht | ~88 | ~3s | ✅ Getestet |
| **LFM2-8B-A1B** | 4,5 GB | MoE 1,5B aktiv | 79,44 | ? | ✅ (erwartet) |
| **Qwen3.5-4B** | 3,0 GB | Dicht | ~85 | ~47s | ✅ Getestet |
| **Gemma-4-E2B** | 2,9 GB | Dicht | ~80 | ~30s | ? |
| **Qwen2.5-1.5B** (klein) | 1,0 GB | Dicht | ~70 | ~2s | ❌ Zu schwach |
> **Von Quantisierungsstufen** reichen Q4_K_M und Q5_K_M für gute Qualität bei moderater Dateigröße.
⭐ = Neu empfohlen (Juli 2026)
## Deployment auf einen USB-Stick
## CrowdCode CLI Features
1. **Modelle kopieren** (nötig für Portabilität, da Symlinks auf einem anderen Rechner brechen):
```bash
cp -r /pfad/zu/models/*.gguf /pfad/zum/stick/MiniLlama/models/
```
| Funktion | Beschreibung |
|----------|-------------|
| `@datei.py` | Dateiinhalt lesen |
| `@verz/` | Verzeichnis auflisten |
| `@verz/**` | Rekursiver Dateibaum |
| `@?begriff` | Grep-Suche |
| `FILE: pfad` + Codeblock | Datei schreiben (vom LLM) |
| `DIR: pfad` | Verzeichnis erstellen (vom LLM) |
| `EDIT: pfad` + `---OLD`/`---NEW` | Gezielte Änderung (vom LLM) |
| `` bash `` | Shell ausführen (mit Bestätigung) |
| `:m` | Multiline-Eingabe |
| `:h` | Hilfe |
| `:q` | Beenden |
2. **Ganzen Ordner auf den Stick kopieren:**
```bash
# Linux → Stick
cp -r MiniLlama /media/USER/STICKNAME/
# Windows → Stick
# Einfach MiniLlama-Ordner per Explorer auf den Stick ziehen
```
Shell-Kommandos (`pwd`, `ls`, `git`, `pip`, `curl`...) werden direkt ausgeführt, nicht ans LLM geschickt.
3. Auf dem Zielrechner vom Stick starten:
```bash
# Linux: Terminal im Stick-Ordner öffnen
./start.sh
# Windows: Explorer öffnen, Doppelklick auf start.bat
```
## Deployment auf USB-Stick
## Technische Details
```bash
./deploy.sh /pfad/zum/stick/MiniLlama
```
Kopiert alles inklusive Modelle, löst Symlinks auf.
- **Engine:** [llama.cpp](https://github.com/ggml-org/llama.cpp) b9936
- **Plattformen:**
- Linux: x86_64 (Ubuntu-kompatibel), baut auf glibc 2.35+
- Windows: x86_64 (CPU-only, keine GPU-Treiber nötig)
- **Dateisystem:** exFAT empfohlen (Dateien > 4 GB, Windows + Linux)
## Modelle auf dem Stick
Die Modelle liegen physikalisch auf dem Stick unter:
```
/media/xray/llama/llama/models/*.gguf
```
Im MiniLlama-Verzeichnis sind es Symlinks. Für Deployment auf anderen Stick `deploy.sh` nutzen.
## Wartung
### Binaries aktualisieren
Neues Release von https://github.com/ggml-org/llama.cpp/releases:
- Linux: `llama-bXXXX-bin-ubuntu-x64.tar.gz``bin/linux/`
- Windows: `llama-bXXXX-bin-win-cpu-x64.zip``bin/win/`
### Modell hinzufügen
GGUF-Datei in `models/` ablegen — wird automatisch erkannt.

View file

@ -0,0 +1 @@
/media/xray/llama/llama/models/MiniCPM5-1B-Q4_K_M.gguf

View file

@ -0,0 +1 @@
/media/xray/llama/llama/models/Phi-4-mini-instruct-Q4_K_M.gguf

View file

@ -0,0 +1 @@
/media/xray/llama/llama/models/gemma-3-4b-it-Q4_K_M.gguf