Publié le

Mise à jour de l'agent IA open source de Microsoft AutoGen 0.4

Auteurs
  • avatar
    Nom
    Ajax
    Twitter

Points forts de la version 0.4 d'AutoGen

Microsoft a présenté une mise à jour significative de son framework d'agents IA open source, AutoGen, avec la sortie de la version 0.4. Cette bibliothèque remaniée offre une stabilité du code améliorée, une robustesse, une polyvalence et une évolutivité, permettant aux développeurs de créer des applications d'agents IA de pointe et avancées.

  • Messagerie asynchrone : Les agents communiquent désormais à l'aide de la messagerie asynchrone, ce qui leur permet de poursuivre des tâches sans attendre les réponses des autres agents. Ceci est particulièrement avantageux pour les applications axées sur les événements où les agents réagissent à des déclencheurs spécifiques. Le modèle traditionnel requête/réponse est également pris en charge.
  • Modularité et extensibilité : Les utilisateurs peuvent combiner des agents, des outils, de la mémoire et des modèles personnalisés pour construire des systèmes d'agents adaptés à des besoins commerciaux spécifiques. Cela implique l'enregistrement de différents types d'agents et d'outils pour atteindre des objectifs d'automatisation spécifiques.
  • Observabilité et débogage : Les outils intégrés de suivi des métriques, de traçage des messages et de débogage permettent de surveiller et de contrôler les interactions et les flux de travail des agents. Chaque étape du flux de travail d'un agent, y compris les appels de grands modèles, l'utilisation d'outils, les sorties intermédiaires, les états de la mémoire et les modèles d'invites, peut être clairement enregistrée. Ceci est essentiel pour les secteurs exigeant un suivi précis des opérations des agents, tels que la santé, le droit et la finance.
  • Évolutivité et distribution : Des réseaux d'agents distribués complexes peuvent être conçus pour fonctionner de manière transparente au-delà des frontières organisationnelles. Une architecture distribuée facilite le déploiement d'agents sur divers serveurs ou plateformes cloud, optimisant l'allocation et l'utilisation des ressources.
  • Extensions intégrées et communautaires : La fonctionnalité du framework est améliorée par des extensions proposant des clients de modèles avancés, des agents, des équipes multi-agents et des outils de flux de travail d'agents. Le support de la communauté permet aux développeurs de gérer leurs propres extensions, en créant et en partageant des agents ou des outils personnalisés. Les développeurs peuvent utiliser ces extensions pour des besoins courants, ce qui réduit la complexité et les obstacles au développement.
  • Prise en charge multilingue : AutoGen prend désormais en charge l'interopérabilité entre les agents écrits dans différents langages de programmation, tels que Python et .NET. Cette fonctionnalité élargit le champ d'application d'AutoGen et supprime les obstacles liés aux différences de langage.

Au-delà de ces nouvelles fonctionnalités, Microsoft a restructuré la base d'AutoGen, qui englobe le noyau, le chat d'agent et les extensions. Le noyau sert de base au système d'agents axé sur les événements. Le chat d'agent, construit sur le noyau, propose des API avancées pour la gestion des tâches, les chats de groupe, l'exécution de code et les agents préconstruits. Les extensions facilitent les intégrations tierces avec des services tels que les exécuteurs de code Azure et les modèles OpenAI.

Améliorations de l'interface utilisateur

L'interface utilisateur a également subi des améliorations significatives :

  • Rétroaction interactive via l'interface utilisateur, permettant aux agents utilisateurs de fournir une entrée et des conseils en temps réel pendant les opérations d'équipe.
  • Visualisation du flux de messages, présentant une interface intuitive pour comprendre les communications de l'agent, en cartographiant les chemins de messages et les dépendances.
  • Interface visuelle de glisser-déposer, qui permet aux utilisateurs de concevoir des agents en plaçant et en configurant des composants avec leurs relations et leurs propriétés.

Intégration avec Magentic-One

Magentic-One, un autre agent IA général multi-niveaux open source de Microsoft, est désormais intégré à AutoGen. Magentic-One possède une architecture multicouche composée de cinq agents IA : Orchestrator, WebSurfer, FileSurfer, Coder et ComputerTerminal. Chaque agent spécialisé possède son propre ensemble de compétences et sa propre base de connaissances, ce qui lui permet de travailler efficacement dans son domaine respectif. Cependant, ces agents ne travaillent pas de manière isolée ; l'Orchestrator coordonne leurs activités pour s'assurer qu'elles sont cohérentes et qu'elles atteignent les objectifs globaux.

L'Orchestrator est responsable de la planification des tâches, du suivi des progrès et de la récupération des erreurs. Dès réception d'une tâche, il analyse minutieusement les exigences et affecte des sous-tâches aux quatre autres agents. Ces agents spécialisés sont aptes à traiter des types de tâches spécifiques. L'agent WebBrowser gère la navigation Web, l'agent FileNavigator gère la navigation locale dans le système de fichiers, l'agent CodeWriter écrit et exécute des extraits de code Python, et ComputerTerminal exécute des commandes au niveau du système d'exploitation pour prendre en charge des tâches de niveau supérieur.

Une caractéristique essentielle de l'architecture de Magentic-One est le fonctionnement asynchrone axé sur les événements. Contrairement au modèle synchrone requête-réponse, les méthodes asynchrones permettent aux composants du système de fonctionner simultanément, en recevant de nouvelles entrées ou en déclenchant des actions à tout moment sans interrompre les autres fonctions. Par exemple, l'agent WebBrowser peut commencer à charger une page lorsque l'Orchestrator lui confie une tâche consistant à télécharger et à extraire des informations d'une page Web, tandis que l'Orchestrator et d'autres agents poursuivent d'autres tâches. Une fois la page chargée et les données requises extraites, l'agent WebBrowser en informe l'Orchestrator et renvoie les résultats. Cette stratégie permet à Magentic-One de gérer les ressources plus efficacement, de réduire les temps d'attente et de répondre plus efficacement aux scénarios de concurrence élevée.

En plus de son architecture asynchrone, Magentic-One se distingue par sa conception hautement modulaire. Chaque agent est une unité fonctionnelle indépendante avec des responsabilités et des définitions d'interface claires. Cette approche simplifie la construction du système, car les développeurs peuvent se concentrer sur la fonction d'un seul agent sans se soucier des détails d'interaction avec les autres composants. La modularité favorise également la réutilisation du code et le partage technique, permettant d'utiliser des agents existants dans de nouveaux projets ou de les adapter à différentes applications avec un minimum de modifications. La conception modulaire de Magentic-One offre également une évolutivité significative. De nouveaux agents peuvent être ajoutés ou les fonctions des agents existants peuvent être mises à jour sans remaniements majeurs du système, à mesure que la technologie progresse ou que les exigences commerciales changent. Par exemple, si une tâche dans un domaine spécifique devient plus complexe, le système peut être amélioré en ajoutant un agent spécialisé.