Seleccione sus preferencias de cookies

Usamos cookies esenciales y herramientas similares que son necesarias para proporcionar nuestro sitio y nuestros servicios. Usamos cookies de rendimiento para recopilar estadísticas anónimas para que podamos entender cómo los clientes usan nuestro sitio y hacer mejoras. Las cookies esenciales no se pueden desactivar, pero puede hacer clic en “Personalizar” o “Rechazar” para rechazar las cookies de rendimiento.

Si está de acuerdo, AWS y los terceros aprobados también utilizarán cookies para proporcionar características útiles del sitio, recordar sus preferencias y mostrar contenido relevante, incluida publicidad relevante. Para aceptar o rechazar todas las cookies no esenciales, haga clic en “Aceptar” o “Rechazar”. Para elegir opciones más detalladas, haga clic en “Personalizar”.

Uso de herramientas (llamada a funciones) con Amazon Nova

Modo de enfoque
Uso de herramientas (llamada a funciones) con Amazon Nova - Amazon Nova

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Las herramientas son una forma de proporcionar funciones externas a Amazon Nova, como una llamada a la API o una función de código. En esta sección se explicará cómo puede definir e integrar las herramientas al trabajar con modelos de Amazon Nova.

El uso de la herramienta implica tres pasos de alto nivel:

  • Consulta de usuario: para definir las herramientas que Amazon Nova puede utilizar, debe proporcionar un esquema JSON que describe la funcionalidad y los requisitos de entrada de cada herramienta.

  • Selección de herramientas: cuando un usuario envía un mensaje, Amazon Nova lo analizará para determinar si es necesaria una herramienta para generar una respuesta. Esto se conoce como elección Auto de herramienta. Consulte Elegir una herramienta para obtener más información. Si Amazon Nova identifica una herramienta adecuada, «llamará a la herramienta» y devolverá el nombre de la herramienta y los parámetros que se van a utilizar.

    Usted, como desarrollador, es responsable de ejecutar la herramienta en función de la solicitud del modelo. Esto significa que debe escribir el código que invoca la funcionalidad de la herramienta y procesa los parámetros de entrada proporcionados por el modelo.

    nota

    Como todas las respuestas de LLM, Amazon Nova puede alucinar con una llamada de herramienta. Usted, el desarrollador, es responsable de comprobar que la herramienta existe, que las entradas están formateadas correctamente y que ya se han establecido los permisos adecuados.

  • Devuelve los resultados: después de ejecutar la herramienta, debe enviar los resultados a Amazon Nova en un formato estructurado. Los formatos válidos incluyen JSON o una combinación de texto e imágenes. Esto permite a Amazon Nova incorporar los resultados de la herramienta en la respuesta final al usuario.

    Si se produce algún error durante la ejecución de la herramienta, puede indicarlo en la respuesta de la herramienta a Amazon Nova, lo que permitirá a Amazon Nova ajustar su respuesta en consecuencia.

Considere un ejemplo sencillo de una herramienta de calculadora:

User query

El primer paso del flujo de trabajo de llamadas a herramientas es que el usuario consulte a Amazon Nova para obtener el resultado de una ecuación matemática (10 veces 5). Esta consulta se envía como mensaje a Amazon Nova junto con una especificación de herramienta que representa la calculadora.

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 utiliza el contexto de la herramienta junto con la solicitud del usuario para determinar la herramienta que se debe utilizar y la configuración requerida. Esto se devuelve como parte de la respuesta de la API.

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

La aplicación es responsable de ejecutar la herramienta y almacenar el resultado.

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

Para devolver el resultado de la herramienta a Amazon Nova, el resultado de la herramienta se incluye en una nueva solicitud de API. Tenga en cuenta que el identificador de uso de la herramienta es coherente con el que Amazon Nova devolvió en la respuesta anterior.

{ "toolResult": { "toolUseId": "tooluse_u7XTryCSReawd9lXwljzHQ", "content": [ { "json": { "result": "50" } } ], "status": "success" } }
  • Amazon Nova utilizará todo el contexto de los mensajes, incluida la consulta inicial del usuario, el uso de la herramienta y el resultado de la herramienta para determinar la respuesta final al usuario. En este caso, Amazon Nova responderá al usuario que «10 veces 5 es 50".

El primer paso del flujo de trabajo de llamadas a herramientas es que el usuario consulte a Amazon Nova para obtener el resultado de una ecuación matemática (10 veces 5). Esta consulta se envía como mensaje a Amazon Nova junto con una especificación de herramienta que representa la calculadora.

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 permite el uso de herramientas tanto en la API de Invoke como en la de Converse; sin embargo, para obtener una gama completa de funciones, recomendamos utilizar la API de Converse y utilizaremos ejemplos con esta API en el futuro.

Referencias adicionales

En esta página

PrivacidadTérminos del sitioPreferencias de cookies
© 2025, Amazon Web Services, Inc o sus afiliados. Todos los derechos reservados.