

# Sistemas de chamada de ferramentas
<a name="prompting-tools-function"></a>

A chamada de ferramentas está disponível para os modelos do Amazon Nova ao passar um esquema de configuração da ferramenta em sua solicitação. O prompt do modelo será aumentado com essa configuração de ferramenta, portanto, é um local altamente impactante para começar a otimizar seu sistema de chamada de ferramentas. 

Considere estes princípios fundamentais:
+ As definições das ferramentas devem ser claras e concisas. Elas devem ser fáceis de entender e a intenção deve estar extremamente aparente.
+ Use os principais diferenciais e condições básicas para definir quando uma ferramenta deve ser usada em detrimento de outra.
+ Seja crítico em relação aos tipos de argumentos de entrada. Pergunte-se: eles fazem sentido e seriam usados dessa forma normalmente?

**Usar “Escolha de ferramenta” para controlar quando uma ferramenta é chamada**

O parâmetro de escolha da ferramenta permite que você personalize o comportamento da chamada de ferramentas com o modelo. Recomendamos utilizá-lo para um controle refinado sobre quais ferramentas são chamadas e quando.

Por exemplo, para casos de uso como saída estruturada, você pode querer que uma ferramenta específica seja chamada sempre que o Amazon Nova for invocado. Você pode definir o esquema de sua saída como a ferramenta e, em seguida, definir a escolha da ferramenta com o nome dela.

```
{
   "toolChoice": {
        "tool": {
            "name": "name_of_tool"
        }
    }
}
```

Para muitos casos de uso agênticos, talvez você queira garantir que o modelo sempre selecione uma das ferramentas disponíveis. Para fazer isso, você pode definir a escolha da ferramenta como `any`, que chamará exatamente uma ferramenta sempre que o modelo for invocado.

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

Por fim, para casos de uso em que a chamada de uma ferramenta é altamente dependente do contexto da conversa, você pode definir a escolha da ferramenta como `auto`. Este é o comportamento padrão e deixará a seleção da ferramenta totalmente a critério do modelo.

```
{
   "toolChoice": {
        "auto": {}
    }
}
```