Passer au contenu principal
Appelez la méthode stream de l’agent au lieu de run pour afficher le texte et l’activité des outils pendant que l’exécution est en cours. Elle exécute la même boucle reprenable sur le flux SSE Responses du gateway, et la méthode continue-stream fait de même pour une exécution en pause. Rust n’a pas de streaming.

Diffuser le texte

Le résultat final est le même résultat d’exécution que celui renvoyé par run. Le fonctionnement du flux diffère selon le langage :
agent.stream() et agent.continueStream() renvoient immédiatement un résultat de flux. getResult() se résout quand l’exécution se termine.

Choisir un flux

Chaque consommateur rejoue les événements depuis le début ; un moteur de rendu d’interface, un journaliseur et du code de persistance peuvent donc lire la même exécution sans seconde requête au modèle. TypeScript a aussi getText() pour attendre la réponse complète, afin que le rendu et la persistance s’exécutent côte à côte :
Les événements du modèle sont response.output_text.delta, response.reasoning.delta et response.item ; Éléments décrit leurs champs. Les événements du modèle ne sont diffusés que si le client prend en charge le streaming, ce que font tous les clients gateway. Avec un autre client de modèle (qui n’implémente pas StreamingModelClient ou IStreamingModelClient, ou ne répond pas à stream), le flux émet toujours les événements de cycle de vie, mais aucun delta de texte.

Diffuser la progression des outils

Les outils qui signalent leur progression publient des événements tool.preliminary_result, qui apparaissent dans le flux complet (et dans le flux d’outils de TypeScript) et restent attachés à l’étape terminée. Outils montre comment chaque langage signale la progression.

Annuler un flux

Chaque étape terminée conserve son ID de requête, son fournisseur, son modèle, sa raison de fin, ses avertissements et son utilisation.
Dernière modification le 5 novembre 2026