Zum Hauptinhalt springen
Rufe statt der Run-Methode die Stream-Methode des Agenten auf, um Text und Tool-Aktivität anzuzeigen, während der Lauf noch läuft. Sie führt dieselbe fortsetzbare Schleife über den Responses-SSE-Stream des Gateways aus, und die Continue-Stream-Methode macht dasselbe für einen pausierten Lauf. Rust hat kein Streaming.

Text streamen

Das Endergebnis ist dasselbe Laufergebnis, das die Run-Methode zurückgibt. Wie der Stream läuft, unterscheidet sich je nach Sprache:
agent.stream() und agent.continueStream() geben sofort ein Stream-Ergebnis zurück. getResult() wird aufgelöst, wenn der Lauf endet.

Einen Stream auswählen

Jeder Consumer spielt die Events von Anfang an ab, sodass ein UI-Renderer, ein Logger und Persistenzcode denselben Lauf ohne zweite Modellanfrage lesen können. TypeScript hat außerdem getText(), um auf die gesamte Antwort zu warten, sodass Darstellung und Persistenz nebeneinander laufen können:
Modell-Events sind response.output_text.delta, response.reasoning.delta und response.item; ihre Felder stehen unter Items. Modell-Events werden nur gestreamt, wenn der Client Streaming unterstützt, was jeder Gateway-Client tut. Mit einem anderen Modell-Client (einem, der StreamingModelClient oder IStreamingModelClient nicht implementiert bzw. nicht auf stream reagiert) sendet der Stream weiterhin Lifecycle-Events, aber keine Text-Deltas.

Tool-Fortschritt streamen

Tools, die Fortschritt melden, veröffentlichen tool.preliminary_result-Events, die im vollständigen Stream (und in TypeScript im Tool-Stream) erscheinen und am abgeschlossenen Schritt erhalten bleiben. Unter Tools siehst du, wie jede Sprache Fortschritt meldet.

Einen Stream abbrechen

Jeder abgeschlossene Schritt behält seine Request-ID, seinen Anbieter, sein Modell, seinen Finish-Reason, seine Warnungen und seine Nutzung.
Zuletzt geändert am 5. November 2026