Sélectionner vos préférences de cookies

Nous utilisons des cookies essentiels et des outils similaires qui sont nécessaires au fonctionnement de notre site et à la fourniture de nos services. Nous utilisons des cookies de performance pour collecter des statistiques anonymes afin de comprendre comment les clients utilisent notre site et d’apporter des améliorations. Les cookies essentiels ne peuvent pas être désactivés, mais vous pouvez cliquer sur « Personnaliser » ou « Refuser » pour refuser les cookies de performance.

Si vous êtes d’accord, AWS et les tiers approuvés utiliseront également des cookies pour fournir des fonctionnalités utiles au site, mémoriser vos préférences et afficher du contenu pertinent, y compris des publicités pertinentes. Pour accepter ou refuser tous les cookies non essentiels, cliquez sur « Accepter » ou « Refuser ». Pour effectuer des choix plus détaillés, cliquez sur « Personnaliser ».

Utilisation de l'outil (appel de fonctions) avec Amazon Nova

Mode de mise au point
Utilisation de l'outil (appel de fonctions) avec Amazon Nova - Amazon Nova

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Les outils permettent de fournir des fonctionnalités externes à Amazon Nova, telles qu'un appel d'API ou une fonction de code. Cette section explique comment définir et intégrer des outils lorsque vous travaillez avec des modèles Amazon Nova.

L'utilisation de l'outil implique trois étapes de haut niveau :

  • Requête utilisateur : vous définissez les outils qu'Amazon Nova peut utiliser en fournissant un schéma JSON qui décrit les fonctionnalités et les exigences de saisie de chaque outil.

  • Sélection de l'outil : lorsqu'un utilisateur envoie un message, Amazon Nova l'analyse afin de déterminer si un outil est nécessaire pour générer une réponse. C'est ce que l'on appelle le choix de Auto l'outil. Pour plus d'informations, reportez-vous à la section Choix d'un outil. Si Amazon Nova identifie un outil approprié, il « appelle l'outil » et renvoie le nom de l'outil et les paramètres à utiliser.

    En tant que développeur, vous êtes responsable de l'exécution de l'outil en fonction de la demande du modèle. Cela signifie que vous devez écrire le code qui invoque les fonctionnalités de l'outil et traite les paramètres d'entrée fournis par le modèle.

    Note

    Comme toutes les réponses LLM, il est possible qu'Amazon Nova hallucine un appel à un outil. Il est de votre responsabilité, en tant que développeur, de vérifier que l'outil existe, que les entrées sont correctement formatées et que les autorisations appropriées sont déjà en place.

  • Retourner les résultats : après avoir exécuté l'outil, vous devez renvoyer les résultats à Amazon Nova dans un format structuré. Les formats valides incluent le JSON ou une combinaison de texte et d'images. Cela permet à Amazon Nova d'intégrer le résultat de l'outil dans la réponse finale à l'utilisateur.

    Si des erreurs se produisent lors de l'exécution de l'outil, vous pouvez le signaler dans la réponse de l'outil à Amazon Nova, ce qui permet à Amazon Nova d'ajuster sa réponse en conséquence.

Prenons un exemple simple d'outil de calcul :

User query

La première étape du processus d'appel d'outils consiste à demander à l'utilisateur Amazon Nova le résultat d'une équation mathématique (10 fois 5). Cette requête est envoyée sous forme d'invite à Amazon Nova avec une spécification d'outil représentant le calculateur.

user_query = "10*5" messages = [{ "role": "user", "content": [{"text": user_query}] }] tool_config = { "tools": [ { "toolSpec": { "name": "calculator", # Name of the tool "description": "A calculator tool that can execute a math equation", # Concise description of the tool "inputSchema": { "json": { "type": "object", "properties": { "equation": { # The name of the parameter "type": "string", # parameter type: string/int/etc "description": "The full equation to evaluate" # Helpful description of the parameter } }, "required": [ # List of all required parameters "equation" ] } } } } ] }
Tool selection

Amazon Nova utilise le contexte de l'outil ainsi que l'invite de l'utilisateur pour déterminer l'outil à utiliser et la configuration requise. Cela est renvoyé dans le cadre de la réponse de l'API.

{ "toolUse": { "toolUseId": "tooluse_u7XTryCSReawd9lXwljzHQ", "name": "calculator", "input": { "equation": "10*5" } } }

L'application est chargée d'exécuter l'outil et de stocker le résultat.

def calculator(equation: str): return eval(equation) tool_result = calculator("10*5")
Return results

Pour renvoyer le résultat de l'outil à Amazon Nova, celui-ci est inclus dans une nouvelle demande d'API. Notez que l'identifiant d'utilisation de l'outil est identique à celui renvoyé par Amazon Nova dans la réponse précédente.

{ "toolResult": { "toolUseId": "tooluse_u7XTryCSReawd9lXwljzHQ", "content": [ { "json": { "result": "50" } } ], "status": "success" } }
  • Amazon Nova utilisera le contexte complet des messages, y compris la requête initiale de l'utilisateur, l'utilisation de l'outil et le résultat de l'outil pour déterminer la réponse finale à l'utilisateur. Dans ce cas, Amazon Nova répondra à l'utilisateur que « 10 fois 5 font 50 ».

La première étape du processus d'appel d'outils consiste à demander à l'utilisateur Amazon Nova le résultat d'une équation mathématique (10 fois 5). Cette requête est envoyée sous forme d'invite à Amazon Nova avec une spécification d'outil représentant le calculateur.

user_query = "10*5" messages = [{ "role": "user", "content": [{"text": user_query}] }] tool_config = { "tools": [ { "toolSpec": { "name": "calculator", # Name of the tool "description": "A calculator tool that can execute a math equation", # Concise description of the tool "inputSchema": { "json": { "type": "object", "properties": { "equation": { # The name of the parameter "type": "string", # parameter type: string/int/etc "description": "The full equation to evaluate" # Helpful description of the parameter } }, "required": [ # List of all required parameters "equation" ] } } } } ] }

Amazon Nova autorise l'utilisation d'outils à la fois dans les API Invoke et Converse. Toutefois, pour bénéficier d'une gamme complète de fonctionnalités, nous vous recommandons d'utiliser l'API Converse et nous utiliserons des exemples avec cette API à l'avenir.

Références supplémentaires

Sur cette page

ConfidentialitéConditions d'utilisation du sitePréférences de cookies
© 2025, Amazon Web Services, Inc. ou ses affiliés. Tous droits réservés.