Solución de problemas de llamadas a herramientas
Es posible que vea diferentes errores al trabajar con herramientas y modelos de Amazon Nova. Aquí tiene algunos ejemplos y consejos para ayudarle a solucionar problemas.
An error occurred (ModelErrorException) when calling the Converse operation: The model produced an invalid sequence as part of ToolUse. Please refer to the model tool use troubleshooting guide.
Valide sus parámetros de inferencia: los modelos de Amazon Nova tienen más éxito al llamar a las herramientas cuando utilizan una decodificación voraz. Para habilitar la decodificación voraz, establezca los parámetros de temperatura en 0.
inferenceConfig={ "temperature": 0 } additionalModelRequestFields={"inferenceConfig": {"topK": 1}}
Aumente el número máximo de tokens: es común que los resultados de las herramientas requieran una gran cantidad de tokens de salida; asegúrese de que el máximo de tokens establecido sea lo suficientemente alto para acomodar el esquema de retorno esperado. Si la respuesta del modelo es mayor que el número máximo de tokens, se activará una excepción. Puede establecer el número máximo de tokens en el parámetro inferenceConfig
:
inferenceConfig={ "maxTokens": 3000 }
Revise la petición del sistema: Para mejorar la precisión de la llamada a una herramienta, Amazon Nova utiliza el razonamiento en cadena de pensamiento. Verá este resultado en la respuesta dentro de las etiquetas <thinking>. No recomendamos intentar eliminar esta funcionalidad. En su lugar, le recomendamos que descarte la salida si no la necesita en su aplicación.
An error occurred (ValidationException) when calling the Converse operation
La configuración de la herramienta pasada no cumple con las convenciones requeridas. Consulte las especificaciones de la API de Converse
Si parece que el modelo ignora las herramientas, asegúrese de seguir el esquema JSON correcto para la configuración de la herramienta:
-
El esquema de nivel superior debe ser del tipo Object
. -
Solo se admiten tres campos en el objeto de nivel superior:
type
(debe estar configurado como “object”),properties
yrequired
. -
Los campos no admitidos más comunes en el nivel superior son:
$schema
,description
,title
yadditionalProperties
.
Si una herramienta no se devuelve cuando se esperaba, se recomienda aprovechar el parámetro de la API de tool_choice
.
-
Tool: la herramienta especificada se llamará una vez.
{ "toolChoice": { "tool": { "name": "name_of_tool" } } }
-
Any: se llamará a una de las herramientas proporcionadas al menos una vez.
{ "toolChoice": { "any": {} } }