Ajouter des outils à l’agent Azure AI
Dans Microsoft Agent Framework, les outils permettent à votre agent IA d’utiliser des API et des services existants pour effectuer des tâches qu’il n’a pas pu effectuer par lui-même. Les outils fonctionnent via l’appel de fonctions, ce qui permet à l’IA de demander et d’utiliser automatiquement des fonctions spécifiques. L’infrastructure achemine la requête vers la fonction appropriée dans votre codebase et retourne les résultats au modèle de langage volumineux (LLM) afin qu’il puisse générer une réponse finale.
Pour activer l’appel automatique de fonction, les outils doivent fournir des détails qui décrivent leur fonctionnement. L’entrée, la sortie et l’objectif de la fonction doivent être décrits de manière à ce que l’IA puisse comprendre, sinon, l’IA ne peut pas appeler la fonction correctement.
Comment utiliser des outils avec Microsoft Foundry Agent
Microsoft Agent Framework prend en charge les outils de fonction personnalisés et les outils intégrés prêts à l’emploi.
Outils intégrés
Les agents Microsoft Foundry sont fournis avec plusieurs outils intégrés que vous pouvez utiliser immédiatement :
- Interpréteur de code : exécute du code Python pour les calculs, l’analyse des données et bien plus encore
- Recherche de fichiers : recherche et analyse des documents
- Recherche web : récupère des informations à partir d’Internet
Ces outils sont automatiquement disponibles et ne nécessitent aucune configuration supplémentaire.
Outils de fonction personnalisés
Lorsque vous créez des outils personnalisés pour votre Agent Microsoft Foundry, vous devez comprendre plusieurs concepts clés :
Utiliser le décorateur d’outils
Créez un outil de fonction personnalisé en définissant une fonction Python et en la décorant avec le
@tooldécorateur de Microsoft Agent Framework. Ce décorateur inscrit votre fonction en tant qu’outil que l’IA peut appeler. Le décorateur@toolinclut des paramètres pour fournir un nom et une description de votre outil, ainsi que pour spécifier, à l'aide deapproval_mode, si les appels d'outil nécessitent une approbation.Définition de fonction et annotations
Créez votre outil en définissant une fonction Python normale avec des annotations de type appropriées. Utilisez
AnnotatedetFieldde Pydantic pour fournir des descriptions détaillées qui aident l’IA à comprendre l’objectif de la fonction et comment utiliser ses paramètres. Plus vos annotations sont descriptives, mieux l’IA peut comprendre quand et comment appeler votre fonction.Ajout d’outils à votre agent
Transmettez vos fonctions personnalisées à ChatAgent lors de la création à l’aide du
toolsparamètre. Vous pouvez ajouter une fonction unique ou une liste de plusieurs fonctions. L’infrastructure enregistre automatiquement ces fonctions et les rend disponibles pour que l’IA appelle.Appel d’outil par le biais d’une conversation
Une fois que vos outils sont inscrits auprès de l’agent, vous n’avez pas besoin de les appeler manuellement. Au lieu de cela, posez les questions de l’agent ou attribuez-lui des tâches qui nécessiteraient naturellement la fonctionnalité de votre outil. L’IA détermine automatiquement quand appeler vos outils en fonction du contexte de conversation et des descriptions des outils que vous avez fournies.
Outils et orchestration multiples
Vous pouvez ajouter plusieurs outils à un seul agent, et l’IA choisit automatiquement l’outil à utiliser en fonction de la demande de l’utilisateur. L’infrastructure gère l’orchestration, appelant les fonctions appropriées et combinant leurs résultats pour fournir une réponse complète.
Meilleures pratiques pour le développement d’outils
- Descriptions claires : écrire des descriptions claires et détaillées pour vos fonctions et paramètres afin d’aider l’IA à comprendre leur objectif
- Annotations de type : utilisez des indicateurs de type Python appropriés pour spécifier les types d’entrée et de sortie attendus
- Gestion des erreurs : implémentez la gestion des erreurs appropriée dans vos fonctions d’outil pour gérer correctement les entrées inattendues
- Retourner des données significatives : assurez-vous que vos fonctions retournent des données que l’IA peut utiliser efficacement dans ses réponses
- Garder les fonctions axées : Concevoir chaque outil pour gérer une tâche spécifique plutôt que d’essayer d’effectuer trop de choses dans une fonction
En suivant ces concepts, vous pouvez étendre votre Agent Microsoft Foundry avec des outils intégrés et personnalisés, ce qui lui permet d’interagir avec les API et d’effectuer des tâches avancées. Cette approche rend votre IA plus puissante et capable de gérer efficacement les applications réelles.