Microsoft Agent Framework : Framework pour les systèmes multi-agents
Microsoft a introduit Agent Framework — un framework open-source pour construire des applications agentiques, y compris des architectures multi-agents. C'est une évolution de Semantic Kernel et le successeur d'AutoGen. Le framework permet de construire des graphes d'agents avec exécution parallèle et séquentielle des tâches à partir d'un pool de requêtes partagé.
Fonctionnalités clés du framework
Agent Framework est conçu pour un développement léger. Les agents s'intègrent avec des outils comme la recherche web et sont organisés en workflows. Il supporte l'orchestration par handoff : un agent passe le contrôle à un autre en fonction de conditions, restituant le contrôle une fois terminé.
Fonctionnalités clés :
- Agent Graphs : exécution séquentielle et parallèle.
- Tool Integration : AIFunctionFactory pour connecter des API externes.
- Memory and State : support de SQLite pour stocker le contexte.
- Events : émission d'événements pour surveiller les workflows.
Le framework convient aux appareils edge : des tests montrent qu'il fonctionne sur Raspberry Pi 3B avec un bot Telegram, mémoire SQLite, et cinq agents sans lags notables.
Créer un agent avec des outils
L'agent est configuré via ChatClientAgent. Exemple pour un agent chercheur avec recherche web :
var researcher = new ChatClientAgent(chatClient,
new ChatClientAgentOptions
{
Name = "Researcher",
Description = "Web search, real-time information, weather, news, and general knowledge.",
ChatOptions = new ChatOptions
{
Instructions = "Search the web for any real-time information",
Tools = [ AIFunctionFactory.Create(webSearchTools.Search),]
}
});
Ici, l'agent reçoit des instructions et des outils pour gérer les requêtes d'informations en temps réel.
Orchestration via Handoff
Pour les workflows multi-agents, AgentWorkflowBuilder est utilisé. L'agent de triage distribue les tâches, et handoff définit les transitions.
var workflow = AgentWorkflowBuilder
.CreateHandoffBuilderWith(triage)
.WithHandoffs(triage, [clerk, archivist, secretary, researcher])
.WithHandoff(researcher, triage, "Hand back to Triage when done or if the request is not about search/information.")
.WithHandoff(...)
.EmitAgentResponseEvents(true)
.Build();
Cette approche minimise la complexité : chaque agent se concentre sur son rôle, restituant le contrôle au triage pour les requêtes non pertinentes.
Application pratique
Le framework a été testé dans un scénario d'assistant IA domestique :
- Interface via bot Telegram.
- Mémoire sur SQLite pour préserver le contexte.
- Cinq agents : triage, clerk, archivist, secretary, researcher.
- Déploiement sur Raspberry Pi 3B — fonctionnement stable sans surcharge.
Cette configuration démontre l'évolutivité pour les environnements IoT et à faibles ressources.
Points clés à retenir
- Agent Framework fait évoluer Semantic Kernel en ajoutant un support natif multi-agents.
- Le mécanisme handoff simplifie l'orchestration sans code personnalisé.
- Léger : pile multi-agents complète sur appareils ARM comme Raspberry Pi.
- Open source pour personnaliser outils et workflows.
- Émission d'événements pour intégration avec systèmes d'observabilité.
— Editorial Team
Aucun commentaire pour le moment.