Passer au contenu principal
Définissez des conditions d’arrêt sur l’agent pour terminer une exécution selon votre budget, et non celui du modèle. La première condition remplie enregistre sa raison comme raison d’arrêt de l’exécution et renvoie l’exécution avec le statut stopped. Par ailleurs, la limite d’étapes plafonne les tours du modèle dans chaque appel run ou continue. Rust n’a que la limite d’étapes.

Combiner les limites intégrées

Les limites de tokens et de coût dépendent de l’utilisation signalée par le fournisseur ; gardez donc aussi une limite d’étapes ou de durée.

Helpers disponibles

Les helpers se trouvent sur AgentSdk en C#, PHP (AgentSdk::) et Java, sur PhaseoAgentSdk en Ruby, et sont des fonctions du package en TypeScript, Python et Go. L’argument de durée diffère :

Quand les conditions sont vérifiées

Les langages ne vérifient pas les conditions au même moment et ne traitent pas la limite d’étapes de la même façon :
Les conditions d’arrêt de Python n’interrompent pas une boucle d’outils. Bornez les boucles d’outils avec max_steps. Un stop_when passé à run() est ignoré ; définissez-le sur la définition.

Lire pourquoi une exécution s’est arrêtée

Une exécution arrêtée est un retour normal, pas une erreur. Vérifiez que le statut de l’exécution est stopped, lisez sa raison d’arrêt, puis lisez l’utilisation et la dernière étape. Décidez dans votre application quelles raisons comptent comme un succès, justifient une nouvelle tentative ou méritent d’être montrées à l’utilisateur.

Écrire une condition personnalisée

Une condition personnalisée reçoit l’état de l’exécution et renvoie une raison d’arrêt, ou une valeur « non » pour continuer. Renvoyez une chaîne de raison quand les opérateurs ou votre interface doivent expliquer pourquoi une exécution s’est terminée ; elle est enregistrée comme raison d’arrêt.
Dernière modification le 5 novembre 2026