- llamafile packt ein GGUF-Modell und die llama.cpp-Inferenz-Engine in eine ausführbare Datei, die auf Linux, macOS, Windows, FreeBSD und mehr läuft — ohne Installation erforderlich.
- Ausführen
./model.llamafileund eine Browser-Chat-UI öffnet sich automatisch; eine zu OpenAI kompatible API wird bereitgestellt unterhttp://localhost:8080/v1. - Dateien über 4 GB können nicht direkt unter Windows ausgeführt werden — verwenden Sie eine kleinere Quantisierung oder führen Sie die Runtime und GGUF separat aus.
- Best for air-gapped machines, USB deployment, and one-file sharing. Ollama is better for managing multiple models long-term.
llamafile ist eine einzelne ausführbare Datei, die sowohl ein Sprachmodell als auch die Inferenz-Runtime enthält. Basierend auf llama.cpp und Cosmopolitan Libc läuft dieselbe Datei nativ auf Linux, macOS, Windows, FreeBSD und anderen Systemen — kein Container, keine Python-Umgebung, kein Package Manager erforderlich.
Wie eine einzelne Datei auf jedem Betriebssystem läuft
llamafile basiert auf zwei Technologien. llama.cpp bietet die C++-Inferenz-Engine für Modelle im GGUF-Format. Cosmopolitan Libc erzeugt eine Polyglot-Binary: eine einzelne Bytefolge, die gleichzeitig das PE/COFF-Format erfüllt, das Windows erwartet, das ELF-Format, das Linux erwartet, und den Mach-O-Header, den macOS erwartet. Wenn Sie die Datei ausführen, findet jeder Betriebssystem-Loader seinen eigenen gültigen Header und führt die Binary nativ aus — keine Emulation oder Übersetzungsschicht beteiligt.
Die Modellgewichte werden an diese Binary mit einem ZIP-kompatiblen Container angehängt. ZIP erlaubt beliebige Daten vor dem zentralen Verzeichniseintrag, sodass die GGUF-Datei am Ende existiert, ohne die ausführbare Datei zu beschädigen. Die Runtime lokalisiert die Gewichte, indem sie beim Start zum Ende der Datei springt. Ein praktischer Nebeneffekt: Sie können die Gewichte aus jedem llamafile mit einem Standard-ZIP-Dienstprogramm inspizieren oder extrahieren.
llamafile herunterladen und ausführen
Vorgefertigte llamafiles werden auf Hugging Face von Modellautoren veröffentlicht und verlinkt vom Mozilla-Ocho/llamafile GitHub-Repository. Dateien verwenden die .llamafile Erweiterung.
Linux und macOS
# Executable machen — heruntergeladene Dateien haben standardmäßig das Execute-Bit nicht
chmod +x mistral-7b-instruct.llamafile
# Server und Web-UI starten (Browser öffnet sich automatisch)
./mistral-7b-instruct.llamafile
# Einmalige CLI-Inferenz ohne den Server zu starten
./mistral-7b-instruct.llamafile -p "Explain llamafile in one paragraph"
Der Server bindet standardmäßig an 127.0.0.1:8080 . Übergeben Sie --port 9000 um den Port zu ändern, oder --host 0.0.0.0 um auf allen Netzwerkschnittstellen zu lauschen — nützlich, um von einer Headless-Maschine in einem lokalen Netzwerk zu servieren. Führen Sie./model.llamafile --help aus, um alle verfügbaren Flags zu sehen, einschließlich Optionen zum Unterdrücken des automatischen Browser-Tabs bei Ausführung im Headless-Modus.
Windows
Windows erfordert, dass ausführbare Dateien auf .exeenden. Benennen Sie die Datei vor dem Ausführen um:
ren mistral-7b-instruct.llamafile mistral-7b-instruct.llamafile.exe
Doppelklicken Sie dann im Explorer oder führen Sie es in der Eingabeaufforderung aus. Ein Browser-Tab öffnet sich automatisch.
Die 4-GB-Grenze. Der Windows PE-Loader kann keine ausführbaren Dateien größer als 4 GB verarbeiten. Die meisten 7B-Modelle in Q8 oder höherer Quantisierung und alle 13B+-Modelle überschreiten diesen Schwellenwert. Wenn die Datei größer als 4 GB ist, wird Windows sie nicht starten. Ihre Optionen: laden Sie eine Q4_K_M quantisierte Variante herunter (typischerweise 4–5 GB für ein 7B-Modell, oft knapp unter der Grenze), oder laden Sie die eigenständige llamafile-Runtime-Binary herunter und übergeben Sie das GGUF als separates Argument. Bevor Sie ein Modell und eine Quantisierung auswählen, prüfen Sie die VRAM- und Dateigröße-Anforderungen für große LLMs um die richtige Quantisierung für Ihre Hardware auszuwählen.
Die integrierte Web-UI
Die Ausführung einer llamafile ohne das -p Flag startet einen HTTP-Server und öffnet Ihren Standard-Browser unter http://localhost:8080. Die Oberfläche ist eine vollständig eigenständige Single-Page-Anwendung ohne externe CDN-Abhängigkeiten — sie funktioniert vollständig offline. Sie bietet:
- System-Prompt-Konfiguration
- Sampling-Parameter: Temperatur, Top-p, Top-k, Wiederholungspenalty
- Token-Count-Anzeige
- Persistente Konversationsverlauf innerhalb der Sitzung
Jedes Gerät in Ihrem LAN kann auf die UI zugreifen, wenn Sie den Server mit --host 0.0.0.0.
Die OpenAI-kompatible API
Während der Server läuft, macht llamafile eine OpenAI-kompatible REST-API unter http://localhost:8080/v1verfügbar. Jeder OpenAI-SDK-Client, LangChain oder LlamaIndex-Integration kann ihn als Ziel verwenden, indem die Basis-URL überschrieben wird:
curl http://localhost:8080/v1/chat/completions
-H "Content-Type: application/json"
-d '{
"model": "local",
"messages": [{"role": "user", "content": "Hello"}]
}'
In Python setzen Sie base_url="http://localhost:8080/v1" und einen beliebigen nicht-leeren String als API-Schlüssel beim Erstellen des openai.OpenAI -Clients. Modell Das Feld »requests« wird ignoriert – das geladene Modell wird stets verwendet.
Ein llamafile aus einem vorhandenen GGUF erstellen
Falls Sie bereits ein GGUF-Modell besitzen – aus dem llama.cpp-Ökosystem, dem lokalen Cache von Ollama oder einem Download von Hugging Face – können Sie es in eine eigenständige llamafile verpacken. Der Vorgang nutzt das llamafile-zipalign -Hilfsprogramm, das im llamafile-Toolset enthalten ist:
- Laden Sie das llamafile-Release-Archiv für Ihre Plattform von der GitHub-Releases-Seite.
- herunter.
Extrahieren Sie die eigenständigellamafile - Nutzen Sie
llamafile-zipalign-Binärdatei (lediglich die Laufzeitumgebung, ohne integriertes Modell). - Markieren Sie das Ergebnis als ausführbar und führen Sie es aus.
Die genaue Syntax der Befehlszeilenoptionen hat sich zwischen den Versionen geändert. Beachten Sie daher bitte den Abschnitt »Creating llamafiles« im offiziellen README für die aktuelle Syntax. Die Ausgabe ist eine einzige portable Datei, die Sie wie jede andere Binärdatei verteilen können.
llamafile vs. Ollama: Wann man welches nutzt
Beide Tools werden GGUF-Modelle lokal ausgeführt und machen OpenAI-kompatible APIs verfügbar. Sie lösen unterschiedliche Probleme. Siehe die Kompletter Ollama-Leitfaden Vergleichstabelle
| Kriterium | Extrahieren Sie die eigenständige | Ollama |
|---|---|---|
| Installation | Keine erforderlich – einfach herunterladen und ausführen | Installer oder Paketmanager erforderlich |
| Modellverwaltung | Manuell – je Modell eine Datei | Eingebaute Bibliothek, ollama pull |
| Tragbarkeit | Einzelne Datei – USB-Stick, E-Mail, NFS-Freigabe | Erfordert den Ollama-Daemon auf dem Zielrechner |
| GPU-Beschleunigung | CUDA, Metal, ROCm (automatische Erkennung) | CUDA, Metal, ROCm |
| Mehrmodell-Serverbetrieb | Ein Modell pro Prozess | Mehrere Modelle mit automatischem Hot-Swap |
| Große Modelle unter Windows | Eingeschränkt: nur ausführbare Dateien < 4 GB | Vollständige Unterstützung beliebiger Größe |
| Betrieb in abgeschotteten Netzwerken (Air-gapped) | Ausgezeichnet – keine Laufzeitabhängigkeiten | Erfordert die Installation eines Daemons |
| Integrierte Web-Oberfläche | Ja, ohne zusätzliche Installation | Erfordert eine separate Frontend-Anwendung |
Wählen Sie llamafile wenn Sie auf Rechnern ohne Ihre Kontrolle verteilen, in abgeschotteten Umgebungen arbeiten oder ein Modell in ein Projekt einbetten möchten, das ohne systemweite Abhängigkeiten funktionieren muss. Wählen Sie Ollama wenn Sie eine Modellbibliothek verwalten, automatische Updates wünschen oder innerhalb einer Sitzung häufig zwischen verschiedenen Modellen wechseln.
Falls Sie prüfen möchten, ob lokale Inferenz für Ihre Workload wirtschaftlich sinnvoll ist, kann der Selbsthosting- versus-API-Kosten-Grenzwert-Rechner Kostenvergleichsrechner
Hardware-Anforderungen
llamafile fügt gegenüber llama.cpp nur vernachlässigbare Overhead-Kosten hinzu. Der Engpass liegt stets in der Modellgröße und der Quantisierung. llamafile erkennt beim Start verfügbare Beschleuniger – CUDA für NVIDIA-GPUs, Metal für Apple Silicon und ROCm für AMD – und nutzt diese automatisch. Falls keine GPU gefunden wird, erfolgt ein Fallback auf CPU-Inferenz mittels AVX2- oder AVX-512-Befehlen, sofern verfügbar.
Ein Modell mit 7 Milliarden Parametern in Q4_K_M-Quantisierung benötigt etwa 4–5 GB VRAM, um vollständig auf der GPU ausgeführt zu werden. Nutzen Sie den VRAM-Rechner VRAM-Anforderungsrechner Leitfaden zu den besten GPUs für lokale LLMs Hardware-Kaufleitfaden
Häufig gestellte Fragen
Kann ich llamafile auf Apple Silicon ausführen?
Ja. llamafile erzeugt auf Apple Silicon eine native Mach-O-Binärdatei und nutzt automatisch die Metal-GPU-Beschleunigung. Die Leistung ist solide für 7B- und 13B-Modelle; größere Modelle sind durch den verfügbaren Unified Memory begrenzt. Ein M2 Max oder M3 Pro mit 36 GB Unified Memory kann problemlos Modelle der 30B-Klasse ausführen.
Unterstützt llamafile multimodale (Visions-)Modelle?
llamafile basiert auf llama.cpp, das LLaVA-artige Visionsmodelle unterstützt. Ob eine bestimmte llamafile Eingabebilder verarbeiten kann, hängt davon ab, ob das eingebettete Modell tatsächlich multimodal ist. Prüfen Sie dazu die Modellbeschreibung (Model Card) der heruntergeladenen Datei – die Funktionalität liegt in den Gewichten, nicht in der Laufzeitumgebung.
Wie beende ich den Server?
Presse Strg+C im Terminal, in dem llamafile läuft. Falls Sie es unter Windows oder macOS per Doppelklick gestartet haben, schließen Sie das erschienene Terminalfenster oder beenden Sie den Prozess über den Task-Manager bzw. Activity Monitor.
Kann ich llamafile als Hintergrunddienst ausführen?
Ja. Unter Linux können Sie es in eine systemd-Unit-Datei einbinden. Unter macOS erstellen Sie eine launchd-plist-Datei. llamafile akzeptiert Standard-Unix-Signale und funktioniert mit jedem Prozessüberwachungssystem. Führen Sie ./model.llamafile --help llamafile --help
Ist llamafile dasselbe wie eine GGUF-Datei?
Nein. Eine GGUF-Datei enthält ausschließlich die Modellgewichte und erfordert eine separate Laufzeitumgebung – etwa llama.cpp oder Ollama, LM Studio, oder Ähnliches, zum Ausführen benötigt. Eine llamafile fasst Gewichte und und Laufzeitumgebung in einer einzigen Datei zusammen. Da die Gewichte im ZIP-Format angehängt sind, können Sie mit jedem gängigen ZIP-Tool das rohe GGUF aus einer beliebigen llamafile extrahieren und an anderer Stelle verwenden.
Wie schneidet llamafile im Vergleich zu LM Studio ab?
LM Studio is a GUI desktop application for model discovery and inference — it requires installation and manages a library of models, making it closer to Ollama than to llamafile. llamafile is a deployment format: no GUI, no model library, just a file you execute. LM Studio suits users who want a visual interface; llamafile suits automated, headless, or portable deployments. See the LM Studio – umfassende Anleitung für eine umfassende Gegenüberstellung.
