KI-Begriffe

Inferenz

Was passiert, wenn ein fertiges Modell benutzt wird – warum die erste Antwort auf sich warten lässt, warum Text Stück für Stück erscheint und was Geschwindigkeit und Kosten bestimmt.

Lesestand

Inferenz heißt: ein fertig trainiertes Modell benutzen. Die Parameter stehen fest, es wird nur noch gerechnet – Eingabe rein, Ausgabe raus. Das passiert bei jeder einzelnen Chat-Nachricht.

Bei Sprachmodellen läuft das in zwei Phasen: Erst wird die ganze Eingabe auf einmal verarbeitet (Prefill), dann entsteht die Antwort Token für Token (Decode). Für jedes einzelne Token müssen dabei praktisch alle Parameter aus dem Speicher gelesen werden – deshalb bestimmt die Speicherbandbreite der Hardware, wie schnell ein Modell schreibt.

Training und Inferenz

TrainingInferenz
Was passiertParameter werden angepasstParameter werden nur gelesen
Wie ofteinmal pro Modellversionbei jeder Anfrage, millionenfach am Tag
DauerWochen bis MonateSekunden bis Minuten
Hardwareriesige Rechner-Verbündevon großen Rechenzentren bis zum eigenen Laptop

Einzeln ist eine Inferenz billig. Weil sie aber ständig passiert, verbrauchen Anbieter insgesamt viel Rechenleistung dafür – inzwischen oft mehr als für das Training.

Zwei Phasen: Prefill und Decode

① Prefill – lesen

Die gesamte Eingabe – Systemprompt, Verlauf, Frage – wird in einem Rutsch verarbeitet. Das ist gut parallelisierbar und schnell, dauert bei sehr langen Eingaben aber spürbar. Daraus ergibt sich die Wartezeit bis zum ersten Wort.

② Decode – schreiben

Jetzt entsteht die Antwort, streng nacheinander: Jedes Token hängt vom vorigen ab. Pro Token ein kompletter Durchgang durchs Modell. Das bestimmt, wie schnell der Text erscheint.

Darum sieht man im Chat erst eine kurze Pause und dann fließenden Text.

Damit beim Schreiben nicht jedes Mal die ganze Eingabe neu berechnet werden muss, merkt sich das Modell die Zwischenergebnisse jedes bisherigen Tokens im KV-Cache (siehe Kontextfenster). Pro neuem Token kommt nur noch ein Eintrag dazu.

Wie schnell ist schnell?

Zwei Zahlen bestimmen das Gefühl beim Benutzen: die Zeit bis zum ersten Token und die Tokens pro Sekunde danach. Probier aus, wie sich das anfühlt:

Antwort-Geschwindigkeit

Zum Vergleich: Menschen lesen etwa 4 bis 8 Tokens pro Sekunde. Ab ungefähr 30 Tokens pro Sekunde schreibt ein Modell schneller, als man mitlesen kann. Je nach Modell, Anbieter und Last sind heute grob 30 bis über 200 Tokens pro Sekunde üblich.

Warum Speicherbandbreite entscheidet

Beim Schreiben steckt die meiste Zeit nicht im Rechnen, sondern im Lesen: Für jedes einzelne Token müssen die Gewichte aus dem Grafikspeicher zu den Recheneinheiten wandern. Bei einem Modell mit 140 GB Gewichten sind das 140 GB – pro Token. Daraus folgt eine einfache Obergrenze:

Tokens pro Sekunde  ≲  Speicherbandbreite / Größe der Gewichte
Wie schnell kann es höchstens sein?
Gewichte
Tokens/s höchstens
Speicher der Hardware

Grobe Obergrenze für eine einzelne Anfrage, ohne Feinheiten wie KV-Cache oder Rechenaufwand. Bandbreiten und Speichergrößen sind gerundete Herstellerangaben. Bei Mixture of Experts zählen für das Tempo nur die aktiven Parameter.

Viele Nutzer auf einmal

Wenn das Lesen der Gewichte der Engpass ist, liegt ein Trick nahe: Einmal gelesene Gewichte gleich für viele Anfragen verwenden. Genau das machen Anbieter mit Batching – die Grafikkarte erzeugt das nächste Token für Dutzende Gespräche gleichzeitig. Für den Einzelnen wird es kaum langsamer, die Kosten pro Token sinken aber drastisch.

⇄

Eingabe ist billiger

Eingabe-Tokens werden im Prefill parallel verarbeitet, Ausgabe-Tokens einzeln nacheinander. Deshalb kosten Ausgabe-Tokens bei APIs meist ein Mehrfaches.

♻

Caching

Bleibt der Anfang einer Anfrage gleich – etwa ein langer Systemprompt –, können Anbieter das Prefill zwischenspeichern. Solche Tokens werden dann deutlich günstiger berechnet.

⚡

Spekulatives Dekodieren

Ein kleines Modell rät mehrere Tokens voraus, das große prüft sie in einem Durchgang. Stimmen sie, spart man Zeit – am Ergebnis ändert sich nichts.

Für Entwickler übersetzt

BegriffEntspricht ungefähr
Inferenzder Produktivbetrieb – im Gegensatz zum Build
Prefilleine Batch-Verarbeitung über alle Eingaben
Decodeeine Schleife mit Abhängigkeit von der vorigen Iteration – nicht parallelisierbar
Speichergebundenwie das Durchlaufen eines riesigen Arrays: Die CPU wartet auf den RAM, nicht auf die Rechenwerke
Batchingmehrere Requests bündeln, um eine teure Ressource besser auszulasten – wie Batch-Inserts in eine Datenbank
StreamingServer-Sent Events: Die API schickt jedes Token, sobald es fertig ist

Häufige Irrtümer

„Das Modell tippt absichtlich langsam, damit es menschlich wirkt.“ – Nein, es entsteht tatsächlich Token für Token. Die Anzeige zeigt nur, was schon fertig ist.
„Ein schnelleres Modell ist ein schlechteres.“ – Nicht unbedingt. Tempo hängt von Hardware, Auslastung, Optimierung und Bauweise ab, nicht nur von der Größe.
„Beim Benutzen lernt das Modell.“ – Bei der Inferenz werden die Parameter nur gelesen, nie verändert.
„Für ein großes Modell braucht man vor allem schnelle Prozessoren.“ – Vor allem braucht man viel und schnellen Speicher. Deshalb sind Grafikkarten mit großem, sehr schnellem Speicher so begehrt.

Verwandte Begriffe