Was es ist
Inferenz ist alles, was nach dem Training passiert: Ein Prompt wird eingegeben, das Modell liefert eine Antwort. Es wird nichts dazugelernt; die Gewichte bleiben unverändert. Jeder Test-Chat, jede Evaluierungsantwort, jede Judge-Bewertung und jede Antwort in der Produktion ist Inferenz.
Funktionsweise
Ein Modell generiert Text Token für Token. Zuerst liest es den gesamten Prompt in einem Durchgang (als Prefill bezeichnet), was schnell geht, da alle Token parallel verarbeitet werden können. Dann dekodiert es: Es sagt das nächste Token voraus, hängt es an und wiederholt diesen Vorgang, bis es ein End-Token erzeugt oder ein Längenlimit erreicht. Jedes neue Token erfordert einen weiteren Durchlauf durch das Modell, weshalb lange Antworten mehr Zeit in Anspruch nehmen als lange Fragen.
- Zeit bis zum ersten Token besteht hauptsächlich aus dem Prefill-Vorgang: Je länger der Prompt, desto länger die Wartezeit, bis etwas erscheint.
- Token pro Sekunde beschreibt die Dekodiergeschwindigkeit: Sie bestimmt, wie schnell die Antwort gestreamt wird.
- Sampling-Einstellungen wie die Temperatur entscheiden, wie das nächste Token aus den Wahrscheinlichkeiten des Modells ausgewählt wird. Niedrige Werte machen Antworten vorhersehbarer; hohe Werte sorgen für mehr Varianz.
- Batching: Ein Server beantwortet viele Anfragen gleichzeitig, um die GPU auszulasten. Serving-Systeme wie vLLM verwalten den Speicher so effizient, dass sie den Durchsatz im Vergleich zu früheren Systemen bei gleicher Latenz um das 2- bis 4-Fache steigern konnten.
Deployment
Das Training erzeugt einen Satz von Gewichten, der beim Anbieter gespeichert wird. Um antworten zu können, müssen diese Gewichte bereitgestellt werden: Sie werden in den Speicher einer oder mehrerer GPUs geladen, hinter einem Endpunkt, der Anfragen entgegennimmt. Der benötigte Speicherplatz entspricht in etwa der Anzahl der Parameter multipliziert mit den pro Parameter verwendeten Bytes:
memory for weights ≈ parameters × bytes per parameter
7B model × 2 bytes (16-bit) ≈ 14 GB
70B model × 2 bytes (16-bit) ≈ 140 GB → several GPUsDie Zuweisung dieser Hardware, das Herunterladen der Gewichte und deren Laden in den GPU-Speicher ist der Kaltstart. Bei verwalteten Modellen geht dies meist schnell oder geschieht unsichtbar; bei offenen Modellen auf dedizierten GPUs dauert es oft 10 bis 40 Minuten. Sobald das Deployment geladen ist, bleibt es warm und antwortet in Sekundenschnelle — solange es existiert.
- 01Dauer wählenStundenkosten im Voraus angezeigt
- 02Wird bereitgestelltGewichte laden · Kaltstart
- 03LiveChat · der Zähler läuft
- 04Wird gelöschtAbrechnung stoppt
- Ein überwachter Durchlauf auf einem offenen Modell mit 8 Milliarden Parametern ist abgeschlossen. In 16-Bit-Präzision belegen seine Gewichte etwa 16 GB, daher wird eine GPU mit mehr Speicher als diesem benötigt, plus Platz für die zu verarbeitenden Anfragen.
- Sie starten einen Test-Chat für zwei Stunden. Der Stundenpreis wird angezeigt, bevor etwas erstellt wird.
- Bereitstellung: Die GPU wird zugewiesen und die Gewichte werden geladen. Dies dauert etwa 15 Minuten; die Abrechnung für die Bereitstellung hat begonnen.
- Live: Jede Frage wird in ein oder zwei Sekunden beantwortet. Sie probieren zehn echte Fragen aus der letzten Woche aus.
- Sie sind früher fertig und beenden die Sitzung. Löschen entfernt die Bereitstellung und die Abrechnung stoppt. Kosten: Die Zeit, in der die Bereitstellung existierte × der Stundenpreis, unabhängig davon, wie wenige Fragen Sie gestellt haben.
Häufige Fehler
- Ein dediziertes Deployment über Nacht „für alle Fälle“ laufen zu lassen — es wird stundenweise abgerechnet, unabhängig von der Nutzung.
- Ein Modell anhand seiner ersten Antwort nach einem Kaltstart zu beurteilen, oder anhand der Reaktionszeit, während es noch lädt.
- Das Testen mit anderen Sampling-Einstellungen oder einem anderen System-Prompt als jenen, die in der Evaluierung verwendet wurden.
- Zu erwarten, dass ein feinabgestimmtes Modell Dinge weiß, die nach dem Training passiert sind: Inferenz lernt nicht dazu.
Quellen und weiterführende Literatur
Externe Quellen werden in einem neuen Tab geöffnet.
- 01Efficient Memory Management for Large Language Model Serving with PagedAttentionKwon et al., 2023 · arXiv · arxiv.orgDas vLLM-Paper: Wie Serving-Systeme Anfragen bündeln und den GPU-Speicher verwalten.
- 02Text Generation InferenceHugging Face docs · huggingface.coEin produktiver Serving-Stack für offene Modelle und die Erklärung seiner Funktionen.
- 03Inference EndpointsHugging Face docs · huggingface.coWas die Bereitstellung eines Modells hinter einem verwalteten Endpunkt beinhaltet.
- 04Cold start (computing)Wikipedia · en.wikipedia.orgDas grundlegende Konzept eines Kaltstarts.