Eine Gewichtsdatei enthält Milliarden Zahlen und ein paar Angaben zu ihrem Aufbau. Was genau darin steht, zeigt Kapitel 01. Damit daraus eine Antwort wird, braucht es ein Programm. Es lädt die Datei, rechnet die Eingabe durch die Schichten, wählt das nächste Token und liefert das Ergebnis aus. Dieses Programm heißt hier Inferenz-Engine, kurz Engine.
Die Hersteller sagen dafür auch Laufzeit, auf Englisch runtime. Ollama nennt MLX in seinen Release Notes (externe Seite, github.com) eine solche Laufzeit, LM Studio spricht in seiner Doku (externe Seite, lmstudio.ai) von seiner llama.cpp-Engine. Gemeint ist jedes Mal dasselbe. In Kapitel 04 heißt es Laufzeit, in Grundkurs, Kapitel 01 Laufzeitumgebung.
Was zum Modell gehört und was zum Programm davor, trennt Grundkurs, Kapitel 01. An den Reglern für den Zufall zeigt Grundkurs, Kapitel 12, dass sie Einstellungen des Programms sind. Dieses Kapitel zeigt dieselbe Grenze an Speicher, Tempo und Betrieb. Das Beispiel ist gpt-oss von OpenAI in zwei Größen: gpt-oss-20b für den eigenen Rechner und gpt-oss-120b für den Server.
Das Programm entscheidet über die Zahl der Grafikkarten
OpenAI hat beide Modelle im August 2025 mit offenen Gewichten unter Apache 2.0 und einer eigenen Nutzungsrichtlinie veröffentlicht (Modellkarte (externe Seite, openai.com)). Die Gewichte der Experten liegen im Format MXFP4, mit 4,25 Bit je Parameter (Bericht (externe Seite, arxiv.org)). Laut README (externe Seite, github.com) des Herstellers läuft gpt-oss-120b damit auf einer einzigen Grafikkarte mit 80 GB, etwa einer H100. gpt-oss-20b kommt mit 16 GB Speicher aus.
Dieselbe README führt eine Referenzfassung in PyTorch. Sie ist ausdrücklich zum Lernen gedacht und nach eigener Angabe nicht optimiert. Diese Fassung wandelt alle Gewichte in BF16 um, ein Format mit 16 Bit, und rechnet darin. Für gpt-oss-120b braucht sie mindestens vier H100, alternativ zwei H200.
Die eigene Rechnung zeigt den Grund. Tabelle 1 des Berichts (externe Seite, arxiv.org) nennt für gpt-oss-120b 116,83 Milliarden Parameter. In BF16 belegt jeder 2 Byte, zusammen 233,7 Gigabyte. Das ist fast das Dreifache einer Karte mit 80 GB.
Im veröffentlichten Format wiegt dasselbe Modell laut derselben Tabelle 60,8 GiB, also 65,3 Gigabyte, gerechnet mit 1 GiB = 1,0737 GB. Das passt auf eine Karte.
Eine zweite Referenz in Triton aus derselben README läuft auf einer Karte mit 80 GB, weil sie die Experten mit einem eigenen Kernel für MXFP4 rechnet. Beide Referenzen sind laut README zum Lernen gedacht. Für den Betrieb nennt die Anleitung von vLLM für gpt-oss (externe Seite, github.com) eine A100 mit 80 GB. Auf einer H100 mit einer einzigen Karte verlangt sie eine angepasste Speichereinstellung, sonst reicht der Speicher nicht.
Dieselben Gewichte von gpt-oss-120b brauchen also je nach Programm das 3,6-Fache an Speicher. Es kommt darauf an, ob ein Programm das gespeicherte Format direkt rechnet oder es vorher in 16 Bit umwandelt. Die Lehrfassung in PyTorch nimmt den Speicher in Kauf. Wer ein Programm für den Betrieb wählt, prüft deshalb, ob es das Format des Modells direkt rechnet. Die zweite Ebene zeigt das an gpt-oss-20b.
Der Hersteller trennt Einzelplatz und Server
Die README von gpt-oss nennt fünf Wege, das Modell auszuführen: die Bibliothek Transformers, vLLM, die eigene Referenz, Ollama und LM Studio. Für einige davon hat OpenAI eigene Anleitungen geschrieben. Die Anleitung zu Ollama (externe Seite, developers.openai.com) beginnt mit einer Zuordnung. Sie gilt für Geräte wie einen PC oder einen Mac. Für Server mit eigenen Grafikkarten wie der H100 verweist sie auf die Anleitung zu vLLM.
Damit sind die beiden Fälle dieses Kapitels benannt. Am Einzelplatz arbeitet eine Person mit einem Modell. Die Engine soll mit wenig Einrichtung auf dem vorhandenen Gerät laufen. Am Server teilen sich viele gleichzeitige Anfragen dieselbe Hardware. Dort soll die Engine in derselben Zeit möglichst viele davon bedienen. Wie sie das schafft, erklärt die dritte Ebene.
Fünf verbreitete Programme
Fünf Programme stehen in diesem Kapitel im Vordergrund. Drei davon nennt die README von gpt-oss. llama.cpp und MLX sind die Engines, auf denen Ollama und LM Studio aufbauen. Ollama und LM Studio sind Programme mit Engines darunter, die zweite Ebene zeigt das genauer. Die fünf unterscheiden sich darin, wofür sie gebaut sind, worauf sie rechnen und unter welcher Lizenz sie stehen.
llama.cpp erschien am 10.03.2023. Das Ziel war damals, ein Modell in 4 Bit auf einem MacBook laufen zu lassen (erste README (externe Seite, github.com)). Heute nennt die README (externe Seite, github.com) als Ziel, mit wenig Aufwand auf vielen Arten von Hardware zu rechnen, lokal und in der Cloud. Das Programm ist in C und C++ geschrieben und steht unter MIT.
Ollama startete am 08.07.2023 als frühe Vorschau (erste Fassung (externe Seite, github.com)). Es lädt ein Modell mit einem Befehl und steht unter MIT (externe Seite, github.com). Für die Modelle stützte es sich anfangs auf llama.cpp. Im Mai 2025 kündigte es eine eigene Engine an, zunächst für Modelle, die auch Bilder verarbeiten (Ankündigung (externe Seite, ollama.com)).
LM Studio ist eine App mit eigenem Fenster für Mac, Windows und Linux, dazu gibt es eine Fassung ohne Oberfläche für Server. Sie rechnet über llama.cpp, auf Macs mit Apple-Chip wahlweise über MLX (Doku (externe Seite, lmstudio.ai)). Die App steht unter eigenen Bedingungen (externe Seite, lmstudio.ai) des Herstellers. Seit dem 08.07.2025 ist sie auch für die Arbeit kostenlos (Ankündigung (externe Seite, lmstudio.ai)).
MLX ist Apples Framework für maschinelles Lernen auf den eigenen Chips (MLX (externe Seite, github.com)). Darauf baut das Paket mlx-lm (externe Seite, github.com), das mit Sprachmodellen Text erzeugt und sie nachtrainiert. Lizenz MIT.
vLLM entstand im Sky Computing Lab der UC Berkeley und wird heute von einer großen Gemeinschaft gepflegt. Es ist für den Betrieb mit vielen Anfragen gebaut (README (externe Seite, github.com)). Die erste Ankündigung (externe Seite, vllm.ai) erschien am 20.06.2023. Lizenz Apache 2.0.
Für Server gibt es weitere. SGLang (externe Seite, github.com) ist für Agenten und Betrieb in großem Maßstab ausgelegt. Dahinter steht die gemeinnützige Organisation LMSYS. TensorRT-LLM (externe Seite, github.com) ist NVIDIAs Bibliothek für die eigenen Grafikkarten. Text Generation Inference, kurz TGI, von Hugging Face steht laut README (externe Seite, github.com) seit dem 11.12.2025 im Wartungsmodus. Der Hinweis dort empfiehlt als Nachfolger vLLM und SGLang, für den eigenen Rechner llama.cpp und MLX.
Ein Wechsel beginnt bei der Adresse
Alle fünf bringen einen Server mit, der die Form der Schnittstelle von OpenAI spricht. Wie genau, ist verschieden.
Die README von llama.cpp (externe Seite, github.com) nennt ihren Server kompatibel. Ollama unterstützt laut Doku (externe Seite, docs.ollama.com) eine Teilmenge. LM Studio stellt Endpunkte nach dem Vorbild von OpenAI bereit (Doku (externe Seite, lmstudio.ai)). Der Server von mlx-lm soll der Schnittstelle ähneln (Beschreibung (externe Seite, github.com)). vLLM, der Server von llama.cpp und Ollama sprechen zusätzlich die Nachrichten-Schnittstelle von Anthropic (README von vLLM (externe Seite, github.com), Doku des Servers von llama.cpp (externe Seite, github.com)). Für Ollama steht das in Grundkurs, Kapitel 11.
Laufen mehrere davon auf einem Rechner, unterscheiden sie sich am Port. Ollama hört auf 11434, so steht es in der README von gpt-oss (externe Seite, github.com). LM Studio benutzt in den Beispielen seiner Doku (externe Seite, lmstudio.ai) den Port 1234. vLLM nimmt laut Anleitung (externe Seite, github.com) voreingestellt 8000. Der Server von llama.cpp ist laut seiner Doku (externe Seite, github.com) auf 9931 voreingestellt, der von mlx-lm startet im Beispiel seiner Beschreibung (externe Seite, github.com) auf 8080.
Eine Anwendung, die für eine dieser Adressen geschrieben ist, erreicht die anderen meist mit einer geänderten Zeile. Was dabei fehlen kann, beschreibt Grundkurs, Kapitel 11 am Wort Teilmenge.
Herstellerdoku von OpenAI, llama.cpp, Ollama, LM Studio, mlx-lm und vLLM, abgerufen am 19. und 20.10.2026
| Programm | gebaut für | rechnet auf | Schnittstelle in der Form von OpenAI | Port laut Doku | Lizenz |
|---|---|---|---|---|---|
| llama.cpp | lokal und in der Cloud | vielen Arten von Hardware, darunter Apple-Chips und NVIDIA | kompatibel, dazu die von Anthropic | 9931, voreingestellt | MIT |
| Ollama | den eigenen Rechner, laut Anleitung von OpenAI | eigene Engine auf GGML und llama.cpp, auf dem Mac auch MLX | Teilmenge, dazu die von Anthropic | 11434 | MIT |
| LM Studio | Mac, Windows und Linux, mit eigenem Fenster | llama.cpp, auf dem Mac auch MLX | nach dem Vorbild | 1234, in den Beispielen | eigene Bedingungen |
| mlx-lm | Apple-Chips | MLX | ähnlich | 8080, im Beispiel | MIT |
| vLLM | Server mit vielen Anfragen | Grafikkarten von NVIDIA und AMD, laut Anleitung für gpt-oss | kompatibel, dazu die von Anthropic | 8000, voreingestellt | Apache 2.0 |
Vier Fragen entscheiden die Wahl
- Wie viele Anfragen kommen gleichzeitig? Eine Person am eigenen Gerät braucht ein Programm für den Einzelplatz. Viele Nutzer an einem Server brauchen eines, das ihre Anfragen stapelt. Woran man das an den Voreinstellungen erkennt, zeigt die zweite Ebene.
- Welche Hardware steht bereit? MLX ist für Apple-Chips gebaut, TensorRT-LLM für Grafikkarten von NVIDIA. llama.cpp rechnet auf beiden und auf vielen weiteren.
- Unter welcher Lizenz steht das Programm? Das Modell hat eine Lizenz, das Programm eine eigene. LM Studio erlaubt den Einsatz für private und interne geschäftliche Zwecke. Die Software als Dienst für andere anzubieten, schließen seine Bedingungen (externe Seite, lmstudio.ai) aus. llama.cpp und Ollama stehen unter MIT, vLLM unter Apache 2.0.
- Wird es noch gepflegt? TGI zeigt, dass auch ein verbreiteter Server in den Wartungsmodus gehen kann. Dort kommen laut README (externe Seite, github.com) nur noch kleine Fehlerbehebungen und Pflegearbeiten hinzu.
Jedes Programm hat dabei einen eigenen Vorzug. LM Studio vereint zwei Engines in einer Oberfläche. Ollama holt ein Modell mit einem Befehl. Der Server vLLM bedient viele Anfragen zugleich, und llama.cpp läuft auf vielen Arten von Hardware. Über MLX rechnet ein Modell auf dem Mac im gemeinsamen Speicher von Prozessor und Grafikeinheit, nach einer eigenen Messung bitgenau wiederholbar.
Die Modellkarte nennt den Speicher, den die Gewichte brauchen. Zu Programm, Lizenz des Programms und Pflege sagt sie nichts. Wo ein Modell überhaupt betrieben werden soll, entscheidet Beurteilen und Einordnen, Kapitel 01.
Der Überblick hat die fünf verbreiteten Engines vorgestellt. Diese Ebene geht die Schritte durch, die eine Engine zwischen Datei und Antwort ausführt. Danach geht es um die Dateien, in denen ein Modell vorliegt, und um die Frage, welche Engine welches Format liest. Am Ende stehen Voreinstellungen und Lizenzen. Das Beispiel ist gpt-oss-20b.
Fünf Schritte zwischen Datei und Antwort
Laden. Die Engine liest die Gewichte aus einer Datei und legt sie in den Speicher, auf dem sie rechnet. Welche Formate sie dabei versteht, ist von Programm zu Programm verschieden, wie ein Abschnitt weiter unten zeigt.
Vorlage. Vor dem Rechnen setzt die Engine das Gespräch in einen einzigen Text mit Sonderzeichen für Rollen und Grenzen. gpt-oss ist mit dem Format harmony trainiert. Laut README (externe Seite, github.com) soll es nur damit benutzt werden, sonst arbeite es nicht richtig. Die Vorlage liegt meist den Modelldateien bei, und die Engine wendet sie an. Der Server von llama.cpp nimmt voreingestellt die Vorlage aus der Datei und lässt sich eine eigene geben (Doku (externe Seite, github.com)). Ollama bringt für gpt-oss laut der Anleitung von OpenAI (externe Seite, developers.openai.com) eine eigene mit, die harmony nachbildet. Mit einer falschen Vorlage arbeitet auch ein richtiges Modell schlecht.
Rechnen. Die Engine schickt die Zahlen durch die Schichten. Dafür braucht sie Rechenroutinen für die jeweilige Hardware, sogenannte Kernels. llama.cpp bringt eigene für Grafikkarten von NVIDIA mit und rechnet auf Apple-Chips über Metal (README (externe Seite, github.com)). Wie viel Speicher und Bandbreite dabei gebraucht werden, rechnet Kapitel 04 vor.
Ziehen. Aus den Wahrscheinlichkeiten für das nächste Token wählt die Engine eines aus. Die Regler dafür sind Einstellungen des Programms. Sie stehen in Grundkurs, Kapitel 12.
Ausliefern. Die Engine gibt das Ergebnis über ihre Schnittstelle zurück, bei allen fünf in der Form von OpenAI. Hier entscheidet sich auch, was mit einem Toolaufruf geschieht.
Wer einen Toolaufruf ausführt, ist eine Einstellung
Will ein Modell ein Werkzeug benutzen, schreibt es einen Aufruf in fester Form. Der Server vLLM erkennt ihn in der Ausgabe und gibt ihn als Daten an den Aufrufer zurück. Ausführen muss ihn laut Doku (externe Seite, docs.vllm.ai) die Anwendung, die vLLM gefragt hat.
Bei einem Anbieter gibt es einen zweiten Weg. Anthropic unterscheidet in seiner Doku (externe Seite, platform.claude.com) Aufrufe, die die eigene Anwendung ausführt, von solchen, die Anthropic selbst ausführt. Beide Wege erklärt Grundkurs, Kapitel 09.
Auch eine Engine kann diese Rolle übernehmen, wenn man sie lässt. Der Server von llama.cpp bringt eingebaute Werkzeuge mit, darunter Lesen und Schreiben von Dateien und Befehle in der Shell. Sie sind als experimentell gekennzeichnet und voreingestellt aus. Die Doku (externe Seite, github.com) warnt davor, sie in einer Umgebung einzuschalten, der man nicht vertraut.
Dasselbe gilt für vLLM mit gpt-oss. Mit einem Schalter für einen Werkzeugserver führt vLLM über seine Responses-Schnittstelle selbst Werkzeuge aus, etwa Browser, Python und MCP. Für den Betrieb kann es dabei laut seiner Anleitung für gpt-oss (externe Seite, github.com) als MCP-Client mehrerer Dienste auftreten.
Voreingestellt gilt also für vLLM wie für llama.cpp: Die Engine liefert den Aufruf als Daten, und die Anwendung führt ihn aus. Das Programm, das Werkzeuge ausführt, die Schleife dreht und Grenzen setzt, heißt Harness. Es ist Thema von Agenten und Harness, Kapitel 01.
Ein Modell liegt in mehreren Dateien vor
Von gpt-oss-20b liegen bei Hugging Face mehrere Fassungen derselben Gewichte, alle unter Apache 2.0 und ohne Zugangsschranke. Gezählt wurden die Dateien am 20.10.2026 über die Schnittstelle des Portals (Zählung (externe Seite, huggingface.co)). Ein Gigabyte sind hier eine Milliarde Byte.
| Ablage | Format | gedacht für | Größe |
|---|---|---|---|
openai/gpt-oss-20b | safetensors, Experten in MXFP4 | Transformers, vLLM | 13,8 GB |
ggml-org/gpt-oss-20b-GGUF | GGUF, Experten in MXFP4 | llama.cpp | 12,1 GB |
| dieselbe Ablage | GGUF, ein Entwurfsmodell für EAGLE-3 in BF16 und in Q8_0 | Speculative Decoding | 1,7 und 0,9 GB |
mlx-community/gpt-oss-20b-MXFP4-Q8 | MLX, Experten in MXFP4, übrige Gewichte in 8 Bit | MLX auf dem Mac | 12,1 GB |
lmstudio-community/gpt-oss-20b-MLX-8bit | MLX, alle Gewichte in 8 Bit | MLX auf dem Mac | 22,2 GB |
Ollama führt gpt-oss-20b in seiner Bibliothek (externe Seite, ollama.com) mit 14 GB, als eigene Fassung für das eigene Programm.
Drei Formate stehen in der Tabelle. Eine GGUF-Datei enthält neben den Gewichten einen Kopf mit Angaben zum Modell. safetensors-Dateien liegen in einem Ordner neben einer Konfigurationsdatei, so wie der Hersteller sie veröffentlicht. Auch ein MLX-Ordner besteht aus safetensors-Dateien, deren Gewichte so abgelegt sind, wie MLX sie rechnet.
Die Fassung mit 8 Bit wiegt 22,2 Gigabyte, gut 60 Prozent mehr als die des Herstellers. Laut ihrer Konfiguration liegen dort alle Gewichte in 8 Bit, auch die Experten. OpenAI hat die Experten in MXFP4 nachtrainiert und nur so veröffentlicht. Die Umwandlung in 8 Bit macht die Datei größer. Mehr, als im Original steckt, kann sie den Experten nicht hinzufügen.
Die GGUF-Ablage liefert außerdem ein Entwurfsmodell für EAGLE-3 mit, ein Verfahren des Speculative Decoding, in zwei Genauigkeiten. Für ein Verfahren der Engine liegt dort also ein zweites, eigens trainiertes Modell bei. Die dritte Ebene ordnet das Verfahren ein. Wer eine solche Datei gebaut hat und was bei der Umwandlung verloren gehen kann, steht in Kapitel 02.
Welche Engine welches Format liest
GGUF ist das Format von llama.cpp. Die Spezifikation (externe Seite, github.com) beschreibt es als Format für Programme, die auf der Bibliothek GGML aufbauen. Entwickelt werden Modelle meist in PyTorch und für GGML in GGUF umgewandelt.
LM Studio rechnet GGUF über llama.cpp (Doku (externe Seite, lmstudio.ai)). Auf dem Mac kommen MLX-Ordner hinzu, über eine eigene MLX-Engine (externe Seite, github.com), die auf mlx-lm aufbaut. Sie liegt der App für den Mac seit Version 0.3.4 bei.
Ollama übernimmt eigene Dateien über ein Modelfile und den Befehl
ollama create. Die Importanleitung (externe Seite, docs.ollama.com) nennt zwei
Wege: einen Ordner mit safetensors und eine GGUF-Datei. Eine GGUF-Datei
quantisiert Ollama dabei nicht neu.
vLLM liest Modelle im Aufbau von Hugging Face (README (externe Seite, github.com)). GGUF gilt dort als sehr experimentell, noch nicht optimiert und womöglich unverträglich mit anderen Funktionen, so steht es in der Doku (externe Seite, docs.vllm.ai) zu Fassung 0.32.0. Das Paket mlx-lm lädt Modelle direkt vom Hugging Face Hub und kann sie umwandeln und quantisieren (README (externe Seite, github.com)).
Doku von llama.cpp, Ollama, LM Studio, mlx-lm und vLLM, GGUF-Spezifikation, abgerufen am 19. und 20.10.2026
| Format | llama.cpp | Ollama | LM Studio | mlx-lm | vLLM |
|---|---|---|---|---|---|
| GGUF | ja | ja, über den Import | ja, über llama.cpp | keine Angabe | experimentell |
| safetensors | nach Umwandlung in GGUF | über den Import | keine Angabe | ja | ja |
| MLX-Ordner | keine Angabe | Laufzeit MLX auf dem Mac, Dateiweg offen | ja, auf dem Mac | ja | keine Angabe |
„Keine Angabe“ heißt: Die Doku des Programms nennt das Format nicht. Ob es trotzdem geht, ist damit offen. Für Ollama auf dem Mac sagen die Release Notes zu Version 0.40.0, dass unterstützte Bauformen über MLX laufen. Welche Dateien Ollama dafür lädt, sagen sie nicht.
Für GGUF stimmt also, was Beurteilen und Einordnen, Kapitel 01 über Ollama und LM Studio sagt: Beide führen dieselben Dateien aus. Darüber hinaus liest LM Studio auf dem Mac MLX-Ordner, und Ollama übernimmt safetensors über den Import.
Ob ein Format direkt läuft, entscheidet über den Speicher
Die Experten von gpt-oss liegen in MXFP4: zwei Werte je Byte und ein gemeinsamer Skalierungsfaktor je 32 Werte. Wie das in der Datei aussieht und wie man die Parameter darin richtig zählt, zeigt Kapitel 01. Hier zählt eine Frage. Rechnet die Engine dieses Format direkt, oder wandelt sie es vor dem Rechnen in 16 Bit um?
Ollama rechnet MXFP4 laut seiner Bibliothek (externe Seite, ollama.com) direkt, ohne weitere Quantisierung oder Umwandlung. Dafür hat es eigene Kernels für seine neue Engine geschrieben. OpenAI schreibt in der README (externe Seite, github.com), die Modelle seien von Haus aus quantisiert veröffentlicht.
Eigene Rechnung, Parameter aus Tabelle 1 des Berichts (externe Seite, arxiv.org), 2 Byte je Parameter in BF16, 1 GiB = 1,0737 GB:
| gpt-oss-20b | gpt-oss-120b | |
|---|---|---|
| Parameter | 20,91 Mrd. | 116,83 Mrd. |
| davon in den Experten | 19,12 Mrd. | 114,71 Mrd. |
| in BF16 umgewandelt | 41,8 GB | 233,7 GB |
| gespeichert laut Bericht | 12,8 GiB = 13,7 GB | 60,8 GiB = 65,3 GB |
| Verhältnis | 3,0 | 3,6 |
Die gespeicherte Größe lässt sich nachrechnen. Beim kleinen Modell ergeben 19,12 Milliarden Parameter zu 4,25 Bit 10,2 Gigabyte. Für die übrigen 1,80 Milliarden in Aufmerksamkeit, Ein- und Ausgang sei BF16 angenommen, also 3,6 Gigabyte. Zusammen sind das 13,76 Gigabyte, also 12,8 GiB wie im Bericht. Weil beim kleinen Modell ein größerer Teil außerhalb der Experten liegt, spart es weniger: Faktor 3,0 statt 3,6. Ollama nennt 14 und 65 GB, passend zu den gespeicherten Größen.
Daraus folgt eine Bedingung. Auf einem Gerät mit 16 GB braucht gpt-oss-20b eine Engine, die die Gewichte etwa in der gespeicherten Größe hält. Am einfachsten gelingt das, wenn sie MXFP4 direkt rechnet. In BF16 bräuchte es 41,8 Gigabyte allein für die Gewichte. Reicht der Grafikspeicher nicht, lässt sich laut Anleitung von OpenAI (externe Seite, developers.openai.com) ein Teil auf den Prozessor auslagern, dann läuft das Modell langsamer.
Den KV-Cache dazu rechnet Kapitel 04 vor, Den KV-Cache dazu rechnet Kapitel 04 vor, die Quantisierung im Allgemeinen beschreibt Beurteilen und Einordnen, Kapitel 01.
Ein Programmname, mehrere Engines darunter
Ollama hat sich für die Unterstützung neuer Modelle lange auf llama.cpp gestützt. Am 15.05.2025 kündigte es eine eigene Engine an, zunächst für Modelle, die auch Bilder verarbeiten. Sie baut weiter auf der Rechenbibliothek GGML auf (Ankündigung (externe Seite, ollama.com)). Seit Version 0.40.0 laufen auf Apple-Chips die Bauformen, die MLX unterstützt, automatisch über MLX (Release Notes (externe Seite, github.com)).
llama.cpp bleibt dabei im Einsatz. In der Messung von Kapitel 04 meldete Ollama 0.40.6 für Qwen3-30B-A3B als Laufzeit llama.cpp. Welche Engine rechnet, hängt bei Ollama also an Version, Gerät und Bauform des Modells. LM Studio hat zwei Engines nebeneinander, llama.cpp und die MLX-Engine auf Grundlage von mlx-lm.
Ein Update kann deshalb die Engine tauschen, ohne dass sich der Name des Programms oder die Modelldatei ändern. Wie verschieden zwei Engines dasselbe Modell rechnen, misst der Bericht Elf Wege, ein lokales Modell schneller zu machen. Dasselbe Modell lief dort über MLX langsamer als über llama.cpp. Zwischen zwei Fassungen von llama.cpp verschob sich das Tempo je Bauform in verschiedene Richtungen. Wer Engines vergleicht, notiert deshalb Programm und Fassung.
Voreinstellungen zeigen, wofür ein Programm gebaut ist
Ollama bearbeitet je Modell voreingestellt eine Anfrage zur Zeit (FAQ (externe Seite, docs.ollama.com)). Mehr gleichzeitige Anfragen lassen sich einstellen, und jede vergrößert den reservierten Kontext. Was das für den Speicher heißt, rechnet Kapitel 04 vor.
LM Studio fasst gleichzeitige Anfragen zu einem Stapel zusammen, voreingestellt sind vier (Doku (externe Seite, lmstudio.ai)). Das gilt für die Engine llama.cpp, für MLX ist es angekündigt.
Der Server von llama.cpp bedient mehrere Nutzer parallel und stapelt voreingestellt (Doku (externe Seite, github.com)). Der Server von mlx-lm wird für den Produktivbetrieb nicht empfohlen, weil er nur grundlegende Sicherheitsprüfungen enthält (Beschreibung (externe Seite, github.com)).
vLLM führt das Stapeln eingehender Anfragen unter seinen Merkmalen (README (externe Seite, github.com)). Voreingestellt lässt der Server laut seiner Anleitung für gpt-oss (externe Seite, github.com) auf Karten mit viel Speicher eine große Zahl gleichzeitiger Folgen zu, etwa 1.024.
Auch llama.cpp stapelt also, sobald es als Server läuft. Wie viele Plätze der Server anlegt, wählt er voreingestellt selbst. Den Speicher für Schlüssel und Werte teilen sich dann alle Plätze in einem gemeinsamen Puffer (Doku (externe Seite, github.com)). Wie vLLM diesen Speicher in Blöcken vergibt, erklärt die dritte Ebene.
Das Programm hat eine eigene Lizenz
Das Modell gpt-oss steht unter Apache 2.0. Für das Programm, das es ausführt, gilt eine eigene Lizenz. Bei den Repositories steht sie jeweils in der Datei LICENSE beim selben Commit, die Quelle führt das in ihrer Beschreibung.
| Programm | Lizenz | Quelle |
|---|---|---|
| llama.cpp | MIT | README (externe Seite, github.com) |
| Ollama | MIT | Lizenzdatei (externe Seite, github.com) |
| LM Studio, App | eigene Bedingungen: privater und interner geschäftlicher Einsatz erlaubt, Dienst für andere ausgeschlossen, seit dem 08.07.2025 auch für die Arbeit kostenlos | Bedingungen (externe Seite, lmstudio.ai), Ankündigung (externe Seite, lmstudio.ai) |
| LM Studio, MLX-Engine | MIT | README (externe Seite, github.com) |
| mlx-lm | MIT | README (externe Seite, github.com) |
| vLLM | Apache 2.0 | README (externe Seite, github.com) |
| SGLang | Apache 2.0 | README (externe Seite, github.com) |
| TensorRT-LLM | Apache 2.0 | README (externe Seite, github.com) |
| TGI | Apache 2.0, seit dem 11.12.2025 im Wartungsmodus | README (externe Seite, github.com) |
Für Entscheider ist das die Zeile, die in der Modellkarte von gpt-oss fehlt. Apache 2.0 erlaubt, gpt-oss in einem Dienst für Kunden einzusetzen, dazu kommt die Nutzungsrichtlinie von OpenAI (Modellkarte (externe Seite, openai.com)). Mit LM Studio darunter schließen die Bedingungen der App einen solchen Dienst aus. Für den Einsatz im eigenen Haus reicht LM Studio, und kostenlos ist es dort auch.
Was die drei Programme aus der README von gpt-oss jeweils besser können, ergibt sich aus dieser Ebene. LM Studio hat zwei Engines in einer Oberfläche und liest auf dem Mac GGUF und MLX. Ollama holt fertige Fassungen mit einem Befehl und steht unter MIT. Der Server vLLM ist für viele gleichzeitige Anfragen gebaut und liest Modelle im Aufbau von Hugging Face ohne Umweg.
Die zweite Ebene hat gezeigt, dass auch Programme für den Einzelplatz Anfragen stapeln, sobald sie als Server laufen. Diese Ebene erklärt, warum sich das lohnt, woher das Verfahren kommt und wie vLLM den Speicher dafür verwaltet. Danach folgen drei bekannte Faktoren mit drei verschiedenen Vergleichsbasen, die Abwägung zwischen Durchsatz und Latenz und die Frage, wann Speculative Decoding im Server hilft.
Stapeln lohnt, weil die Gewichte einmal gelesen werden
Beim Erzeugen liest ein Modell für jedes Token seine Gewichte aus dem Speicher. Dabei wartet der Rechner mehr, als er rechnet. Die langfristige Entwicklung dahinter beschreibt Beurteilen und Einordnen, Kapitel 05, die Obergrenze für ein Gerät rechnet Kapitel 04 vor. Die Arbeit zu vLLM (externe Seite, arxiv.org) nennt den Betrieb deshalb speichergebunden: Die Rechenleistung der Grafikkarte bleibt zum Teil ungenutzt, und der Durchsatz ist begrenzt.
Der Ausweg ist der Stapel. Rechnen mehrere Anfragen im selben Durchgang, teilen sie sich dieselben Gewichte. Der Aufwand, die Gewichte zu bewegen, verteilt sich dann auf alle Anfragen im Stapel, so beschreibt es Abschnitt 2.3 der Arbeit. Das Abstract beginnt mit der Folgerung: Wer viel Durchsatz will, muss genügend Anfragen auf einmal stapeln.
Am Einzelplatz läuft meist eine Anfrage. Ein Server mit vielen Nutzern hat viele zugleich, und für diesen Fall sind vLLM und die anderen Server gebaut.
Der Stapel ändert sich nach jedem Schritt
Ein einfacher Stapel läuft, bis seine längste Antwort fertig ist. Kurze Antworten warten so lange im Stapel, neue Anfragen warten auf den nächsten. Für Transformer-Modelle hat das die Arbeit zu Orca (externe Seite, usenix.org) von Yu und anderen geändert, vorgestellt auf der OSDI im Juli 2022. Ihr Planer lässt das Modell jeweils einen einzigen Schritt über den Stapel rechnen. Danach wird der Stapel neu zusammengestellt. Orca nennt das iteration-level scheduling.
An GPT-3 mit 175 Milliarden Parametern meldet die Arbeit gegenüber FasterTransformer von NVIDIA den 36,9-fachen Durchsatz, an einem Messpunkt mit gleicher Latenz. Die Arbeit zu vLLM fasst das Verfahren in einem Satz zusammen: Nach jedem Schritt verlassen fertige Anfragen den Stapel, und neue kommen hinzu. Sie nennt neben Orca einen Vorläufer für rekurrente Netze, das Cellular Batching von 2018.
Heute heißt das Verfahren Continuous Batching. Der Server vLLM nennt es unter seinen Merkmalen (README (externe Seite, github.com)), beim Server von llama.cpp ist es voreingestellt an und heißt dort auch dynamic batching (Doku (externe Seite, github.com)). LM Studio nutzt es für gleichzeitige Anfragen an seine Engine llama.cpp, ab deren Laufzeit v2.0.0 (Doku (externe Seite, lmstudio.ai)).
Orca, OSDI 2022 (orca-2022); vLLM-Arbeit, Abschnitt 2.3, 12.09.2023 (vllm-pagedattention-2023)
| fester Stapel | Stapel je Schritt (Continuous Batching) | |
|---|---|---|
| zusammengestellt | einmal für den ganzen Lauf | nach jedem Schritt neu |
| fertige Anfrage | wartet, bis die längste fertig ist | verlässt den Stapel sofort |
| neue Anfrage | wartet auf den nächsten Stapel | rückt an eine frei gewordene Stelle |
| beschrieben in | Orca, als Ausgangslage | Orca 2022, heute in vLLM, llama.cpp und LM Studio |
Der KV-Cache begrenzt den Stapel
Jede Anfrage im Stapel braucht ihren eigenen KV-Cache. Wie viel Platz er je Token belegt, rechnet Kapitel 04 vor. Wie viele Anfragen gleichzeitig in den Speicher passen, hängt deshalb daran, wie die Engine diesen Platz vergibt.
Die älteren Systeme legten den Cache einer Anfrage in einen zusammenhängenden Block, reserviert für die größtmögliche Länge, im Beispiel der Arbeit 2.048 Token. Nach der Messung der Arbeit zu vLLM (externe Seite, arxiv.org) hielten dort nur 20,4 bis 38,2 Prozent des Cache-Speichers tatsächlich Werte von Token. Der Rest, 61,8 bis 79,6 Prozent, war reserviert oder zerstückelt. Die Ankündigung (externe Seite, vllm.ai) vom Juni 2023 nennt 60 bis 80 Prozent Verschwendung, beide Angaben passen zueinander.
PagedAttention legt den Cache in kleine Blöcke fester Größe, die nach Bedarf vergeben werden und an beliebiger Stelle im Speicher liegen dürfen. Die Arbeit vergleicht das mit der Speicherverwaltung eines Betriebssystems: Blöcke entsprechen Seiten, Token entsprechen Bytes, Anfragen entsprechen Prozessen. vLLM kommt damit nach eigener Angabe fast ohne Verschwendung im Cache aus. Anfragen mit gleichem Anfang können sich Einträge teilen.
Ollama 0.40.6 reservierte den Cache mit der Laufzeit llama.cpp beim Laden für die volle Länge, so hat es Kapitel 04 gemessen. Laut FAQ (externe Seite, docs.ollama.com) wächst der Kontext mit jeder gleichzeitigen Anfrage. Für einen Nutzer kostet die Reservierung wenig. Bei vielen gleichzeitigen Nutzern entscheidet die Vergabe, wie viele in den Speicher passen.
Drei Faktoren messen gegen drei Basen
Für das Stapeln kursieren drei Faktoren. Jeder stimmt, und jeder vergleicht mit etwas anderem.
- 36,9-fach: Orca gegen FasterTransformer, an GPT-3 mit 175 Milliarden Parametern, bei gleicher Latenz (Orca (externe Seite, usenix.org), Juli 2022).
- 14- bis 24-fach: vLLM gegen die Bibliothek Transformers von Hugging Face, gegen den Server TGI 2,2- bis 2,5-fach, mit einer Antwort je Anfrage. Bei drei Antworten je Anfrage sind es 8,5 bis 15 und 3,3 bis 3,5. Gemessen an LLaMA-7B auf einer A10G und an LLaMA-13B auf einer A100 mit 40 GB (Ankündigung (externe Seite, vllm.ai), Juni 2023).
- 2- bis 4-fach: vLLM gegen FasterTransformer und Orca, bei gleicher Latenz (Arbeit zu vLLM (externe Seite, arxiv.org), September 2023).
Wer die 36,9 neben die 2 bis 4 legt, könnte vLLM für langsamer halten als Orca. Die Arbeit zu vLLM misst gegen einen eigenen Nachbau von Orca, denn Orca war nicht öffentlich verfügbar. Den Nachbau gibt es in drei Fassungen mit verschieden großer Reserve. Gegen FasterTransformer hält vLLM in derselben Arbeit eine bis zu 22-fach höhere Anfragerate bei ähnlicher Latenz.
Die größte Zahl der drei misst also ein neues Verfahren gegen ein älteres System ohne Stapel je Schritt. Die mittlere misst gegen eine Bibliothek und einen Server von Hugging Face, an zwei Modellen. Die kleinste misst gegen einen Nachbau von Orca, der den Stapel je Schritt schon beherrscht.
Durchsatz und Latenz ziehen in zwei Richtungen
Der Stapel hebt den Durchsatz, und der einzelne Nutzer wartet dafür länger. Die Anleitung von vLLM für gpt-oss (externe Seite, github.com) sagt das ausdrücklich: Für mehr Durchsatz müssen Token mehrerer Anfragen zusammen verarbeitet werden, und das erhöht die Latenz.
Dieselbe Anleitung übersetzt das in die Zahl der Grafikkarten je Instanz. Eine Karte bringt den besten Durchsatz je Karte. Zwei, vier oder acht bringen eine bessere Latenz je Nutzer. Gemeint ist die Zahl der Karten, auf die Tensor Parallelism das Modell verteilt. gpt-oss-120b passt auf eine A100 mit 80 GB, und mehr Karten können dem Durchsatz helfen. Wie ein Modell sich auf mehrere Karten verteilt, steht in Kapitel 04.
Weitere Karten dienen im Server also dem Tempo, sobald das Modell auf eine passt. Welches Ziel gilt, hängt am Einsatz. Ein Dienst mit vielen Nutzern zählt Token je Karte. Ein Assistent für wenige zählt die Wartezeit des Einzelnen.
Speculative Decoding hilft am meisten bei geringer Last
Das Verfahren erklärt Grundkurs, Kapitel 12: Ein kleiner Entwurf schlägt Token vor, und das große Modell prüft sie in einem Durchgang.
vLLM nennt in seiner Doku (externe Seite, docs.vllm.ai) zu Fassung 0.32.0 den Einsatzbereich. Es soll die Zeit zwischen zwei Token senken, vor allem bei geringer bis mittlerer Last und speichergebundenem Betrieb. Die Übersicht derselben Seite führt eine Spalte für hohe Last. Dort bringen die Verfahren mit Entwurfsmodell, etwa EAGLE, noch einen mittleren bis hohen Gewinn, die einfachen wie n-gram einen mittleren. Die Anleitung für gpt-oss (externe Seite, github.com) enthält fertige Einstellungen für Server mit EAGLE-3.
Ein Grund für den Vorrang geringer Last liegt nahe: Stapeln und Spekulation nutzen dieselbe Reserve, die Rechenzeit, die beim Warten auf den Speicher frei bleibt. Das ist eine eigene Folgerung, die Doku begründet ihre Übersicht nicht. Am Einzelplatz läuft meist nur eine Anfrage, und die Reserve ist groß.
Die Programme stellen dabei verschiedene Bedingungen. vLLM verlangt voreingestellt, dass Entwurf und Hauptmodell dasselbe Vokabular haben. Eine Einstellung hebt das für Entwurfsmodelle auf. LM Studio verlangt dasselbe Vokabular (Doku (externe Seite, lmstudio.ai)). vLLM führt mehrere Verfahren, darunter n-gram und EAGLE (README (externe Seite, github.com)). Für gpt-oss-20b liegt ein Entwurf für EAGLE-3 als Datei bereit, die zweite Ebene nennt ihn.
Auch die Prüfung beschreiben beide verschieden. LM Studio nimmt laut seiner Doku nur Token an, die das Hauptmodell selbst gewählt hätte. Der Server vLLM nennt das Ziehen theoretisch verlustfrei, bis an die Grenze der Rechengenauigkeit. Dieselbe Einschränkung steht in der Arbeit von DeepMind (externe Seite, arxiv.org) zum Verfahren. Wie LM Studio bei einer Temperatur über 0 prüft, sagt seine Seite nicht.
Die Regel für das Annehmen beim Ziehen erklärt Grundkurs, Kapitel 12. Was das Verfahren auf einem Arbeitsrechner bringt, misst der Bericht Elf Wege, ein lokales Modell schneller zu machen.
Fremde Anfragen ändern die eigene Antwort
Im Server bestimmen die fremden Anfragen, wie groß der Stapel gerade ist. Nach einer Untersuchung von Thinking Machines (externe Seite, thinkingmachines.ai) hängt die Ausgabe einer Anfrage an genau dieser Größe. Dieselbe Frage kann deshalb bei gleicher Einstellung verschieden ausfallen, je nachdem, wer gleichzeitig fragt. Die Messung dazu und den Ausweg beschreibt Grundkurs, Kapitel 12.
Ein gemeinsamer Anfang wird einmal gerechnet
Viele Anfragen beginnen gleich, etwa mit derselben Systemanweisung. vLLM speichert den Cache solcher Anfänge und verwendet ihn wieder (README (externe Seite, github.com)). SGLang hat dafür ein eigenes Verfahren namens RadixAttention, das den Cache über mehrere Aufrufe hinweg automatisch wiederverwendet (Arbeit zu SGLang (externe Seite, arxiv.org)). Bei einem Anbieter wirkt ein solcher Zwischenspeicher bis in die Grenzen für Eingabe-Token, wie Grundkurs, Kapitel 11 zeigt.
Quellen
42 Einträge, davon 1 Schlüsselarbeitalle erreichbar
Erreichbarkeit automatisch geprüft
SchlüsselarbeitDokumentationerreichbar
Anthropic, Tool use with Claude (externe Seite, platform.claude.com)
platform.claude.comgeprüft 25.10.2026
Die Herstellerdokumentation zum Tool Call, die den Vorgang technisch ausschreibt: Das Modell gibt einen strukturierten Aufruf zurück, ausgeführt wird er vom eigenen Programm oder beim Anbieter. Sie nennt außerdem, wonach ausgewählt wird, nämlich nach der Beschreibung des Tools und nur wenn die Antwort nicht schon im Kontext steht, und was die Tool-Liste je Modell an Token kostet. Im aufklappbaren Abschnitt „When required parameters are missing“ steht dazu, dass ein Modell fehlende Angaben auch raten kann, und dass dieses Verhalten nicht zugesichert ist, besonders bei mehrdeutigen Eingaben und schwächeren Modellen. Im Beispiel zum Ablauf eines Tool Calls steht das Ergebnis als Block vom Typ tool_result in einer Nachricht mit der Rolle user, also unter derselben Rolle wie die Frage des Menschen davor. Abgerufen am 31.07.2026, das Beispiel erneut angesehen am 07.08.2026, die ganze Seite erneut gelesen am 09.10.2026. Die Tabelle zum Sockel führt seither auch Claude Opus 5.5 mit 286 Token und ohne Wert für den erzwungenen Aufruf.
Dokumentationerreichbar
v0.40.0 (externe Seite, github.com)
github.comgeprüft 25.10.2026
Die Release Notes nennen den Wechsel auf MLX als Standardlaufzeit für unterstützte Modelle auf Apple Silicon.
Dokumentationerreichbar
LM Studio, Parallel Requests (externe Seite, lmstudio.ai)
lmstudio.aigeprüft 25.10.2026
Die Doku von LM Studio zu gleichzeitigen Anfragen. Der Server fasst sie über Continuous Batching zu einem Stapel zusammen, voreingestellt sind vier gleichzeitige Vorhersagen. Das gilt für die Engine llama.cpp, für MLX ist es angekündigt.
Dokumentationerreichbar
OpenAI, gpt-oss-120b und gpt-oss-20b Model Card (externe Seite, openai.com)
openai.comgeprüft 25.10.2026
OpenAIs Begleitdokument zu seinen offenen Gewichten vom 05.08.2025. Es heißt Model Card, während dasselbe Haus seine geschlossenen Modelle mit einer System Card ausliefert. Damit belegt ein einziger Anbieter die Grenze zwischen beiden Wörtern: Wo er die Auslieferung aus der Hand gibt, beschreibt er das Modell, wo er sie behält, das System samt seiner Schutzschichten.
Originalarbeiterreichbar
OpenAI: gpt-oss-120b & gpt-oss-20b Model Card (externe Seite, arxiv.org)
arxiv.orggeprüft 25.10.2026
Die Modellkarte zu gpt-oss in der Fassung auf arXiv vom 08.08.2025, datiert auf den 05.08.2025. Sie beschreibt den Aufbau: 128 beziehungsweise 32 Experten je Schicht, vier davon je Token, und die Speicherung der Expertengewichte mit 4,25 Bit. Tabelle 1 zerlegt die Parameter nach Bauteilen.
Dokumentationerreichbar
OpenAI, README von gpt-oss beim Commit 5681a6b (externe Seite, github.com)
github.comgeprüft 25.10.2026
Die README des Repos openai/gpt-oss. Sie beschreibt die beiden Modelle und die Speicherung der Expertengewichte in MXFP4. Als Wege zum Ausführen nennt sie Transformers, vLLM, eine eigene Referenz, Ollama und LM Studio. Die Referenz in PyTorch dient dem Lernen, rechnet alles in BF16 und braucht vier H100. Der Permalink zeigt auf einen festen Stand.
Dokumentationerreichbar
vLLM Recipes, GPT-OSS, beim Commit 2338e9e (externe Seite, github.com)
github.comgeprüft 25.10.2026
Die Anleitung des vLLM-Projekts, gpt-oss auf Servern mit Grafikkarten von NVIDIA und AMD zu betreiben. Sie beschreibt die Abwägung zwischen Durchsatz und Antwortzeit je Nutzer. Je nach Ziel rät sie zu einer oder mehreren Grafikkarten je Instanz. Der Permalink zeigt auf einen festen Stand.
Dokumentationerreichbar
OpenAI Cookbook, How to run gpt-oss locally with Ollama (externe Seite, developers.openai.com)
developers.openai.comgeprüft 25.10.2026
Die Anleitung von OpenAI, gpt-oss mit Ollama auf dem eigenen Rechner auszuführen. Gleich zu Beginn trennt sie zwei Fälle: Sie gilt für PC und Mac, für Server mit eigenen Grafikkarten verweist sie auf vLLM. Ollama bildet laut der Seite das Gesprächsformat harmony mit einer Vorlage nach.
Originalarbeiterreichbar
llama.cpp, die README am Tag der Veröffentlichung (externe Seite, github.com)
github.comgeprüft 25.10.2026
Der Stand vom 10.03.2023, festgehalten über den Commit. Er nennt das Ziel in einem Satz, das Verfahren (4 Bit, reines C und C++, Rechnung auf der CPU) und die Umstände der Entstehung. Der Permalink zeigt auf diesen Stand, nicht auf die heutige Fassung.
Dokumentationerreichbar
llama.cpp, README beim Commit 098ce52 (externe Seite, github.com)
github.comgeprüft 25.10.2026
Die heutige README von llama.cpp. Als Ziel nennt sie, Modelle mit wenig Aufwand auf vielen Arten von Hardware auszuführen, lokal und in der Cloud. Das Programm ist in C und C++ geschrieben. Es rechnet auf Apple Silicon über Metal und auf NVIDIA über CUDA und bringt einen Server mit der Schnittstelle von OpenAI mit. Lizenz MIT laut Datei LICENSE beim selben Commit. Der Permalink zeigt auf einen festen Stand.
Originalarbeiterreichbar
Ollama v0.0.1 (externe Seite, github.com)
github.comgeprüft 25.10.2026
Die erste Veröffentlichung vom 08.07.2023, ausdrücklich als frühe Vorschau bezeichnet. Sie belegt den Zeitpunkt, ab dem lokale Modelle mit einem Befehl statt mit einem Übersetzungslauf starteten.
Dokumentationerreichbar
ollama/LICENSE (externe Seite, github.com)
github.comgeprüft 25.10.2026
Die Lizenzdatei im Repository von Ollama: MIT-Lizenz, die jeder Person Nutzung, Änderung und Weitergabe kostenlos erlaubt. Eine Einschränkung nach Ländern enthält sie nicht.
Ankündigung des Herstellerserreichbar
Ollama's new engine for multimodal models (externe Seite, ollama.com)
ollama.comgeprüft 25.10.2026
Ollamas Ankündigung vom 15.05.2025. Bis dahin beruhte die Unterstützung neuer Modelle auf llama.cpp. Seither rechnet eine eigene Engine, die weiter auf der Rechenbibliothek GGML aufbaut.
Dokumentationerreichbar
LM Studio, Doku der App (externe Seite, lmstudio.ai)
lmstudio.aigeprüft 25.10.2026
Die Einstiegsseite der Doku von LM Studio. Auf Windows, Linux und Mac rechnet ein Modell über llama.cpp, auf Apple Silicon wahlweise über MLX. Die App stellt Modelle über eine Schnittstelle nach dem Vorbild von OpenAI bereit, lokal und im Netz.
Dokumentationerreichbar
LM Studio, App Terms of Use (externe Seite, lmstudio.ai)
lmstudio.aigeprüft 25.10.2026
Die Nutzungsbedingungen der App LM Studio. Sie erlauben den Einsatz für private und interne geschäftliche Zwecke. Ausgeschlossen ist, die Software als Dienst für andere anzubieten.
Ankündigung des Herstellerserreichbar
LM Studio, free for work (externe Seite, lmstudio.ai)
lmstudio.aigeprüft 25.10.2026
Die Ankündigung von LM Studio vom 08.07.2025. Seither ist die App auch für den Einsatz in Firmen kostenlos.
Dokumentationerreichbar
MLX (externe Seite, github.com)
github.comgeprüft 25.10.2026
Das offizielle Repository von Apples Rechenframework für maschinelles Lernen auf eigener Hardware, mit Schnittstellen für Python, C++, C und Swift und einem gemeinsamen Speicher zwischen CPU und GPU.
Dokumentationerreichbar
MLX LM, README beim Commit c39139d (externe Seite, github.com)
github.comgeprüft 25.10.2026
Die README von mlx-lm, dem Paket von Apple für Sprachmodelle auf Apple Silicon. Es erzeugt Text über MLX und trainiert Modelle nach. Modelle lädt es direkt vom Hugging Face Hub. Lizenz MIT laut Datei LICENSE beim selben Commit. Der Permalink zeigt auf einen festen Stand.
Dokumentationerreichbar
vLLM, README beim Commit ee22f68 (externe Seite, github.com)
github.comgeprüft 25.10.2026
Die README von vLLM, entstanden am Sky Computing Lab der UC Berkeley. Sie beschreibt das Programm als Bibliothek für Inferenz und Betrieb von Sprachmodellen. Genannt sind Continuous Batching, Wiederverwendung gemeinsamer Anfänge, Speculative Decoding und ein Server mit der Schnittstelle von OpenAI. Lizenz Apache 2.0 laut Datei LICENSE beim selben Commit. Der Permalink zeigt auf einen festen Stand.
Ankündigung des Herstellerserreichbar
vLLM: Easy, Fast, and Cheap LLM Serving with PagedAttention (externe Seite, vllm.ai)
vllm.aigeprüft 25.10.2026
Die Ankündigung von vLLM vom 20.06.2023, drei Monate vor der Arbeit dazu. Sie misst den Durchsatz gegen die Bibliothek Transformers von Hugging Face und gegen den Server TGI. Gemessen wurde an LLaMA-7B auf einer A10G und an LLaMA-13B auf einer A100 mit 40 GB.
Dokumentationerreichbar
SGLang, README beim Commit e45cbce (externe Seite, github.com)
github.comgeprüft 25.10.2026
Die README von SGLang, einem quelloffenen Inferenz-Server unter dem Dach der gemeinnützigen Organisation LMSYS. Er ist für Agenten, Betrieb in großem Maßstab und Reinforcement Learning ausgelegt. Lizenz Apache 2.0 laut Datei LICENSE beim selben Commit. Der Permalink zeigt auf einen festen Stand.
Dokumentationerreichbar
TensorRT-LLM, README beim Commit a3766d6 (externe Seite, github.com)
github.comgeprüft 25.10.2026
Die README von TensorRT-LLM, der quelloffenen Bibliothek von NVIDIA für Inferenz auf den eigenen Grafikkarten. Lizenz Apache 2.0 laut Datei LICENSE beim selben Commit. Der Permalink zeigt auf einen festen Stand.
Dokumentationerreichbar
Text Generation Inference, README beim Commit b4adbf2 (externe Seite, github.com)
github.comgeprüft 25.10.2026
Die README von TGI, dem Inferenz-Server von Hugging Face. Ein Hinweis am Anfang stellt das Projekt seit dem 11.12.2025 in den Wartungsmodus. Als Nachfolger empfiehlt er vLLM und SGLang, für den eigenen Rechner llama.cpp und MLX. Lizenz Apache 2.0 laut Datei LICENSE beim selben Commit. Der Permalink zeigt auf einen festen Stand.
Dokumentationerreichbar
Ollama, OpenAI compatibility (externe Seite, docs.ollama.com)
docs.ollama.comgeprüft 25.10.2026
Der Beleg dafür, dass ein Programm auf dem eigenen Rechner dieselbe Sprache spricht wie ein Anbieter. Im Beispiel steht ein Schlüssel, der verlangt und dann nicht beachtet wird, weil lokal niemand abrechnet.
Dokumentationerreichbar
MLX LM, SERVER.md beim Commit c39139d (externe Seite, github.com)
github.comgeprüft 25.10.2026
Die Beschreibung des Servers von mlx-lm. Seine Schnittstelle ähnelt der von OpenAI. Für den Produktivbetrieb wird er nicht empfohlen, weil er nur grundlegende Sicherheitsprüfungen enthält. Der Permalink zeigt auf einen festen Stand.
Dokumentationerreichbar
LM Studio, OpenAI Compatibility Endpoints (externe Seite, lmstudio.ai)
lmstudio.aigeprüft 25.10.2026
Die Doku von LM Studio zur Schnittstelle nach dem Vorbild von OpenAI. Ein vorhandener Client wechselt nur die Basisadresse. Die Beispiele nehmen den Port 1234 an.
Dokumentationerreichbar
llama.cpp, README des Servers beim Commit 620d222 (externe Seite, github.com)
github.comgeprüft 25.10.2026
Die Beschreibung der Schalter des Servers von llama.cpp im Stand von Build 11669. Ohne Angabe übernimmt er die Kontextlänge aus dem Modell. Der Speicher für Schlüssel und Werte liegt voreingestellt in 16 Bit und lässt sich gröber wählen. Ein Schalter legt fest, wie viele Schichten im Grafikspeicher liegen, ein weiterer, wie sich das Modell auf mehrere Grafikkarten verteilt. Der Permalink zeigt auf einen festen Stand.
Dokumentationerreichbar
vLLM 0.32.0, Tool Calling (externe Seite, docs.vllm.ai)
docs.vllm.aigeprüft 25.10.2026
Die Doku von vLLM zu Toolaufrufen in der Fassung 0.32.0. Der Server erkennt einen Toolaufruf in der Ausgabe des Modells und gibt ihn als Daten zurück. Ausführen muss ihn die aufrufende Anwendung.
Datenerreichbar
gpt-oss-20b in vier Repositories bei Hugging Face (externe Seite, huggingface.co)
huggingface.cogeprüft 25.10.2026
Eigene Zählung der Dateien von gpt-oss-20b in vier Repositories bei Hugging Face, abgerufen über die Schnittstelle des Portals. Dieselben Gewichte liegen als safetensors für Transformers und vLLM, als GGUF für llama.cpp und als MLX-Ordner für den Mac vor. Alle vier stehen unter Apache 2.0 und ohne Zugangsschranke.
Dokumentationerreichbar
Ollama, gpt-oss in der Modellbibliothek (externe Seite, ollama.com)
ollama.comgeprüft 25.10.2026
Der Eintrag von gpt-oss in Ollamas Modellbibliothek. Ollama rechnet das Format MXFP4 der Expertengewichte direkt, mit eigenen Kernels in der neuen Engine. Die Seite nennt 14 GB für das kleine und 65 GB für das große Modell.
Dokumentationerreichbar
GGUF, die Formatbeschreibung beim Commit ffa4e8b (externe Seite, github.com)
github.comgeprüft 25.10.2026
Die Spezifikation des Dateiformats GGUF, mit dem llama.cpp und Ollama Modelle laden. Der Kopf einer Datei ist eine Liste aus Schlüsseln und Werten, darunter die Zahl der Blöcke und die Zahl der Schlüssel-Wert-Köpfe. Der Permalink zeigt auf einen festen Stand.
Dokumentationerreichbar
LM Studio, mlx-engine, README beim Commit ab52366 (externe Seite, github.com)
github.comgeprüft 25.10.2026
Die README der MLX-Engine von LM Studio. Sie baut auf mlx-lm von Apple auf und liegt LM Studio für den Mac seit Version 0.3.4 bei. Lizenz MIT laut Datei LICENSE beim selben Commit. Der Permalink zeigt auf einen festen Stand.
Dokumentationerreichbar
Ollama, Importing a Model (externe Seite, docs.ollama.com)
docs.ollama.comgeprüft 25.10.2026
Ollamas Anleitung, ein Modell aus eigenen Dateien zu übernehmen. Ein Modelfile zeigt dafür auf einen Ordner mit safetensors oder auf eine GGUF-Datei. Eine GGUF-Datei übernimmt Ollama ohne erneute Quantisierung.
Dokumentationerreichbar
vLLM 0.32.0, GGUF (externe Seite, docs.vllm.ai)
docs.vllm.aigeprüft 25.10.2026
Die Doku von vLLM zum Dateiformat GGUF in der Fassung 0.32.0. Die Unterstützung gilt dort als sehr experimentell und noch nicht optimiert.
Dokumentationerreichbar
Ollama, FAQ (externe Seite, docs.ollama.com)
docs.ollama.comgeprüft 25.10.2026
Ollamas Antworten auf häufige Fragen, Quelle im Repo docs/faq.mdx (Stand Commit 33a3afa, 13.10.2026). Sie beschreibt, wie sich der Cache für Schlüssel und Werte in 8 Bit speichern lässt, dass mehrere gleichzeitige Anfragen den Speicherbedarf vervielfachen und dass Ollama ein Modell auf eine einzige Grafikkarte lädt, wenn es dort hineinpasst.
Originalarbeiterreichbar
arxiv.orggeprüft 25.10.2026
Die Arbeit vom 12.09.2023, aus der der Inferenz-Server vLLM hervorging. Sie benennt den KV-Cache als den knappen Speicher beim Betrieb eines Sprachmodells mit vielen gleichzeitigen Anfragen und verwaltet ihn in Blöcken nach dem Vorbild der Speicherverwaltung eines Betriebssystems, sodass Anfragen mit gleichem Anfang sich die Einträge teilen.
Originalarbeiterreichbar
usenix.orggeprüft 25.10.2026
Die Arbeit von Yu und anderen auf der OSDI im Juli 2022. Sie plant die Ausführung je Rechenschritt: Nach jedem Schritt verlassen fertige Anfragen den Stapel, und neue rücken nach. An GPT-3 mit 175 Milliarden Parametern misst sie den 36,9-fachen Durchsatz gegenüber FasterTransformer von NVIDIA, bei gleicher Antwortzeit. Belegstelle ist das Abstract.
Dokumentationerreichbar
vLLM 0.32.0, Speculative Decoding (externe Seite, docs.vllm.ai)
docs.vllm.aigeprüft 25.10.2026
Die Doku von vLLM zum Speculative Decoding in der Fassung 0.32.0. Es soll die Zeit zwischen zwei Token bei geringer bis mittlerer Last senken. Bei Spitzenlast empfiehlt sie die einfachen Verfahren. Voreingestellt brauchen Entwurf und Hauptmodell dasselbe Vokabular, eine Einstellung hebt das auf.
Originalarbeiterreichbar
Accelerating Large Language Model Decoding with Speculative Sampling (externe Seite, arxiv.org)
arxiv.orggeprüft 25.10.2026
Chen und Mitautoren von DeepMind legen am 02.02.2023 die zweite grundlegende Arbeit zum spekulativen Entwerfen vor, zwei Monate nach Leviathan. Wichtig ist der Nebensatz, mit dem sie ihre Zusage begrenzen: Die Verteilung des großen Modells bleibt erhalten im Rahmen der Rechengenauigkeit der Hardware. Gemessen haben sie an Chinchilla mit 70 Milliarden Parametern, wo die Ausgabe zwei- bis zweieinhalbfach schneller lief.
Dokumentationerreichbar
LM Studio, Speculative Decoding (externe Seite, lmstudio.ai)
lmstudio.aigeprüft 25.10.2026
Die Doku von LM Studio zum Speculative Decoding. Das Hauptmodell nimmt nur Token an, die es selbst gewählt hätte. Das Entwurfsmodell braucht dasselbe Vokabular wie das Hauptmodell.
Artikelerreichbar
Defeating Nondeterminism in LLM Inference (externe Seite, thinkingmachines.ai)
thinkingmachines.aigeprüft 25.10.2026
Die Untersuchung, die den verbreiteten Verdacht ausräumt, die Parallelität der Grafikkarte mische die Rechenreihenfolge auf. Der einzelne Rechenschritt ist wiederholbar, der Unterschied entsteht eine Ebene höher: Ein Schritt liefert je nach Größe des Stapels, in dem er mitläuft, leicht verschiedene Zahlen, und die Stapelgröße hängt an den fremden Anfragen im selben Moment. Gemessen an einem offenen Modell bei Temperatur 0 und tausend Token je Antwort: achtzig verschiedene Ergebnisse aus tausend Läufen, alle gleich bis zum 102. Token. Zu lesen ist der Text mit einer Einschränkung, die er selbst nennt: Die Lösung, mit der danach alle tausend Läufe gleich ausfallen, stammt von denselben Autoren.
Originalarbeiterreichbar
SGLang: Efficient Execution of Structured Language Model Programs (externe Seite, arxiv.org)
arxiv.orggeprüft 25.10.2026
Die Arbeit zu SGLang, erste Fassung Dezember 2023, zweite vom 06.06.2024. Ihr Verfahren RadixAttention verwendet den KV-Cache über mehrere Aufrufe hinweg wieder, wenn Anfragen denselben Anfang haben.