Utiliser l’orchestration séquentielle

Effectué

Dans l’orchestration séquentielle, les agents sont organisés dans un pipeline où chaque agent traite la tâche l’une après l’autre. La sortie d’un agent devient l’entrée pour le suivant. Ce modèle est idéal pour les flux de travail où chaque étape dépend de la précédente, comme la révision de document, les pipelines de transformation de données ou le raisonnement à plusieurs étapes.

Diagramme montrant l’orchestration séquentielle où les agents traitent les tâches dans un ordre de pipeline défini. Flux de sortie d’un agent à l’autre.

L’orchestration séquentielle fonctionne le mieux pour les tâches qui doivent être effectuées pas à pas, chaque étape améliorant la dernière. L’ordre dans lequel les agents s’exécutent est fixe et décidé au préalable, et les agents ne décident pas ce qui se passe ensuite.

Quand utiliser l’orchestration séquentielle

Envisagez d’utiliser le modèle d’orchestration séquentiel lorsque votre flux de travail a :

  • Les processus constitués de plusieurs étapes qui doivent se produire dans un ordre spécifique, où chaque étape s’appuie sur celle qui l’précède.
  • Flux de travail de données où chaque étape ajoute quelque chose d’important que la phase suivante doit fonctionner correctement.
  • Tâches où les phases ne peuvent pas être effectuées en même temps et doivent s’exécuter l’une après l’autre.
  • Les situations qui nécessitent des améliorations progressives, telles que la rédaction, l’examen et le perfectionnement du contenu.
  • Systèmes dans lesquels vous savez comment chaque agent effectue et peut gérer des retards ou des défaillances dans n’importe quelle étape sans arrêter l’ensemble du processus.

Quand éviter l’orchestration séquentielle

Évitez ce modèle quand :

  • Les étapes peuvent être exécutées indépendamment et en parallèle sans affecter la qualité.
  • Un seul agent peut effectuer efficacement l’ensemble de la tâche.
  • Les premières étapes peuvent échouer ou produire une sortie médiocre, et il n’existe aucun moyen d’arrêter ou de corriger le traitement en aval en fonction des erreurs.
  • Les agents doivent collaborer de manière dynamique plutôt que de se passer le travail de manière séquentielle.
  • Le flux de travail nécessite une itération, un retour arrière ou un routage dynamique en fonction des résultats intermédiaires.

Implémenter une orchestration séquentielle

Implémentez le modèle d’orchestration séquentielle avec le Kit de développement logiciel (SDK) Microsoft Agent Framework :

  1. Créer votre client de conversation
    Configurez un client de conversation (par exemple AzureOpenAIChatClient) avec les informations d’identification appropriées pour vous connecter à votre fournisseur de services IA.

  2. Définir vos agents
    Créez des instances d’agent à l’aide de la méthode create_agent du client de chat. Chaque agent doit avoir des instructions spécifiques et un nom qui définit son rôle et son domaine d’expertise dans le pipeline.

  3. Générer le flux de travail séquentiel
    Utilisez la SequentialBuilder classe pour créer un flux de travail qui exécute les agents l’un après l’autre. Ajoutez vos instances d’agent en tant que participants à l’aide de la participants() méthode, puis appelez build() pour créer le flux de travail.

  4. Exécuter le flux de travail
    Appelez la méthode du workflow run_stream avec la tâche ou l’entrée sur laquelle vous souhaitez que les agents travaillent. Le flux de travail traite la tâche par le biais de tous les agents de manière séquentielle, avec la sortie de chaque agent devenant l’entrée pour la suivante.

  5. Traiter les événements de flux de travail
    Itérer dans les événements de workflow à l’aide d’une boucle asynchrone. WorkflowOutputEvent Recherchez des instances qui contiennent les résultats du traitement séquentiel.

  6. Extraire la conversation finale
    Collectez la conversation finale à partir des sorties du flux de travail. Le résultat contient l’historique complet des conversations montrant comment chaque agent de la séquence a contribué au résultat final.

L’orchestration séquentielle est idéale lorsque votre tâche nécessite des étapes claires et ordonnées dans lesquelles chaque agent s’appuie sur la sortie précédente. Ce modèle permet d’améliorer la qualité des sorties par le biais de l’affinement pas à pas et garantit des flux de travail prévisibles. Lorsqu’il est appliqué de manière réfléchie avec le Kit de développement logiciel (SDK) Microsoft Agent Framework, il permet de puissants pipelines multi-agents pour des tâches complexes telles que la création de contenu, le traitement des données et bien plus encore.