Descrivi il contratto di una funzione
Uno strumento contiene un nome, una descrizione chiara e un JSON Schema per i parametri. La descrizione indica quando selezionare lo strumento, mentre lo schema vincola gli argomenti.
Il modello propone una chiamata; da solo non ottiene accesso alla tua rete, al database o ai file.
{
"model": "openai/gpt-5.6-sol",
"messages": [{"role": "user", "content": "What is the weather in Tashkent?"}],
"tools": [{
"type": "function",
"function": {
"name": "get_weather",
"description": "Read current weather for a city.",
"parameters": {
"type": "object",
"properties": {"city": {"type": "string"}},
"required": ["city"],
"additionalProperties": false
}
}
}],
"tool_choice": "auto"
}Esegui dal tuo lato
- Controlla il nome dello strumento rispetto a un elenco consentito.
- Convalida gli argomenti rispetto allo schema prima di chiamare un servizio interno.
- Applica alla chiamata dello strumento le tue regole di autorizzazione, timeout e idempotenza.
Restituisci il risultato
Aggiungi un messaggio tool con tool_call_id e un risultato serializzato compatto, quindi continua la conversazione con lo stesso contesto.
Mantieni separato un errore di esecuzione dello strumento da un errore del modello: restituisci un motivo strutturato che il modello possa spiegare all'utente.