Vai al contenuto

Cos'è il tool calling? Guida completa all'integrazione dell'IA

Scritto da
Jack Limebear
Pubblicato
Ultimo aggiornamento

AscoltaAscolta questo articolo

I modelli di IA attingono ai dati di addestramento ed estrapolano da essi per fornire risposte agli utenti. Ma cosa succede quando una richiesta va oltre l'ambito di queste informazioni iniziali?

Il tool calling è una funzionalità che aiuta a colmare queste lacune di conoscenza e funzionalità, consentendo a un modello di richiedere ulteriore assistenza a strumenti e sistemi esterni, ad esempio attivando un'azione come l'invio di un aggiornamento o recuperando contenuti da una dashboard di dati.

In questo articolo vedremo cos'è il tool calling, come si confronta con il function calling e come ElevenAgents utilizza il tool calling per i workflow di IA conversazionale.

In sintesi

  • Il tool calling consente a un modello di IA di attivare azioni e richiedere informazioni a strumenti esterni e API.
  • Un modello di IA non esegue attivamente uno strumento. La richiesta viene invece eseguita da un livello applicativo.
  • Il tool calling segue un processo in cinque passaggi e può attivare più strumenti diversi nella stessa richiesta.
  • Il tool calling può servire per il recupero di informazioni, l'esecuzione di codice, il controllo di dispositivi o l'interazione con workflow e processi.
  • ElevenAgents supporta il tool calling negli agenti vocali e consente al tuo assistente di IA conversazionale di svolgere attività per tuo conto.

Cos'è il tool calling?

Il tool calling è una funzionalità di un modello di IA che gli consente di interagire con un altro sistema. Questo sistema può essere un database, un'API, un software o qualsiasi elemento che gli permetta di svolgere una funzione oltre i suoi dati di addestramento. 

Il tool calling genera una richiesta affinché un sistema di terze parti esegua un'attività, in genere in formato JSON. Un sistema di IA usa il tool calling per interrogare sistemi esterni, recuperare informazioni in tempo reale, eseguire comandi o svolgere operazioni. La possibilità di chiamare strumenti consente all'IA agentica di completare attività più complesse o articolate in più passaggi, accedendo a risorse esterne e utilizzando dinamicamente sistemi di terze parti.

La possibilità di chiamare strumenti è ciò che distingue gli assistenti di IA agentica dagli LLM che possono rispondere solo in base a ciò che già sanno.

Perché il tool calling è importante?

I modelli linguistici di grandi dimensioni vengono addestrati su enormi volumi di dati storici per sviluppare le loro capacità. Questo li rende sistemi potenti per rispondere agli utenti e fornire informazioni, ma faticano ad andare oltre il contesto iniziale di addestramento e il corpus di informazioni. Se chiedi agli LLM informazioni che esulano dal loro ambito o dalle loro capacità, hanno bisogno di assistenza esterna per fornirle.

Il tool calling fornisce questa assistenza esterna, permettendo agli LLM di recuperare dati aggiornati da altre fonti o di integrarsi in sistemi attivi che un'azienda già utilizza, come API di terze parti o database interni.

Il tool calling offre numerosi vantaggi ai sistemi di IA:

  • Meno allucinazioni: un sistema che si basa su chiamate dirette agli strumenti per verificare le informazioni opera su prove e dati, invece di inventare potenzialmente informazioni o estrapolarle in base ai dati di addestramento.
  • Maggiore autonomia e portata: un LLM con tool calling può completare azioni che vanno oltre la semplice fornitura di informazioni. 
  • Risposte in tempo reale: interrogando fonti attive, un LLM può ottenere dati in tempo reale da database o chiamate API e fornirti informazioni aggiornate che non sarebbero disponibili basandosi solo sui dati di addestramento.
  • Processi automatizzati in più passaggi: un'attività che potrebbe richiederti di interagire con diversi sistemi si riduce a un unico prompt con un LLM dotato di tool calling. Può interrogare altri sistemi e ottenere informazioni per te senza che tu debba uscire dalla finestra di interazione.

Gartner prevede che il 40% delle applicazioni aziendali sarà integrato con agenti di IA specifici per attività entro la fine del 2026, rispetto a meno del 5% nel 2025. Un modello in grado di chiamare lo strumento corretto per un'attività ne potenzia le capacità e consente agli utenti di fare di più tramite prompt in linguaggio naturale.

Tool calling e retrieval-augmented generation (RAG) a confronto

La retrieval-augmented generation e il tool calling riguardano entrambi la ricerca di dati oltre il contesto fornito dai dati di addestramento di un modello, ma si concentrano su aspetti diversi. RAG serve principalmente per contenuti statici, incluse informazioni come articoli, documenti e knowledge base che colleghi a un modello. Fornisce a un LLM ulteriore contesto che aiuta a generare risposte più complete.

Il tool calling serve per accedere dinamicamente alle informazioni, compresi i sistemi in tempo reale in costante cambiamento. RAG potrebbe recuperare un PDF con i prezzi di un determinato anno, mentre il tool calling potrebbe acquisire immediatamente i prezzi aggiornati da un sistema connesso. La maggior parte dei sistemi LLM usa queste capacità insieme, perché recuperare knowledge base e usare strumenti in tempo reale sono entrambi importanti in molti casi d'uso.

RAG retrieves static knowledge; tool calling accesses live systems; most systems use both.

Come funziona il tool calling?

Il tool calling segue un modello abbastanza standard, sia che un agente di IA chiami un'app interna sia un modello esterno. 

Ecco una panoramica generale del funzionamento del tool calling:

  1. Riconoscere quando è necessaria una chiamata a uno strumento
  2. Selezionare lo strumento giusto tra i sistemi connessi
  3. Creare e inviare una richiesta
  4. La richiesta viene eseguita e restituisce un risultato
  5. Il modello risponde o intraprende un'ulteriore azione

Vediamo questi passaggi più nel dettaglio.

Five-step tool-calling flow from prompt to action; model requests, application executes.

Passaggio 1: riconoscere quando è necessaria una chiamata a uno strumento

Dopo che inserisci una richiesta in linguaggio naturale, un modello legge il tuo prompt e valuta se avrà bisogno di assistenza esterna da uno strumento. Una domanda in linea con i suoi dati di addestramento non richiederà aiuto esterno, ma altre, come quelle che vanno oltre il contesto del modello, sì.

Domande come «Quali sono stati i nostri dati di vendita del secondo trimestre in Salesforce?» e «Qual è il numero attuale di utenti attivi nel nostro store Shopify?» richiederebbero entrambe una chiamata a uno strumento.

Passaggio 2: selezionare lo strumento giusto tra i sistemi connessi

Ogni strumento a cui un modello ha accesso ha uno schema: un nome, una descrizione in linguaggio naturale di ciò che fa e i parametri che accetta. Un modello confronta la tua richiesta con ciascuna di queste descrizioni per trovare lo strumento giusto per l'attività. Soprattutto quando un agente dispone di un ampio catalogo di strumenti, esegue un processo interno per filtrarli e trovare quelli pertinenti, poiché esaminare manualmente centinaia di strumenti rallenterebbe molto l'individuazione di quello corretto da chiamare.

Passaggio 3: creare e inviare una richiesta

Dopo aver selezionato lo strumento corretto, un modello crea una chiamata strutturata, spesso in formato JSON. Questa chiamata definisce lo strumento da chiamare e il contenuto della richiesta. Ad esempio, una richiesta per il meteo a Bogota potrebbe essere {"name": "get_weather", "arguments": {"city": "Bogota"}}. Un modello restituisce questa chiamata e il livello applicativo la esegue nel passaggio successivo.

Passaggio 4: la richiesta viene eseguita e restituisce un risultato 

Il livello applicativo riceve la richiesta di un modello ed esegue lo strumento o chiama un'API per elaborarla. La risposta viene quindi restituita al modello originale come ulteriore contesto, che potrà usarla per formulare la risposta a un utente. 

Passaggio 5: il modello risponde o intraprende un'ulteriore azione

Con i dati o le informazioni ottenuti dalla chiamata allo strumento, il modello risponde a un utente in linguaggio semplice oppure conferma che è stata eseguita un'azione specifica. La seconda risposta si verifica se l'attività specifica che un utente vuole completare è orientata all'azione, ad esempio pubblicare un messaggio su una piattaforma specifica o inserire dati in un database.

Se l'attività richiede altri passaggi, il modello ripeterà di conseguenza i passaggi da 1 a 4. Le richieste più complesse possono richiedere la chiamata di diversi strumenti prima di creare una risposta finale per l'utente. Ad esempio, se un utente volesse conoscere un tasso di cambio attuale e poi convertire valute, il modello dovrebbe eseguire diversi passaggi in sequenza per raggiungere questo obiettivo. 

Tipi di tool calling

Il tool calling descrive ogni situazione in cui un modello chiama un sistema esterno per ottenere dati che vanno oltre il suo addestramento di base. Il processo può coinvolgere diversi sistemi e molti casi d'uso richiedono diversi tipi di strumenti.

  • Recupero di informazioni: include l'estrazione di dati da una fonte esterna, come un'API, un database aziendale connesso o un indice di ricerca, per rispondere a una domanda che va oltre l'ambito del contesto di addestramento originale di un modello.
  • Esecuzione di codice: l'esecuzione di script, processi di trasformazione dei dati o calcoli in un ambiente di codice. In genere viene usata per analizzare i dati, anziché limitarsi a descrivere come un'analisi potrebbe funzionare nella pratica.
  • Automazione dei processi: descrive il caso in cui una chiamata API attiva un workflow specifico in un altro sistema, ad esempio interagendo con un CMS, pianificando una riunione, aggiornando record, inviando notifiche o trasformando le richieste in azioni completate. È particolarmente comune nei sistemi agentici che svolgono attività per le persone.
  • Controllo di dispositivi e sistemi: rientrano in questa categoria le chiamate agli strumenti che interagiscono con un altro dispositivo, un sistema di telefonia, un assistente per la smart home e altro ancora.

Spesso il tool calling non rientra nettamente in una sola di queste categorie. Puoi avere chiamate in più passaggi e concatenate che combinano diverse delle categorie sopra in una sequenza continua. Ad esempio, puoi recuperare lo stato dell'ordine di un cliente, attivare un rimborso, aggiornare il tuo CRM interno e comunicare queste informazioni a un agente umano.

Four types of tool calling: retrieval, code, automation, and device control, often chained.

Tool calling e function calling: differenze chiave

Il tool calling è una categoria più ampia del function calling e comprende un ambito più esteso e una gamma più diversificata di potenziali capacità. Il function calling avviene quando un modello genera una chiamata strutturata, con argomenti, a una funzione predefinita.

Ecco una tabella che riassume le differenze tra una chiamata a uno strumento e una chiamata a una funzione. 

Function calling
Overall scope
A model that can generate a function call for a specific predetermined action
Origin
OpenAI introduced the term back in 2023
Relationship
A narrow subset of tool calling
Commonly found
Within older API documentation or legacy parameters
Tool calling
Overall scope
A wide capability that relates to calling APIs, executing code, and interacting with external systems
Origin
The wider industry term that has now become popularized, stemming from a model’s ability to interact with multiple external tools
Relationship
A broad concept that includes function calling
Commonly found
Modern documentation used by most AI companies
Function calling is a narrow subset of tool calling; terms are often used interchangeably.

Quanto è affidabile il tool calling? 

L'affidabilità del tool calling dipende interamente dal modello che effettua le chiamate. Inoltre, gli errori possono manifestarsi in modo diverso nei vari sistemi. Ad esempio, dopo il fallimento di una chiamata a uno strumento, un modello di IA potrebbe semplicemente allucinare una risposta, mentre un altro potrebbe invitare l'utente a riprovare. 

La Berkeley Function Calling Leaderboard è una classifica di riferimento molto citata che confronta le prestazioni di diversi modelli in termini di tool calling. Anche se viene descritta come una classifica sul function calling, nella pratica misura l'efficienza del tool calling testando i modelli su chiamate API, raccolta di informazioni tramite query a database, chiamate parallele o risposte in conversazioni multi-turno.

I modelli vengono valutati su aspetti quali costo totale, capacità di cercare sul web, accuratezza delle conversazioni multi-turno, misurazione delle allucinazioni, latenza e altro ancora. Se intendi eseguire workflow complessi o in più passaggi, è utile sapere quali modelli offrono capacità di tool calling più complete. 

Inizia a usare ElevenAgents per il tool calling

In ElevenAgents puoi scegliere tra diversi modelli, così da abbinare il tuo carico di lavoro al miglior modello di base possibile. Gli agenti vocali usano strumenti, cercano ordini, verificano record, aggiornano database e raccolgono informazioni dalle API.

Puoi usare diversi tipi di strumenti, inclusi strumenti webhook per chiamare API esterne, strumenti client per attivare azioni nelle applicazioni o in un browser, strumenti di codice per logica server-side personalizzata, strumenti MCP che si connettono a server di strumenti esterni e strumenti di sistema per azioni integrate come il trasferimento a un agente umano.

ElevenLabs offre anche connettori nativi preconfigurati per servizi come Zendesk, HubSpot, Salesforce e molti altri, così non devi configurare integrazioni personalizzate. Scopri di più su ElevenAgents oppure registrati per iniziare oggi a creare agenti vocali con tool calling.

Domande frequenti

Articoli simili

Crea con l'audio IA della massima qualità