# 🦙 MiniLlama — Portable LLM Chat & API-Server **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 ### 💬 Chat (direkt) ```bash ./start.sh # Linux start.bat # Windows ``` Modell aus dem Menü wählen — 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 ← 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/ ← GGUF-Modelle (Symlinks auf Stick) └── README.md ``` ## Verfügbare Modelle | 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 | ⭐ = Neu empfohlen (Juli 2026) ## CrowdCode CLI Features | 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 | Shell-Kommandos (`pwd`, `ls`, `git`, `pip`, `curl`...) werden direkt ausgeführt, nicht ans LLM geschickt. ## Deployment auf USB-Stick ```bash ./deploy.sh /pfad/zum/stick/MiniLlama ``` Kopiert alles inklusive Modelle, löst Symlinks auf. ## 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.