Diffuser le texte
- TypeScript
- Python
- Go
- C#
- PHP
- Ruby
- Java
- Rust
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 :
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énementstool.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.