

# Solucionar problemas de chamadas de ferramentas
<a name="prompting-tool-troubleshooting"></a>

Você pode ver diferentes erros ao trabalhar com ferramentas e modelos do Amazon Nova. Confira abaixo alguns exemplos e dicas para ajudar na solução de problemas.

## Exceção de erro do modelo
<a name="troubleshooting-model-error"></a>

`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 seus parâmetros de inferência**: os modelos do Amazon Nova têm mais sucesso ao chamar ferramentas quando usam a decodificação Greedy. Para habilitar a decodificação greedy, defina os parâmetros de temperatura como 0.

```
inferenceConfig={
    "temperature": 0
}

additionalModelRequestFields={"inferenceConfig": {"topK": 1}}
```

**Aumente a contagem máxima de tokens**: é comum que as saídas da ferramenta exijam uma saída de token grande. Certifique-se de que o número máximo de tokens definido seja grande o suficiente para acomodar o esquema de retorno esperado. Se a resposta do modelo for maior do que sua contagem máxima de tokens, ela acionará uma exceção. Você pode definir o número máximo de tokens no parâmetro `inferenceConfig`:

```
inferenceConfig={
    "maxTokens": 3000
}
```

**Revise o prompt do sistema**: para melhorar a precisão da chamada de ferramentas, o Amazon Nova usa o raciocínio de cadeia de pensamento ao chamar uma ferramenta. Você verá essa saída na resposta em tags <thinking>. Não recomendamos tentar remover essa funcionalidade. Em vez disso, recomendamos que você descarte a saída se não precisar dela em sua aplicação.

## Validation Exception
<a name="troubleshooting-validation-exception"></a>

`An error occurred (ValidationException) when calling the Converse operation`

A configuração da ferramenta passada não está em conformidade com as convenções exigidas. Consulte a [especificação da API Converse](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/bedrock-runtime/client/converse.html) para obter as especificações de todos os parâmetros.

## Uma ferramenta não é retornada quando esperado
<a name="troubleshooting-tool-not-returned"></a>

Se parecer que as ferramentas estão sendo ignoradas pelo modelo, certifique-se de estar seguindo o esquema JSON correto para a configuração da ferramenta:
+ O esquema de nível superior deve ser do tipo [Object](https://json-schema.org/understanding-json-schema/reference/object).
+ O objeto de nível superior aceita apenas três campos: `type` (deve ser definido como "objeto"), `properties` e `required`
+ Os campos comuns não compatíveis no nível superior são: `$schema`, `description`, `title` e `additionalProperties`.

Se uma ferramenta não estiver sendo retornada quando esperado, será recomendável utilizar o parâmetro de API `tool_choice`.
+ **Ferramenta**: a ferramenta especificada será chamada uma vez.

  ```
  {
     "toolChoice": {
          "tool": {
              "name": "name_of_tool"
          }
      }
  }
  ```
+ **Qualquer**: uma das ferramentas fornecidas será chamada pelo menos uma vez.

  ```
  {
     "toolChoice": {
          "any": {}
      }
  }
  ```