Outils de l’agent IA
Important
Cette fonctionnalité est disponible en préversion publique.
Cet article fournit une vue d’ensemble de la création d’outils d’agent IA à l’aide de Mosaic AI Agent Framework.
Les outils d’agent IA permettent aux agents d’effectuer des tâches au-delà de la génération de langage, telles que la récupération de données structurées ou non structurées et l’exécution de code personnalisé.
Pour une présentation des agents IA, consultez Qu’est-ce que les systèmes IA composés et les agents IA ?.
utils de fonction de Unity Catalog contre outils de code de l’agent
Pour créer un outil avec Mosaïque AI Agent Framework, vous pouvez utiliser n’importe quelle combinaison des méthodes suivantes :
Méthode | Description |
---|---|
Fonctions de Unity Catalog | - Défini et géré dans le catalogue Unity avec des fonctionnalités de sécurité et de conformité intégrées - Accorde une détectabilité, une gouvernance et une réutilisation plus faciles - Idéal pour appliquer des transformations et des agrégations sur des jeux de données volumineux |
Outils de code de l’agent | - Défini dans le code de l’agent IA - Utile pour appeler des API REST, à l’aide d’un code arbitraire ou à l’exécution d’outils à faible latence - Manque de gouvernance intégrée et de détectabilité des fonctions |
Les deux méthodes sont compatibles avec les agents Python personnalisés ou les bibliothèques de création d’agents comme LangGraph.
Créer des outils d’agent IA
Découvrez comment créer des outils d’agent IA qui permettent à vos agents d’exécuter du code Python personnalisé. Voir Créer des outils d’agent IA personnalisés avec des fonctions Unity Catalog.
Exemples d’outils pour l’agent
Pour découvrir des exemples d’outils pour les agents, consultez les articles suivants :
- Les outils de récupération de données structurées permettent à votre agent de consulter des sources de données structurées telles que des tables SQL.
- Les outils de récupération de données non structurées permettent à votre agent d’interroger des sources de données non structurées telles qu’un corpus de texte pour effectuer une génération augmentée par récupération.
- Outils de connexion externes connectent des outils d’agent aux services et aux API externes.
Ajouter des outils de catalogue Unity aux agents
Contrairement aux outils de code de l’agent, qui sont définis dans le code de l’agent, les outils catalogue Unity doivent être ajoutés explicitement aux agents pour les rendre disponibles à des fins d’utilisation.
Databricks recommande d’utiliser UCFunctionToolkit
pour intégrer des outils de catalogue Unity avec des frameworks de création d’agents et des kits sdk. Consultez Créer des outils d’agent IA personnalisés à l’aide des fonctions de Unity Catalog.
Vous pouvez également utiliser ai Playground pour ajouter rapidement des outils de catalogue Unity aux agents pour prototyper le comportement. Consultez Prototype d’agent d’appel d’outil dans AI Playground.
Améliorer l’appel d’outils grâce à une documentation claire
Les outils bien documentés aident les agents IA à comprendre quand et comment utiliser efficacement des outils. Suivez ces bonnes pratiques lors de la documentation des paramètres de l’outil et des valeurs de retour :
- Pour les fonctions catalogue Unity, utilisez
COMMENT
pour décrire les fonctionnalités et les paramètres de l’outil. - Définissez clairement les entrées et sorties attendues.
- Fournissez des descriptions significatives pour améliorer l’utilisation.
Exemple : Documentation efficace de l’outil
L’exemple suivant montre des chaînes de COMMENT
effectives pour un outil de fonction Catalogue Unity qui interroge une table structurée.
CREATE OR REPLACE FUNCTION main.default.lookup_customer_info(
customer_name STRING COMMENT 'Name of the customer whose info to look up.'
)
RETURNS STRING
COMMENT 'Returns metadata about a specific customer including their email and ID.'
RETURN SELECT CONCAT(
'Customer ID: ', customer_id, ', ',
'Customer Email: ', customer_email
)
FROM main.default.customer_data
WHERE customer_name = customer_name
LIMIT 1;
Exemple : Documentation sur les outils inefficaces
L’exemple suivant ne contient pas de détails importants, ce qui complique l’utilisation efficace de l’outil par l’agent IA :
CREATE OR REPLACE FUNCTION main.default.lookup_customer_info(
customer_name STRING COMMENT 'Name of the customer.'
)
RETURNS STRING
COMMENT 'Returns info about a customer.'
RETURN SELECT CONCAT(
'Customer ID: ', customer_id, ', ',
'Customer Email: ', customer_email
)
FROM main.default.customer_data
WHERE customer_name = customer_name
LIMIT 1;