Tool calling (chiamata di strumenti)
Il tool calling, noto anche come function calling, è una funzione che permette a un modello linguistico di chiedere al tuo programma di eseguire una funzione e di usarne il risultato nella risposta. Il modello non esegue mai nulla da solo: restituisce il nome di uno strumento e i suoi argomenti, e il lavoro lo fa il tuo codice.
Aggiornato il 8 novembre 2026
In questa pagina
Leggibile solo sui tuoi dispositivi.
La tua conversazione appare in chiaro sul tuo dispositivo, e sugli altri tuoi dispositivi se li sincronizzi. Da nessun’altra parte.
Illeggibile per noi.
Il tuo messaggio transita senza essere registrato; le tue chat vengono salvate solo cifrate.
Il modello non sa chi sei.
Riceve la domanda, mai la tua e-mail, il tuo account o il tuo indirizzo IP.
Niente resta per strada.
La risposta torna e viene salvata qui, cifrata; anche con la sincronizzazione, la tua chiave non ci arriva mai in chiaro.
Come funziona
Si comincia descrivendo gli strumenti che offri. Ciascuno ha un nome, una breve descrizione e uno schema JSON che elenca i parametri, per esempio una funzione get_weather che prende una città. Invii questo elenco con la conversazione. Se il modello decide che uno strumento sarebbe utile, la sua risposta contiene una chiamata allo strumento invece del testo finale: il nome e gli argomenti, scritti in JSON. Il tuo programma esegue la funzione, aggiunge un messaggio con il risultato e l’identificatore della chiamata, e rimanda tutto. Il modello scrive poi la risposta finale a partire da quel risultato. Pensa a un cameriere che annota l’ordine su un foglietto e non entra mai in cucina. Esempi tipici sono controllare lo stato di un ordine, convertire una valuta, cercare in una base di conoscenza o creare un appuntamento in calendario.
La maggior parte delle API permette di guidare il comportamento. Puoi lasciare la scelta al modello, vietare gli strumenti, esigere che ne venga chiamato uno o indicare quello preciso. Più chiamate possono arrivare nella stessa risposta, il che risparmia viaggi di andata e ritorno quando non dipendono l’una dall’altra, e in una risposta in streaming gli argomenti arrivano a pezzi sotto lo stesso indice. Lo stesso meccanismo alimenta gli agenti, che ripetono il ciclo di chiamata, risultato e decisione, ed è anche un modo affidabile di estrarre dati strutturati dal testo. Una modalità rigorosa che costringe l’uscita a rispettare esattamente lo schema esiste presso alcuni fornitori e toglie molte chiamate malformate.
Serve cautela. I modelli possono scegliere lo strumento sbagliato, inventare un argomento o chiamare una funzione con valori validi ma dannosi, quindi valida gli argomenti dalla tua parte e non eseguire mai nulla di più potente di quanto il compito richieda. Non tutti i modelli supportano la funzione, e quelli che lo fanno variano per affidabilità nel seguire uno schema. Prova con casi reali, tieni brevi e precise le descrizioni e dai agli strumenti nomi che dicano cosa fanno. Mantieni corto l’elenco, perché un menu lungo confonde i modelli e consuma la finestra di contesto. Guasti tipici sono una città scritta male, un campo obbligatorio mancante, un numero inviato come testo, una data nel formato sbagliato o uno strumento che non esiste.
In NeverNo
L’API di NeverNo lo supporta sui completamenti di chat. Passa tools, un elenco di funzioni con uno schema JSON, e facoltativamente tool_choice (auto, none, required o una funzione indicata) e parallel_tool_calls. Quando il modello chiama uno strumento, la risposta contiene tool_calls e finish_reason è tool_calls; esegui la funzione e rimandi un messaggio tool con il risultato e il suo tool_call_id. In uno stream, ogni chiamata arriva come la scrive OpenAI.
Solo i modelli per cui capabilities.tools è true nell’elenco /models accettano strumenti; gli altri rispondono con un chiaro errore 400, tools_not_supported. GLM 5.2, un modello privato di Z.ai incluso nei piani a pagamento, ha una finestra di contesto di 200.000 token e una modalità di ragionamento facoltativa. Controlla l’elenco prima di costruire su un modello. La pagina sull’alternativa a ChatGPT spiega perché molti scelgono NeverNo per la varietà di modelli.
Da ricordare
Il modello chiede uno strumento per nome e argomenti; il tuo programma lo esegue e restituisce il risultato.
Ogni strumento si descrive con un nome, una breve descrizione e uno schema JSON dei parametri.
L’impostazione tool_choice può lasciare la decisione al modello, vietare gli strumenti o forzarne uno.
Valida tu ogni argomento: una chiamata ben formata non è per forza sicura.
Solo i modelli che dichiarano la capacità accettano strumenti; gli altri restituiscono un errore.
Domande frequenti
Il modello esegue la funzione?
No. Produce soltanto una richiesta strutturata che nomina la funzione e i suoi argomenti. Il tuo codice la esegue, per questo controlli ciò che può davvero accadere. Questa separazione permette anche di aggiungere registri, limiti di frequenza o una conferma prima che qualcosa giri.
Tool calling e function calling sono la stessa cosa?
In pratica sì. Function calling è stato il primo nome usato da OpenAI; tool calling è il termine più ampio, dato che lo strumento può essere una funzione, una ricerca o un altro servizio.
Come so se un modello lo supporta?
Leggi le sue capacità nell’elenco dei modelli. Su NeverNo, GET /models mostra capabilities.tools per ogni modello, e un modello che non la ha risponde con un errore 400 invece di ignorare in silenzio gli strumenti. Provare una piccola richiesta con uno strumento banale è il modo più rapido per confermare che il modello si comporti bene.
Fai la tua prima domanda
Senza account né carta. Scrivi in una delle 10 lingue che NeverNo parla.
Apri la chat