llama.cpp & GGUF: LLMs lokal, effizient, ohne Cluster
Nicht jeder Inferenz-Job braucht Hochdurchsatz. Manchmal reicht ein einzelner Request, lokal, ohne API, auf der Workstation. Genau dort spielt llama.cpp seine Stärken aus.
GGUF: Quantisierung, die funktioniert
GGUF ist das Dateiformat, das llama.cpp nutzt — und das Quantisierungsverfahren, das die Szene dominiert. Aus einem 70B-Modell mit 140 GB FP16 wird mit Q4_K_M ein 40-GB-Modell, das auf eine RTX 5090 (32 GB) mit teilweisem CPU-Offload passt.
Die Quantisierung ist nicht magisch, aber sie ist viel besser, als die Zahlen vermuten lassen. Q4 verliert kaum Erkennungsqualität, Q2 merkt man. Wir setzen standardmässig Q5_K_M für ernsthafte Arbeit und Q4_K_M, wenn VRAM knapp ist.
CPU/GPU-Offload
llama.cpp kann einzelne Layer auf die GPU auslagern und den Rest auf der CPU rechnen. Das ist kein High-Performance-Setup, aber es funktioniert — und es bedeutet: Sie können grosse Modelle testen, bevor Sie Hardware kaufen.
./llama-cli -m model-q4_k_m.gguf -ngl 40 -c 8192
-ngl 40 heisst: 40 Layer auf GPU, Rest CPU. Das ist die Brücke zwischen „passt nicht" und „passt, wenn ich will".
Der Gegenpol zu vLLM
vLLM (siehe vorheriger Artikel) optimiert auf Durchsatz — viele parallele Requests, Serverbetrieb. llama.cpp optimiert auf Flexibilität: einzelne Requests, verschiedene Quantisierungen, Notbetrieb auf CPU. Beide haben denselben Output: ein LLM antwortet. Der Einsatz entscheidet.
Faustregel: vLLM als Inferenz-Server für Tools und Teams. llama.cpp für Entwicklung, lokales Testen und den einen Spezialfall, der nicht in die Server-Architektur passt.
Fazit
llama.cpp ist das Schweizer Taschenmesser der lokalen LLM-Inferenz. Es macht keinen Server, aber es macht alles möglich — und es hat den Charme, dass es auf einer Workstation läuft, die längst unterm Schreibtisch steht.
Wie stark verringert GGUF-Quantisierung die Modellqualität?+
Die Quantisierung ist viel besser, als die Zahlen vermuten lassen. Q4 verliert kaum Erkennungsqualität, Q2 merkt man. Aus einem 70B-Modell mit 140 GB FP16 wird mit Q4_K_M ein 40-GB-Modell, das auf eine RTX 5090 mit teilweisem CPU-Offload passt. Für ernsthafte Arbeit setzen wir standardmäßig Q5_K_M ein und Q4_K_M, wenn VRAM knapp ist.
Kann ich große Modelle testen, bevor ich entsprechende Hardware kaufe?+
Ja. llama.cpp kann einzelne Layer auf die GPU auslagern und den Rest auf der CPU rechnen. Das ist kein High-Performance-Setup, aber es funktioniert und ist die Brücke zwischen „passt nicht“ und „passt, wenn ich will“. So testen Sie große Modelle auf der Workstation, die bereits unterm Schreibtisch steht, ohne vorher teure Hardware beschaffen zu müssen.
Wann nehme ich llama.cpp und wann vLLM?+
vLLM optimiert auf Durchsatz – viele parallele Requests, Serverbetrieb für Tools und Teams. llama.cpp optimiert auf Flexibilität: einzelne Requests, verschiedene Quantisierungen und CPU-Offload als Notbetrieb. Beide liefern denselben Output. Faustregel: vLLM als Inferenz-Server, llama.cpp für Entwicklung, lokales Testen und den Spezialfall, der nicht in die Server-Architektur passt.