---
title: "Function calling (LLM) (IT)"
source: "https://systems-analysis.info/int/Function_calling_(LLM)_(IT)"
wiki: "systems-analysis.info/int"
article: "Function_calling_(LLM)_(IT)"
language: "it"
categories:
  - "Category:Italian"
  - "Category:Large language models"
  - "Category:Machine learning"
  - "Category:Prompt engineering"
revision_id: 2333
wiki_created_at: 2026-09-06T23:02:17Z
wiki_modified_at: 2026-09-06T23:02:17Z
downloaded_at: 2026-09-07T22:50:33Z
---

# Function calling (LLM) (IT)

**Function Calling** (**Chiamata di Funzioni**) — è un meccanismo nei grandi modelli linguistici (LLM) che consente al modello di interagire con strumenti esterni e API, generando dati strutturati (solitamente JSON) per invocare funzioni al posto di una risposta testuale diretta<sup>[\[1\]](https://systems-analysis.info/int/Function_calling_(LLM)_(IT)#cite_note-hopsworks_whatis-1)</sup>.

In altre parole, il modello, sulla base della richiesta dell'utente, determina quale funzione del set proposto debba essere invocata e con quali parametri. Questo meccanismo amplia l'ambito di applicazione degli LLM, consentendo loro di fungere da interfaccia tra il linguaggio naturale e le azioni concrete. Ciò apre possibilità di integrazione dell'IA con sistemi esterni: il modello può richiedere dati aggiornati, eseguire operazioni o utilizzare servizi, il che è particolarmente prezioso nella creazione di assistenti intelligenti e agenti autonomi. L'utilizzo di strumenti esterni riduce inoltre il rischio di allucinazioni (fatti inventati) grazie al ricorso a fonti attendibili<sup>[\[2\]](https://systems-analysis.info/int/Function_calling_(LLM)_(IT)#cite_note-dark_side_paper-2)</sup>.

## Storia e approcci all'implementazione

### Approcci iniziali (prompting e Toolformer)

L'idea di insegnare ai modelli linguistici a invocare strumenti si è formata nel periodo 2022–2023. I primi approcci si basavano su tecniche di prompting complesso. Nel 2022, ad esempio, fu proposto lo schema **ReAct**, in cui il modello alternava, nel corso del dialogo, ragionamento e azione (chiamate agli strumenti), codificati in un unico testo.

Un passo fondamentale fu la comparsa del modello **Toolformer**, presentato dai ricercatori di Meta all'inizio del 2023. Toolformer dimostrò che gli LLM potevano essere specificamente messi a punto per invocare autonomamente strumenti esterni (calcolatrice, motore di ricerca, calendario) tramite suggerimenti testuali, inserendo nel testo generato speciali token di chiamata API<sup>[\[3\]](https://systems-analysis.info/int/Function_calling_(LLM)_(IT)#cite_note-toolformer_paper-3)</sup>.

### Supporto ufficiale e sviluppo

Una tappa fondamentale fu segnata da OpenAI, che nel giugno 2023 introdusse ufficialmente il supporto al Function Calling nelle proprie API per i modelli GPT-3.5 e GPT-4<sup>[\[4\]](https://systems-analysis.info/int/Function_calling_(LLM)_(IT)#cite_note-openai_fc_announcement-4)</sup>. Le nuove versioni dei modelli furono messe a punto per riconoscere le situazioni in cui la richiesta dell'utente implica il ricorso a una funzione esterna e per generare un oggetto JSON precisamente strutturato con gli argomenti. OpenAI definì questa funzionalità «un nuovo modo per connettere in modo affidabile GPT con strumenti e API esterni».

### Iniziative open source

Sulla scia delle implementazioni commerciali comparvero modelli open source messi a punto per la generazione di chiamate di funzioni corrette.

- **Gorilla**: Progetto dell'UC Berkeley, versione messa a punto di LLaMA, in grado di formulare chiamate a migliaia di API diverse. Per la valutazione di tali modelli fu creato il benchmark Berkeley Function-Calling Leaderboard<sup>[\[5\]](https://systems-analysis.info/int/Function_calling_(LLM)_(IT)#cite_note-gorilla_site-5)</sup>.
- **ToolAlpaca**, **ToolLLaMA**, **Hermes**: Serie di modelli open source messi a punto su esempi sintetici di chiamate di funzioni, spesso generati da modelli più potenti.

## Meccanismo di funzionamento

Il processo di utilizzo del Function Calling comprende generalmente diversi passaggi:

1.  **Definizione delle funzioni**. Lo sviluppatore definisce in anticipo un insieme di funzioni disponibili per il modello (ad esempio, API esterne) e ne descrive le firme e lo scopo, solitamente in formato JSON Schema.
2.  **Analisi della richiesta**. Durante il dialogo, il modello analizza l'intenzione dell'utente e decide autonomamente se, per rispondere, sia necessario invocare una delle funzioni definite.
3.  **Generazione della chiamata**. Se è richiesta un'azione, l'LLM genera, al posto del testo normale, un output strutturato speciale (ad esempio, JSON con il nome della funzione e gli argomenti). Se invece la chiamata non è necessaria, il modello restituisce una risposta testuale ordinaria.
4.  **Esecuzione della funzione**. Il programma esterno (la shell del chatbot o un agente) riceve il JSON, esegue la chiamata effettiva alla funzione indicata con i parametri proposti e trasmette il risultato al modello.
5.  **Formulazione della risposta finale**. Il modello utilizza i dati ricevuti per generare la risposta definitiva all'utente<sup>[\[4\]](https://systems-analysis.info/int/Function_calling_(LLM)_(IT)#cite_note-openai_fc_announcement-4)</sup>.

Per gestire questo processo a più fasi durante il training dei modelli vengono utilizzati formati di dialogo speciali, ad esempio il markup ChatML di OpenAI, in cui, oltre ai ruoli di «utente» e «assistente», viene introdotto il ruolo di «funzione» per trasmettere i risultati delle chiamate.

## Applicazioni e vantaggi

La possibilità di invocare funzioni amplia notevolmente la gamma di compiti risolvibili con gli LLM.

- **Integrazione con API esterne**. Il modello può rispondere a richieste che richiedono informazioni aggiornate, invocando servizi esterni (ad esempio, per ottenere meteo, tassi di cambio, notizie).
- **Automazione delle azioni dell'utente**. Un LLM può eseguire attività di routine: inviare email, creare eventi nel calendario, effettuare ordini negli shop online.
- **Accesso a database e analisi**. Le richieste in linguaggio naturale possono essere tradotte in chiamate ad API interne o query SQL per l'estrazione e l'analisi dei dati.
- **Estrazione di informazioni strutturate**. L'LLM può autonomamente estrarre fatti da un testo lungo (ad esempio, nomi, date, indirizzi) e restituirli sotto forma di array JSON strutturato, comodo per la successiva elaborazione programmatica.

## Problemi di sicurezza

Ampliando le capacità dei modelli, il Function Calling introduce al contempo nuovi rischi.

- **Output non verificati**. L'interazione del modello con strumenti esterni deve essere attentamente protetta. Se il modello riceve dall'API un valore dannoso o errato, potrebbe includerlo nella risposta o invocare un'altra funzione basandosi su di esso, con conseguenze imprevedibili.
- **Attacchi tramite argomenti di funzione**. I ricercatori hanno scoperto vulnerabilità specifiche della modalità Function Calling. Nel 2025 è stato dimostrato un attacco denominato «Il lato oscuro del Function Calling». La sua essenza consiste nel proporre al modello una «funzione» speciale, all'interno degli argomenti della quale è nascosta un'istruzione proibita (*jailbreak payload*). Il modello, seguendo il principio della chiamata di funzione, genera argomenti contenenti contenuto che viola le regole, eludendo in tal modo i filtri di moderazione. I test hanno mostrato il successo dell'attacco in oltre il **90%** dei casi su sei modelli moderni, tra cui GPT-4 e Claude<sup>[\[2\]](https://systems-analysis.info/int/Function_calling_(LLM)_(IT)#cite_note-dark_side_paper-2)</sup>.

Per prevenire tali incidenti si raccomanda di fornire al modello solo strumenti affidabili, implementare la conferma dell'utente prima dell'esecuzione di azioni critiche e utilizzare prompt «difensivi» specifici e una rigorosa verifica degli argomenti per la presenza di contenuti pericolosi.

## Riferimenti

- Annuncio ufficiale del Function Calling da parte di OpenAI
- Pagina del progetto Gorilla LLM
- Apideck (2024). *An Introduction to Function Calling and Tool Use*. Apideck Blog.
- LangChain (2025). *Tool Calling (Documentation)*. LangChain Docs.
- Mistral AI (2025). *Function Calling – Documentation*. Mistral Docs.
- Hopsworks (2024). *What is Function Calling with LLMs?*. Hopsworks Dictionary.
- Hopsworks (2024). *Unlocking the Power of Function Calling with LLMs*. Hopsworks Blog.
- University of California, Berkeley (2025). *Berkeley Function Calling Leaderboard V3*. Online Resource.

## Bibliografia

- Wu, Z. et al. (2025). *The Dark Side of Function Calling: Pathways to Jailbreaking Large Language Models*. ACL 2025.
- OpenAI (2023). *Function Calling and Other API Updates*. OpenAI Blog.
- Schick, T. et al. (2023). *Toolformer: Language Models Can Teach Themselves to Use Tools*. arXiv:2302.04761.
- Patil, S. G. et al. (2023). *Gorilla: Large Language Model Connected with Massive APIs*. arXiv:2305.15334.
- Liu, W. et al. (2024). *ToolACE: Winning the Points of LLM Function Calling*. arXiv:2409.00920.
- Yao, S. et al. (2022). *ReAct: Synergizing Reasoning and Acting in Language Models*. arXiv:2210.03629.

## Note

1.  <span id="cite_note-hopsworks_whatis-1">[↑](https://systems-analysis.info/int/Function_calling_(LLM)_(IT)#cite_ref-hopsworks_whatis_1-0) «What is Function Calling with LLMs?». *Hopsworks*. <a href="https://www.hopsworks.ai/dictionary/function-calling-with-llms" class="external autonumber" rel="nofollow">[1]</a></span>
2.  <span id="cite_note-dark_side_paper-2">↑ <sup>[2.0](https://systems-analysis.info/int/Function_calling_(LLM)_(IT)#cite_ref-dark_side_paper_2-0)</sup> <sup>[2.1](https://systems-analysis.info/int/Function_calling_(LLM)_(IT)#cite_ref-dark_side_paper_2-1)</sup> Wu, Z. et al. «The Dark Side of Function Calling: Pathways to Jailbreaking Large Language Models». *Proceedings of the 2025 Conference on Empirical Methods in Natural Language Processing*, 2025. <a href="https://aclanthology.org/2025.coling-main.39.pdf" class="external autonumber" rel="nofollow">[2]</a></span>
3.  <span id="cite_note-toolformer_paper-3">[↑](https://systems-analysis.info/int/Function_calling_(LLM)_(IT)#cite_ref-toolformer_paper_3-0) Schick, T. et al. «Toolformer: Language Models Can Teach Themselves to Use Tools». *arXiv:2302.04761*, 2023. <a href="https://arxiv.org/abs/2302.04761" class="external autonumber" rel="nofollow">[3]</a></span>
4.  <span id="cite_note-openai_fc_announcement-4">↑ <sup>[4.0](https://systems-analysis.info/int/Function_calling_(LLM)_(IT)#cite_ref-openai_fc_announcement_4-0)</sup> <sup>[4.1](https://systems-analysis.info/int/Function_calling_(LLM)_(IT)#cite_ref-openai_fc_announcement_4-1)</sup> «Function calling and other API updates». *OpenAI*, 2023. <a href="https://openai.com/index/function-calling-and-other-api-updates/" class="external autonumber" rel="nofollow">[4]</a></span>
5.  <span id="cite_note-gorilla_site-5">[↑](https://systems-analysis.info/int/Function_calling_(LLM)_(IT)#cite_ref-gorilla_site_5-0) «Gorilla: Large Language Model Connected to Massive APIs». *University of California, Berkeley*. <a href="https://gorilla.cs.berkeley.edu/" class="external autonumber" rel="nofollow">[5]</a></span>
