Microsoft Agent Framework unifie agents, outils, conversations et workflows. Comme ses API évoluent rapidement, installez la version indiquée par Microsoft Learn et vérifiez les imports dans les exemples officiels associés.
Préparer l’environnement
~~~bash python -m venv .venv source .venv/bin/activate pip install -U agent-framework ~~~
Configurez la clé du fournisseur et le modèle dans des variables d’environnement. Ne placez pas ces valeurs dans le script.
Créer un outil métier
~~~python def weather(city: str) -> str: """Retourne la météo validée pour une ville prise en charge.""" allowed = {'Paris': '18 °C, couvert', 'Lyon': '21 °C, clair'} if city not in allowed: return 'Ville non prise en charge' return allowed[city] ~~~
Un outil réel doit appeler une API serveur avec timeout et authentification. Son paramètre est typé, sa portée est étroite et il ne permet pas au modèle de choisir une URL.
Configurer l’agent
Créez le client de chat recommandé pour votre fournisseur, puis un ChatClientAgent avec un nom, des instructions et la liste des outils. Demandez une réponse simple avant d’ajouter mémoire ou workflow.
Le squelette conceptuel est : client → ChatClientAgent → run ou invocation asynchrone. Copiez la signature exacte depuis la documentation de la version installée, car les packages preview peuvent évoluer.
Vérifier l’appel d’outil
Posez « Quelle météo à Paris ? » puis inspectez la trace : arguments proposés, validation, résultat de l’outil et réponse finale. Testez aussi une ville interdite et vérifiez que l’agent ne fabrique pas une météo.
Ajouter une conversation
Utilisez l’abstraction de thread ou conversation du framework, stockée par utilisateur. Limitez sa taille et prévoyez suppression. Une conversation conserve du contexte ; elle ne remplace ni identité ni autorisation.
Production
Fixez modèle et dépendances, limitez tours et outils, ajoutez timeouts et traces. Pour une action d’écriture, exigez confirmation, autorisation côté code et idempotence.
FAQ
Pourquoi ne pas commencer par plusieurs agents ?
Un agent et un outil suffisent pour valider contrats, erreurs et observabilité. Ajoutez l’orchestration seulement si la tâche l’exige.
Le framework choisit-il automatiquement les droits ?
Non. L’application reste responsable des autorisations.