Come usare l'invocazione degli strumenti (Tool Calling) con Ollama
L'chiamata a uno strumento con ollama rappresenta un'evoluzione significativa per trasformare i modelli di linguaggio in agenti in grado di interagire con il mondo esterno. Questa funzionalità permette a un LLM, ospitato localmente tramite Ollama, di decidere quando e come utilizzare funzioni esterne (strumenti) per rispondere a una richiesta complessa. In questo manuale, esploreremo in dettaglio la teoria di questa capacità, i meccanismi di implementazione pratici e come ottimizzare l'uso di modelli a pesi aperti performanti sulla tua infrastruttura locale. Tratteremo anche le specificità dei diversi modelli disponibili nel nostro catalogo per massimizzare le tue possibilità di successo con il tool calling.
Capire il concetto di chiamata a uno strumento (Tool Calling)
Le tool calling è una capacità sofisticata in cui un LLM non si limita a generare testo, ma produce invece una struttura dati specifica (generalmente JSON) che indica che una funzione deve essere eseguita. Il processo segue un ciclo iterativo:
- Richiesta utente : L'utente pone una domanda che richiede informazioni esterne (es.: "Che tempo farà a Parigi domani?").
- Analisi del LLM : Il modello, essendo stato addestrato a conoscere le funzioni a tua disposizione (lo schema), determina che una funzione
get_weather(city)è adatta. Il modello non risponde direttamente, ma genera una chiamata nel formato previsto. - Esecuzione esterna : Il tuo sistema host intercetta questo output JSON ed esegue la funzione effettiva (chiamata a un'API meteo).
- Restituzione del risultato : Il risultato dell'esecuzione (
{"temperature": "15°C", "condition": "ensoleillé"}) viene inviato all'LLM come nuovo contesto. - Generazione finale : L'LLM utilizza questo risultato fattuale per formulare una risposta naturale e completa all'utente.
Questa architettura permette di colmare la distanza tra la conoscenza statica del modello e i dati dinamici necessari alle applicazioni reali. Per compiti che richiedono un ragionamento complesso, potresti considerare l'uso di modelli potenti come DeepSeek V4 Pro 1.6T scheda DeepSeek V4 Pro 1.6T o MiMo V2.5 Pro scheda MiMo V2.5 Pro, i cui contesti estesi facilitano la gestione degli schemi di strumenti complessi, arrivando fino a 1.000.000 di token di contesto.
Scegliere il modello giusto per l'agente LLM: prestazioni vs dimensioni
Il successo di l'chiamata a uno strumento con ollama dipende intrinsecamente dalla capacità del modello di seguire istruzioni strutturate e di ragionare logicamente. I modelli open-weights variano notevolmente in termini di complessità, il che influenza direttamente la loro performance in tool calling.
Per le attività che richiedono un'elevata fedeltà nell'invocazione degli strumenti (dove la precisione del JSON è fondamentale), preferisci modelli con un forte allineamento alle istruzioni. Ad esempio, Kimi K2.7 Code scheda Kimi K2.7 Code o Qwen3-Coder-Next 80B-A3B scheda Qwen3-Coder-Next 80B-A3B dimostrano un'alta capacità di ragionamento strutturato, che è un prerequisito per il tool calling fiable.
Tuttavia, se i tuoi vincoli hardware sono stringenti (ad esempio, utilizzo su configurazioni con meno di 16 GB di VRAM), dovrai scegliere modelli più piccoli ma comunque performanti. Modelli come Mistral Medium 3.5 128B scheda Mistral Medium 3.5 128B o Llama 4 Scout 109B scheda Llama 4 Scout 109B offrono un buon compromesso tra capacità di ragionamento e occupazione di memoria, consentendo test efficaci del tool calling senza sovraccaricare la GPU.
Implementazione tecnica: il ruolo del prompt di sistema
Il modo in cui presenti gli strumenti all'LLM è cruciale. Devi fornire una descrizione chiara (il schema) di ogni funzione disponibile, inclusi i parametri attesi e i loro tipi di dati. Questa documentazione deve essere integrata nel prompt di sistema o fornita come contesto prima della richiesta utente.
Un buon esempio di definizione di strumento sarebbe:
"description": "Récupère les informations sur un modèle spécifique.", "parameters": {"type": "object", "properties": {"model_name": {"type": "string", "description": "Le nom exact du LLM à rechercher (ex: DeepSeek V4 Pro 1.6T)"}}}
L'efficacia di questa descrizione è direttamente legata al grado di addestramento del modello a seguire le istruzioni. I modelli addestrati su insiemi di dati ricchi di esempi di chiamata di funzioni offrono prestazioni migliori. Per confrontarne le capacità, puoi consultare la nostra guida comparativa dei LLM. Consigliamo inoltre di studiare le prestazioni di Inkling scheda Inkling che possiede un contesto molto ampio, ideale per mantenere la definizione degli strumenti su più scambi.
Gestione dei flussi e delle iterazioni con Ollama
L'implementazione del tool calling richiede un ciclo di interazione tra la tua applicazione e l'API Ollama. È essenziale gestire gli stati seguenti:
- Inizializzazione : Inviare il prompt di sistema contenente la definizione degli strumenti al LLM tramite Ollama.
- Verifica dell'output : Analizzare la risposta del LLM. Se contiene una chiamata a uno strumento (formato JSON predefinito), passa al punto 3. Altrimenti, è la risposta finale.
- Esecuzione e Iniezione : Eseguire il codice corrispondente alla chiamata, poi restituire il risultato grezzo al LLM in una nuova richiesta, specificando che si tratta del risultato dello strumento.
- Finalizzazione : Il LLM utilizza questo risultato per generare la risposta finale per l'utente.
Modelli come GLM 5.2 753B-A40B scheda GLM 5.2 753B-A40B o Mixtral 8x22B Instruct scheda Mixtral 8x22B Instruct sono eccellenti per questa fase di ragionamento iterativo, poiché mantengono una coerenza elevata tra le chiamate e le risposte. Per ulteriori dettagli sull'ottimizzazione dei prompt, consulta il nostro articolo sul prompt engineering.
Casi d'uso concreti per i LLM locali
Le tool calling apre la strada a applicazioni autonome basate sui tuoi modelli open-weights:
- Agenti di Ricerca Specializzati : Un agente può utilizzare uno strumento di ricerca web (se glielo fornisci) per trovare le informazioni più recenti su una tecnologia, poi sintetizzare questi dati utilizzando un modello come DeepSeek V3.2 scheda DeepSeek V3.2.
- Assistenti di codice contestuali : Un LLM può chiamare strumenti per leggere la documentazione locale o eseguire test unitari su una base di codice, prima di proporre una correzione utilizzando un modello specializzato come Kimi K2.5 scheda Kimi K2.5.
- Sistemi di Gestione delle Entità : Per estrarre e classificare dati complessi da documenti, lo strumento può essere una funzione di classificazione o di validazione dello schema. Modelli come Qwen 3 VL 235B-A22B scheda Qwen 3 VL 235B-A22B sono particolarmente adatti a questo tipo di analisi multimodale e strutturata.
Per confrontare le prestazioni di diversi modelli in scenari specifici, ti invitiamo a utilizzare il nostro strumento di confronto.
FAQ sulla chiamata di strumenti con Ollama
Q: Qual è il prerequisito principale perché il mio LLM supportato da Ollama effettui tool calling ?
R: Il prerequisito fondamentale non è solo la capacità nativa del modello, ma soprattutto la qualità del tuo prompt di sistema. Devi descrivere le funzioni disponibili (nome, descrizione, parametri attesi) in un formato strutturato (spesso JSON Schema) che il LLM deve imparare a riprodurre in output quando ritiene che uno strumento sia necessario per rispondere.
Q: Tutti i modelli open-weights supportano nativamente il tool calling ?
R: No, dipende dal modo in cui il modello è stato addestrato e affinato (fine-tuning). Le versioni ottimizzate o specializzate nell'allineamento alle istruzioni sono molto più propense a generare chiamate a strumenti affidabili. Modelli come Nemotron 3 Ultra scheda Nemotron 3 Ultra mostrano una forte capacità di seguire questi schemi complessi.
Q: Quale impatto hanno le dimensioni del modello sul successo della chiamata a uno strumento?
R: In generale, più grande è il modello (in termini di parametri), migliori sono la sua capacità di ragionamento e la sua aderenza al formato JSON richiesto per l'invocazione. Tuttavia, un modello di dimensioni medie ben allineato può superare un modello molto grande sottoposto a un fine-tuning poco efficace in questa specifica attività.
Q: Come gestire gli errori durante l'esecuzione di un tool esterno?
R: Quando il tuo codice esegue uno strumento e incontra un errore (es.: API non disponibile), devi inviare al LLM questo messaggio di errore come contesto. Il modello deve quindi essere in grado di riconoscere questo errore e, se possibile, proporre un'azione correttiva o informare l'utente che il compito non può essere completato.
Q: Qual è il ruolo del contesto (finestra di contesto) nel tool calling ?
R: Un grande contesto permette al LLM di "ricordare" contemporaneamente le definizioni complesse di tutti i tuoi strumenti, l'intero storico della conversazione e i risultati intermedi. Modelli con un contesto esteso come DeepSeek V4 Pro 1.6T scheda DeepSeek V4 Pro 1.6T sono particolarmente vantaggiosi per gli agenti che operano in più fasi.
Conclusione: Verso agenti LLM autonomi locali
Maestria dell'chiamata a uno strumento con ollama è la chiave per trasformare un semplice generatore di testo in un vero agente in grado di agire nel tuo ambiente locale o remoto. Combinando la scelta attenta di un modello performante — che sia GLM-5 744B-A40B la scheda GLM 5 744B-A40B per la potenza bruta, o un modello più leggero come MiMo V2 Flash scheda MiMo V2 Flash per l'efficienza — con un rigoroso lavoro di ingegneria dei prompt, costruisci sistemi robusti. Per esplorare le capacità specifiche di ogni LLM in questo ambito o configurare il tuo ambiente ideale, consulta il nostro catalogo completo o il nostro configuratore hardware.
Fonti esterne utilizzate per l'arricchimento (minimo 3 richieste) Guida sul Function Calling in generale Documentazione dell'API Ollama Ricerca accademica sugli agenti LLM
L'hardware per eseguire un LLM in locale
Per eseguire questi modelli comodamente in locale, una RTX 5070 Ti offre un eccellente rapporto prezzo/prestazioni. Confronta i prezzi:
Link affiliati — QualeLLM può percepire una commissione sugli acquisti, senza costi aggiuntivi per te. In qualità di Partner Amazon, QualeLLM realizza un profitto sugli acquisti idonei.