Inferenzoptimierung, Serving und Leistungskennzahlen
Batch Size
Anzahl gemeinsam verarbeiteter Beispiele oder Sequenzen.
Batch Size ist die Zahl der Eingaben, die gemeinsam durch das Modell laufen. Beim Training sind das Beispiele je Lernschritt, beim Betrieb Anfragen, die sich einen Durchlauf teilen. Gemeint ist in diesem Feld meist der Betrieb.
Größer heißt mehr Durchsatz und mehr Wartezeit
Da die Modellgewichte je Durchlauf nur einmal gelesen werden müssen, steigt der Durchsatz mit der Zahl gebündelter Anfragen deutlich. Begrenzt wird das durch den Speicher für die Zwischenwerte der Aufmerksamkeit, der je Anfrage anfällt und mit der Länge wächst. Genau dieser Platz bestimmt, wie viele Anfragen gleichzeitig laufen können. Kwon et al.
Die Kehrseite ist die Wartezeit für den Einzelnen. Je mehr Anfragen sich einen Durchlauf teilen, desto langsamer tröpfeln die Tokens einer einzelnen Antwort. Zwischen Durchsatz und Antwortzeit muss man sich entscheiden. Agrawal et al.
So kannst du dir das vorstellen
Ein Aufzug, der wartet, bis er voll ist. Er befördert mehr Menschen pro Stunde und lässt den Einzelnen länger warten. Das Bild erklärt die Abwägung, es nennt keine richtige Größe.
Was es in der Praxis bedeutet
Wer selbst betreibt, stellt diese Größe nach dem Einsatzzweck ein: klein für interaktive Anwendungen, groß für Stapelverarbeitung. Eine allgemein richtige Zahl gibt es nicht, weil sie an Modellgröße, Grafikspeicher und typischer Kontextlänge hängt.
Wichtig ist, die Wirkung zu messen, und zwar beides: Tokens pro Sekunde über das ganze System und die Zeit, die eine einzelne Antwort braucht. Wer nur den Durchsatz optimiert, baut ein System, das sich für Nutzer zäh anfühlt.
Wo es verwechselt wird
Die Bündelgröße im Betrieb ist nicht dieselbe wie im Training, auch wenn der Ausdruck gleich ist. Und sie ist nicht die Zahl gleichzeitiger Nutzer, sondern die Zahl der Anfragen in einem Durchlauf.
Verwandte Begriffe
Continuous Batching, Concurrency, Batch Inference, KV Cache, Tokens per Second.