Letzte Woche fragte ein Leser, warum seine GGUF-Datei in vLLM auf einer CPU-Maschine scheitert, während dieselbe Datei in Ollama problemlos läuft. Kurze Antwort, vor allem anderen: Ja, vLLM führt GGUF aus — über ein offizielles Plugin, nur auf GPU. Das Plugin heißt vllm-gguf-plugin, die Syntax ist repo:quant_type, und sobald du es auf der CPU versuchst, verlässt du die unterstützte Hardware-Tabelle. Alles Folgende stammt aus der vLLM-Dokumentation und der Historie des Repos vllm-project/vllm (92.000+ Stars seit Februar 2023) — die Doku, nicht mein Benchmark-Rig.
Wie servet man ein GGUF-Modell mit vLLM?
Zwei Schritte: Plugin installieren, dann vLLM aufs Modell zeigen lassen. GGUF-Support wohnt nicht mehr im vLLM-Kern — die Doku vermerkt, er „ist zu vllm-gguf-plugin migriert”, ein schlichtes pip install vllm reicht also nicht:
uv pip install vllm-gguf-plugin
# Direkt von Hugging Face, im Format repo_id:quant_type:
vllm serve unsloth/Qwen3-0.6B-GGUF:Q4_K_M
--tokenizer Qwen/Qwen3-0.6B
# Oder eine bereits heruntergeladene lokale Datei:
vllm serve ./Qwen3-0.6B-Q4_K_M.gguf
--tokenizer Qwen/Qwen3-0.6B Das --tokenizer-Flag ist keine Dekoration. Die offizielle Doku empfiehlt den Tokenizer des Basismodells, weil die GGUF-Tokenizer-Konvertierung „zeitaufwendig und instabil ist, besonders bei Modellen mit großem Vokabular”. Sie zu überspringen bedeutet, ein Einzeiler-Flag gegen einen langen, launischen Start einzutauschen.
Zwei GPUs, ein Modell: --tensor-parallel-size 2 verteilt dasselbe GGUF auf beide Karten — Tensor-Parallelismus funktioniert mit GGUF wie mit jedem anderen Format.
Warum lehnt vLLM GGUF auf der CPU ab?
Das ist der Teil, der überrascht. GGUFs Ruf ist CPU zuerst — es ist das Format, auf dem llama.cpp seinen Namen aufgebaut hat, auf Laptops und Raspberry Pis. In vLLM kehrt sich die Lage um. Die offizielle Hardware-Kompatibilitätstabelle markiert GGUF:
| Hardware | GGUF in vLLM |
|---|---|
| NVIDIA Volta / Turing / Ampere / Ada / Hopper | unterstützt |
| AMD-GPU | unterstützt |
| Intel-GPU | nicht unterstützt |
| x86-CPU | nicht unterstützt |
| Arm-CPU | nicht unterstützt |
Quelle: vLLM-Quantisierungsdocs. Der Grund ist architektonisch: vLLMs GGUF-Pfad dequantisiert Blöcke in GPU-Kernel, die für batchweises Serving gebaut sind. Dahinter steht kein CPU-Kernel, denn vLLM ist eine Serving-Engine, kein Laptop-Spielzeug. Ohne GPU hilft dir kein Flag — nimm llama.cpp.
Was bricht: die ehrliche Liste der Grenzen
Dieselbe Doku-Seite trägt eine Warnung, die es wörtlich wert ist: „GGUF-Support in vLLM ist hochexperimentell und unoptimiert.” Konkret:
- Die Quantisierungsabdeckung ist schmaler als bei llama.cpp. Die K-Quants, die alle laden (Q4_K_M und Freunde), funktionieren; exotische Schemata nicht immer. llama.cpp bleibt die Referenzimplementierung des Formats.
- Der Architektursupport hinkt hinterher. Neue Modellfamilien landen zuerst in llama.cpp; das Plugin folgt später.
- Kein Lazy-Loading per mmap. llama.cpp mappt die Datei in den Speicher; vLLM lädt sie wie jeden anderen Checkpoint.
- Zuerst eine Speicherplatz-Funktion. Die Doku rahmt GGUF als Weg, den VRAM-Verbrauch zu drücken, nicht als Durchsatz-Play.
Nichts davon ist versteckt. Alles steht im ersten Absatz der offiziellen GGUF-Seite — das bekommen die meisten experimentellen Features nicht.
vLLM oder llama.cpp für GGUF: wer gewinnt?
Verschiedene Werkzeuge, dieselbe Datei:
| vLLM + GGUF | llama.cpp | |
|---|---|---|
| CPU-Inferenz | nein | ja, erste Klasse |
| Gleichzeitige Nutzer | Continuous Batching, dafür gebaut | begrenzt |
| Quant-Abdeckung | Teilmenge, experimentell | die Referenz |
| Setup | vLLM + Plugin | eine Binary |
| Ideal für | eine GPU, viele Nutzer | ein Nutzer, jede Hardware |
Wenn du ein Modell für ein Team von einer einzigen GPU servierst, lässt dich vLLM + GGUF dieselben Q4_K_M-Dateien wiederverwenden, die der Rest der Local-LLM-Welt teilt — mit mehr Auswahl in unserem GGUF-Quantisierungsleitfaden. Für den vollen Engine-Vergleich siehe llama.cpp vs. Ollama und GGUF-Modelle lokal ausführen.
Die Einzeiler-Regel: dieselbe Datei, entgegengesetzte Instinkte — llama.cpp behandelt GGUF als das Format, vLLM als eine Option.
FAQ
Kann vLLM GGUF-Modelle ausführen?
Ja. Installiere das vllm-gguf-plugin und serve mit der repo:quant_type-Syntax — aber nur auf GPU. vLLMs CPU-Pfad deckt GGUF nicht ab.
Führt vLLM GGUF auf der CPU aus?
Nein. Die offizielle Hardware-Kompatibilitätstabelle markiert GGUF als nicht unterstützt auf x86- und Arm-CPUs — llama.cpp oder Ollama bleiben der CPU-Weg.
GGUF mit vLLM oder llama.cpp serven?
vLLM, wenn eine GPU viele gleichzeitige Nutzer bedienen muss; llama.cpp, wenn die Kiste keine GPU hat oder du die breiteste Quantisierungsabdeckung willst.
— mrsaynothing
— mrsaynothing
Feldnotizen zu KI, Linux und Self-Hosting.
Den nächsten How-to-Guide per E-Mail
Eine E-Mail pro Beitrag. Fixen und weiter.
was ist das?128k Kontext auf dem Desktop ist gelogen. Der KV-Cache frisst ihn.
Sie mögen die Artikel? Genau so baue ich beruflich. anheuern