LLM-Latency mit TTFT, TPOT und P99 messen
Automatische Übersetzung
Dieser Artikel wurde automatisch aus der englischen Originalversion übersetzt.
Die Zeit bis zum ersten Token, kurz TTFT, misst, wie lange eine Anfrage auf ihr erstes generiertes Token wartet. Die Zeit pro Ausgabetoken, kurz TPOT, misst den durchschnittlichen Abstand zwischen den nachfolgenden Tokens. Messen Sie beides: Ein Server kann schnell beginnen und langsam generieren oder Nutzer zunächst warten lassen und anschließend schnell streamen.
Beim Vergleich von Servern sollten Ingenieure dieselben Messgrenzen verwenden und die Latency nach Prompt-Länge, Ausgabelänge und Last aufschlüsseln.
Jede Anfrage einzeln berechnen
Erfassen Sie den Zeitpunkt der Anfrageübermittlung, des ersten und des letzten generierten Tokens sowie die Anzahl der Ausgabetokens. Für eine Antwort mit mindestens zwei Tokens gilt:
TTFT = first_token_time - request_start_time
TPOT = (last_token_time - first_token_time) / (output_tokens - 1)
Wird die Anfrage bei 0 Sekunden übermittelt, trifft das erste Token bei 0.3 Sekunden und das zwanzigste bei 1.25 Sekunden ein, beträgt die TTFT 300 ms und die durchschnittliche TPOT 50 ms. Für eine Antwort mit nur einem Token ist TPOT nicht definiert.
Die vom Client beobachtete TTFT kann Netzwerkübertragung, Wartezeit in der Warteschlange, Tokenization und prefill umfassen. Eine serverseitige Zeitmessung für prefill schließt mehrere dieser Zeitanteile aus. Kennzeichnen Sie beide Messungen, statt sie als gleichwertig zu vergleichen. Der prefill-Durchlauf liefert üblicherweise die Logits, aus denen das erste Token generiert wird; siehe Splitwises Beschreibung der Inference-Phasen.
Die Latency-Verteilung untersuchen
P50 ist der Median der Anfrage-Latency. P99 ist der Wert, unter dem 99% der gemessenen Anfragen liegen. Berechnen Sie die Perzentile aus den Messwerten der einzelnen Anfragen. Wenn Sie alle Token-Abstände über sämtliche Anfragen mitteln, gewichten Sie längere Antworten stärker und beantworten eine andere Frage.
Die durchschnittliche TPOT verdeckt außerdem Pausen zwischen bestimmten Tokens. Erfassen Sie die einzelnen Token-Abstände, wenn Sie Unterbrechungen beim Streaming untersuchen. Ein HTTP-Chunk kann mehrere Tokens enthalten. Die Abstände zwischen eintreffenden Chunks entsprechen daher nicht exakt den Zeitabständen der Token-Generierung.
Als historischer Referenzwert gab MLPerf Inference v5.0 für seinen interaktiven Benchmark mit Llama 2 Chat 70B eine P99 TTFT von 450 ms und eine P99 TPOT von 40 ms vor. Diese Grenzwerte definieren diesen Benchmark. Legen Sie die Ziele für Ihr Produkt anhand von Nutzertests fest und geben Sie anschließend an, bei welcher angebotenen Last der Server sie erfüllt.
Engineering-Leitfaden: TTFT, TPOT und Perzentile erläutert den Zusammenhang dieser Messwerte mit Warteschlangen und Inference-Phasen.