Créer une solution d’automatisation de flux de travail à plusieurs agents à l’aide de Microsoft Agent Framework

Azure Container Apps
Azure AI Search
Foundry Tools
Azure Cosmos DB
Microsoft Foundry
Noyau sémantique

Idées de solution

Cet article présente une idée de solution. Votre architecte cloud peut s’appuyer sur ces conseils pour visualiser les principaux composants d’une implémentation typique de cette architecture. Utilisez cet article comme point de départ pour concevoir une solution bien conçue qui répond aux exigences spécifiques de votre charge de travail.

Cette architecture décrit un système d’automatisation des processus qui utilise plusieurs agents IA spécialisés pour coordonner et exécuter automatiquement des tâches organisationnelles.

Plusieurs agents IA collaborent via un orchestrateur d’API central pour créer des pipelines d’automatisation scalables. Les logiciels personnalisés qui utilisent Microsoft Agent Framework définissent le comportement de l’agent et de l’orchestration, et vous déployez les agents dans Azure Container Apps où ils utilisent Foundry Tools.

Cet article se concentre sur l’infrastructure et les aspects DevOps de la gestion de systèmes multi-agents sur Azure. Il couvre l’intégration continue, la persistance des données, la coordination des agents et les processus de déploiement automatisé pour l’automatisation des tâches de niveau entreprise.

Architecture

Diagramme montrant une architecture classique à plusieurs agents.

Téléchargez un fichier Visio de cette architecture.

Workflow

Le workflow suivant correspond au diagramme précédent :

  1. Les employés accèdent au serveur frontal web pour demander et gérer des solutions automatisées. Ils envoient des tâches qui ont des exigences et des paramètres spécifiques via l’interface web.

  2. Le site web Azure App Service reçoit la demande de l’utilisateur à partir du serveur frontal et appelle une API hébergée dans Container Apps. L’API traite la tâche entrante et détermine les agents d’IA spécialisés à utiliser. L’API sépare la tâche en composants pour la coordination de plusieurs agents.

  3. L’API Container Apps se connecte à un modèle GPT-4o hébergé par Microsoft Foundry. L’API orchestre plusieurs agents IA spécialisés pour gérer différents aspects de la tâche. Les agents collaborent pour planifier, exécuter et valider les tâches requises.

  4. Azure Cosmos DB stocke toutes les données relatives aux plans et solutions actuels et passés. Il gère les données et les modèles de tâche historiques à des fins d’apprentissage et d’optimisation. Il conserve également les décisions et les résultats de l’agent pour les références futures.

  5. Azure Container Registry gère des images pour le site web frontal et l’API back-end. Ce registre gère également les images de conteneurs versionnées pour les capacités de retour arrière.

  6. Le référentiel source GitHub déclenche des compilations automatiques des images du site web et du serveur d’API lors des mises à jour du code. Docker génère et déploie ensuite les images conteneur mises à jour dans le Registre.

Components

  • App Service est une solution PaaS (Platform as a Service) qui fournit un environnement d’hébergement web évolutif pour les applications. Dans cette architecture, le site web App Service sert d’interface frontale pour que les utilisateurs demandent et gèrent des solutions automatisées. Il offre une expérience web réactive pour envoyer des tâches et suivre leur progression.

  • Container Apps est une plateforme de conteneur serverless qui vous permet d’exécuter des microservices et des applications conteneurisées sur une plateforme serverless. Dans cette architecture, l’API Container Apps sert de couche d’orchestration centrale qui traite les demandes des utilisateurs, coordonne plusieurs agents IA et gère l’état d’achèvement des tâches. Il héberge le code personnalisé que votre équipe logicielle développe à l’aide d’Agent Framework.

  • Foundry est une offre PaaS Azure unifiée pour les opérations IA d’entreprise, les générateurs de modèles et le développement d’applications. Il combine l’infrastructure de niveau production avec des interfaces conviviales pour les développeurs, ce qui permet aux développeurs de se concentrer sur la création d’applications plutôt que sur la gestion de l’infrastructure. Dans cette architecture, Foundry fournit la base du déploiement et de la gestion des modèles IA dans une interface de conversation et sert de passerelle aux outils Foundry connectés, comme le service De l’agent Foundry.

    Le service De l’agent Foundry est un service d’exécution managé qui connecte les éléments principaux de Foundry, tels que les modèles, les outils et les frameworks, dans un seul runtime agentique. Il gère les conversations, orchestre les appels d’outils, applique la sécurité du contenu et s’intègre aux systèmes d’identité, de mise en réseau et d’observabilité. Dans cette architecture, l’application appelle Foundry Agent Service pour alimenter les conversations de l’agent.

  • Azure Cosmos DB est un service de base de données multimodèle distribué à l’échelle mondiale qui offre une faible latence et une scalabilité élastique. Dans cette architecture, Azure Cosmos DB stocke toutes les données liées aux plans et solutions d’automatisation actuels et passés. L’API Container Apps écrit des données lorsqu’elle crée de nouveaux plans ou exécute des tâches. L’API lit les données lorsque les utilisateurs accèdent à leur historique d’automatisation via le site web App Service.

  • Container Registry est un service de Registre Docker géré qui stocke et gère les images conteneur. Dans cette architecture, Container Registry gère des images pour le site web frontal et l’API back-end. Cette configuration garantit un déploiement et un contrôle de version cohérents des composants système à plusieurs agents dans les environnements.

Alternatives

Cette architecture inclut un composant que vous pouvez remplacer par un autre service ou approche Azure, en fonction des exigences fonctionnelles et non fonctionnelles de votre charge de travail. Considérez l’alternative et les compromis suivants.

Orchestration de l’agent

Approche actuelle : Cette solution utilise du code d’agent personnalisé, écrit avec le Kit de développement logiciel (SDK) Agent Framework, pour orchestrer les agents et leurs interactions. Container Apps sert de plateforme d'orchestration centrale qui exécute le code. Le code coordonne les plusieurs agents IA qui opèrent sur des flux de travail actifs. Cette solution code-first offre un contrôle maximal sur le comportement de l’agent, la logique d’orchestration et la mise à l’échelle du calcul.

Autre approche : Utilisez le service De l’agent Foundry pour définir des agents et les connecter individuellement à des magasins de connaissances et outils pertinents. Dans cette solution sans code, vous définissez le comportement de l’agent et les relations de l’agent via une invite système. Le service de l'agent Foundry héberge et gère les agents, donc vous ne contrôlez pas l'infrastructure de calcul qui exécute les agents.

Considérez cette alternative si votre charge de travail présente les caractéristiques suivantes :

  • Vous n'avez pas besoin de coordination d'agents déterministes. Vous pouvez définir suffisamment le comportement de l’agent, y compris l’accès à la base de connaissances et l’utilisation de l’outil, via une invite système.

  • Vous n’avez pas besoin d’un contrôle total du calcul de vos agents.

  • Vous avez uniquement besoin d’outils accessibles via HTTPS, et le service de l’agent Foundry prend en charge vos bases de connaissances.

Si votre organisation a des exigences mixtes, vous pouvez utiliser une approche hybride. Utilisez foundry Agent Service pour les flux de travail standard et Container Apps pour les processus critiques ou hautement personnalisés qui nécessitent davantage de contrôle.

Détails du scénario

Ce moteur d’automatisation multi-agent personnalisé répond au défi de coordonner des processus métier complexes et inter-services qui nécessitent traditionnellement une supervision et une coordination manuelles importantes. Les organisations luttent souvent avec des tâches qui couvrent plusieurs domaines d’expertise, demandent des performances cohérentes entre les équipes et nécessitent des pistes d’audit pour prendre en charge la conformité.

Cette solution utilise des agents IA personnalisés codés et spécialisés qui collaborent pour diviser des tâches organisationnelles complexes en composants gérables. Chaque agent applique ses connaissances et fonctionnalités spécifiques. Le système gère des flux de travail sophistiqués qui nécessitent autrement une coordination humaine entre plusieurs services. L’architecture est mise à l’échelle par le biais d’un déploiement conteneurisé, préserve l’apprentissage via le stockage de données persistant et prend en charge l’amélioration continue grâce aux pipelines d’intégration et de livraison automatisés.

Vous pouvez également appliquer cette architecture à la modernisation du code et à la migration de système héritée, qui incluent des défis tels que la complexité technique et les exigences de continuité d’activité. Les systèmes hérités manquent souvent de documentation appropriée, utilisent des langages de programmation obsolètes et contiennent une logique métier critique que vous devez conserver. L’approche multi-agent coordonne l’expertise spécialisée dans la traduction technique, l’analyse métier, l’assurance qualité et la génération de documentation.

Cas d’usage potentiels

Tenez compte des cas d’usage potentiels suivants pour l’automatisation de flux de travail à plusieurs agents.

Modernisation et migration du code

  • Traduction de requête SQL héritée : Coordonnez plusieurs agents spécialisés pour traduire des requêtes SQL dans différents dialectes de base de données tout en préservant la logique métier et les caractéristiques de performances.

    • Un agent d’analyse SQL identifie les constructions spécifiques au dialecte.

    • Un agent de traduction convertit la syntaxe en plateforme cible.

    • Un agent de validation teste l’équivalence des requêtes.

    • Un agent de documentation génère des notes de migration.

    Cette approche répond au défi courant de la maintenance de l’équivalence fonctionnelle lorsque vous migrez à partir de plateformes telles qu’Oracle vers Azure SQL Database ou Azure Database pour PostgreSQL.

  • Modernisation des applications héritées : Orchestrez des agents spécialisés dans l’analyse du code, l’extraction de logique métier, l’évaluation de l’architecture et la planification de la modernisation. Les agents collaborent pour analyser les bases de code héritées, extraire des règles métier incorporées, évaluer la dette technique, générer des feuilles de route de modernisation et créer une documentation qui capture les connaissances institutionnelles souvent perdues pendant les transitions.

  • Migration du schéma de base de données : Agents de coordonnées pour l’analyse de schéma, le mappage de type de données, la traduction de contraintes et les tests de validation. Le système à plusieurs agents traduit avec précision les structures de base de données complexes, les relations et les règles d’entreprise tout en conservant l’intégrité des données et les exigences de performances.

Automatisation des processus d’entreprise

  • Orchestration de l’intégration des employés : Coordonnez l’approvisionnement informatique, la documentation des ressources humaines, l’accès aux installations, les planifications de formation et les exigences de conformité dans plusieurs services.

  • Flux de travail de gestion des contrats : Automatisez l’examen juridique, l’approbation de l’approvisionnement, l’analyse financière et la communication des fournisseurs pour les contrats métier complexes.

  • Coordination des réponses aux incidents : Orchestrez la correction technique, la communication des parties prenantes, la documentation et l’analyse post-incident dans les équipes informatiques, de sécurité et d’entreprise.

Services financiers et conformité

  • Automatisation de la conformité réglementaire : Coordonnez simultanément la collecte, l’analyse, la création de rapports et la soumission de données dans plusieurs frameworks réglementaires.

  • Pipeline de traitement des prêts : Automatisez l’analyse de crédit, l’évaluation des risques, la révision de la documentation et les flux de travail d’approbation qui incluent plusieurs équipes spécialisées.

  • Gestion de la préparation de l’audit : Coordonnez la collecte de preuves, la préparation de la documentation, les entrevues des parties prenantes et la vérification de conformité entre les unités commerciales.

Soins de santé et recherche

  • Gestion des essais cliniques : Orchestrez le recrutement des patients, la conformité réglementaire, la collecte de données, la surveillance de la sécurité et la création de rapports entre les équipes de recherche.

  • Coordination des soins des patients : Automatisez la planification, la planification du traitement, la vérification de l’assurance et la communication de l’équipe de soins pour les cas médicaux complexes.

  • Approvisionnement en matériel médical : Coordonner les exigences cliniques, les spécifications techniques, l’évaluation des fournisseurs et les processus d’approbation réglementaire.

Fabrication et chaîne d’approvisionnement

  • Coordination du lancement du produit : Orchestrez la finalisation de la conception, l’installation de la fabrication, l’assurance qualité, la préparation marketing et la planification de la distribution.

  • Processus d’intégration des fournisseurs : Automatisez les évaluations de qualification, les négociations de contrat, les intégrations système et la configuration de la supervision des performances.

  • Gestion des incidents de qualité : Coordonnez l’examen, l’analyse de la cause racine, les actions correctives et la communication des fournisseurs pour des problèmes de qualité.

Modèles d’orchestration à plusieurs agents

Lorsque vous concevez des systèmes d’automatisation à plusieurs agents, tenez compte de la façon dont les agents doivent se coordonner pour accomplir des workflows complexes. Cette architecture utilise un orchestrateur personnalisé qui gère les interactions de l’agent, mais les modèles de coordination que vous choisissez affectent considérablement les performances et la fiabilité du système.

Les modèles séquentiels correspondent à des tâches dépendantes telles que les flux de travail d’approbation de document. Les modèles simultanés correspondent à des opérations indépendantes telles que la collecte de données à partir de plusieurs sources. Les modèles de conversation de groupe permettent de résoudre les problèmes collaboratifs. Les modèles de transfert permettent aux agents spécialisés de gérer différentes phases de flux de travail. Pour plus d’informations sur l’implémentation de ces stratégies de coordination, consultez les modèles d’orchestration de l’agent IA. Cet article fournit des modèles architecturaux et des considérations d’implémentation pour différents scénarios de plusieurs agents.

Considérations

Ces considérations implémentent les piliers d’Azure Well-Architected Framework, un ensemble de principes directeurs que vous pouvez utiliser pour améliorer la qualité d’une charge de travail. Pour plus d’informations, consultez Well-Architected Framework.

Optimisation des coûts

L’optimisation des coûts se concentre sur les moyens de réduire les dépenses inutiles et d’améliorer l’efficacité opérationnelle. Pour plus d'informations, consultez Liste de contrôle de la révision de la conception pour l'optimisation des coûts.

Pour plus d’informations sur les coûts d’exécution de ce scénario, consultez l’estimation préconfigurée dans la calculatrice de prix Azure.

La tarification varie selon la région et l’utilisation. Vous ne pouvez donc pas prédire les coûts exacts à l’avance. La plupart des ressources Azure de cette infrastructure suivent les modèles tarifaires basés sur l’utilisation. Mais Container Registry entraîne un coût fixe quotidien pour chaque registre.

Déployer ce scénario

Pour déployer une implémentation de cette architecture, suivez les étapes du dépôt GitHub.

Implémentation de la modernisation du code

Pour une implémentation spécifique des flux de travail à plusieurs agents qui effectuent la modernisation des requêtes SQL, consultez Moderniser votre implémentation de code. Cette implémentation montre comment plusieurs agents IA coordonnent pour traduire des requêtes SQL entre différents dialectes de base de données. Il génère également des rapports de documentation et de validation tout au long du processus.

Contributors

Microsoft gère cet article. Les contributeurs suivants ont écrit cet article.

Auteur principal :

Autres contributeurs :

Pour afficher les profils LinkedIn non publics, connectez-vous à LinkedIn.

Étapes suivantes