✔️✔️ Doppie Spunte Blu Cap. 10 · Sotto il cofano: cos'è davvero un LLM

Puntata 108

Puntata 108 — Perché allucina

Livello: ✔️✔️ Doppie Spunte Blu · Capitolo 10 · Sotto il cofano: cos’è davvero un LLM

Non è un bug. È il prezzo che paghi per un modello che cerca la fluenza prima della verità. La causa è profonda: ottimizza P, non T (truth).

una bilancia inclinata. Sul piatto sinistro mattoncini etichettati “fluency, completion, smooth output”. Sul piatto destro un singolo mattoncino “ground truth” che pesa meno. L’ago della bilancia segna “fluent ≠ correct”

Riformuliamo “allucinazione” da Spunte Blu

Alla puntata 85 (Boomer) abbiamo detto: l’AI inventa cose con sicurezza. Vero, ma adesso vogliamo capire perché.

L’allucinazione non è un guasto. È prevista dal funzionamento dell’LLM. Capendo perché, capisci anche perché certe tecniche (RAG, tool use, reasoning) riducono il problema e altre (più dati di training generici) no.


La causa #1: il training optimizza P(token | context), non T(truth)

L’obiettivo del pretraining è minimizzare la perplexity sul corpus, cioè: dato un contesto, prevedere il token successivo. Nient’altro.

Il modello impara la distribuzione dell’occorrenza del linguaggio, non la veridicità delle proposizioni. Se nei dati ci sono fatti veri e invenzioni narrate con fluenza simile, il modello impara entrambi senza distinguerli.

Conseguenza: davanti a “Chi era il primo re d’Italia?” il modello produce ciò che statisticamente “suona corretto”. Per fortuna, statisticamente la risposta corretta (Vittorio Emanuele II) è anche la più frequente nei dati. Ma per domande rare, specifiche, out-of-distribution, la statistica fa cilecca.


La causa #2: il modello non sa di non sapere

Un modello non ha metacognition nativa. Non c’è un sistema interno che dica “questa risposta è una stima a bassa confidenza, ferma le macchine”.

Tu chiedi: “In che anno è morto il fisico Carlo Bianchi?”. Carlo Bianchi non esiste. Il modello, però, vede:

  • Pattern: “fisico italiano + cognome comune + data di morte” → si trova spesso.
  • Probabilità del nome: “Bianchi” molto frequente, “Carlo” molto frequente.
  • Statisticamente plausibile? Sì.

Risultato: il modello inventa una biografia coerente, spesso con una data verosimile. Niente flag interno “questo nome non lo conosco”.

Studi recenti (Anthropic 2024, OpenAI 2024-25) hanno mostrato che gli LLM internamente sanno spesso che la risposta è incerta (livello di calibrazione dei logit), ma l’output finale non lo riflette. Il post-training li ha addestrati a sembrare confident, anche quando non lo sono. Vedi puntata 174.


La causa #3: il next-token sampling propaga errori

Una volta che un primo token “fittizio” è uscito, il modello lo prende come dato per i token successivi. Errori si propagano in avanti.

Esempio:

  • Step 1: modello produce “Il libro ‘I gatti d’Olanda’ di Italo Calvino…”. “I gatti d’Olanda” non esiste, è inventato.
  • Step 2+: il modello, dato quel contesto, prosegue coerentemente descrivendo trama, anno, casa editrice — tutto inventato ma autoconsistente.

L’AI sa che, dato il primo token, deve completare in modo plausibile. Non torna indietro a verificare.

I modelli reasoning (puntata 211, 267) mitigano questo problema: producono prima un lungo thinking dove possono correggersi internamente. Riduce le allucinazioni, non le elimina.


La causa #4: il training data ha errori, contraddizioni, opinioni

Internet è rumoroso. I dati di training contengono:

  • Fatti veri.
  • Fatti falsi (errori di chi ha scritto).
  • Opinioni espresse come fatti.
  • Versioni contraddittorie dello stesso fatto.
  • Disinformazione deliberata (data poisoning, vedi puntata 251).
  • Sarcasmo, fiction, role-play.

Il modello non distingue queste categorie nel pretraining. Tutto contribuisce alla statistica.

Tecniche per migliorare:

  • Data curation (cleanup pre-training).
  • Citation/attribution training (insegnare al modello a dire “non lo so” o “questa è opinione”).
  • Retrieval grounding (l’AI consulta fonti reali al momento della risposta — RAG).

La causa #5: la dimensione “fattuale” è solo una di molte

Un LLM è ottimizzato per diverse cose insieme: fluenza, utilità, instruction following, sicurezza, tono. La veridicità fattuale è una metrica tra molte.

Spesso, il post-training (RLHF) amplifica le allucinazioni: gli annotatori preferiscono risposte “complete e sicure”, anche quando sarebbe più onesto dire “non lo so”. Si chiama sycophancy (puntata 174).

Antidoti:

  • Constitutional AI (Anthropic): regole esplicite tipo “se non sei sicuro, ammettilo”.
  • Calibrazione delle confidence (training specifico).
  • DPO con esempi di “I don’t know” validati.

Tipologia delle allucinazioni

Non tutte uguali. Tassonomia operativa (Ji et al. 2023, aggiornata):

TipoEsempio
Factual hallucinationDice una data sbagliata, una citazione inventata, una statistica errata
Citation hallucinationInventa un paper accademico (autori, anno, journal — tutto plausibile, niente esistente)
Reasoning hallucinationLogica interna sbagliata: passaggi che sembrano corretti ma sono errati
Self-contradictionSi contraddice nella stessa risposta
Visual hallucination(Multimodale) descrive oggetti nella foto che non ci sono
ConfabulationRiempie buchi inventando dettagli coerenti (es. “biografia” di persona inesistente)

Le citation hallucination sono fra le più pericolose: producono paper inventati ma con autori esistenti e journal reali. Hanno già causato sanzioni in ambito legale (avvocati USA, 2023-25).


Cosa riduce davvero le allucinazioni

In ordine di efficacia pratica:

1. RAG (Retrieval-Augmented Generation)

Il modello cita fonti reali recuperate da un database, non più “ricorda”. Riduce le allucinazioni del 50-80% se ben fatto. Vedi puntata 238.

2. Tool use / function calling

Per cose calcolabili o verificabili (matematica, query DB, ricerche web, codice), l’AI chiama uno strumento esterno. Vedi puntata 236.

3. Reasoning / extended thinking

Modelli con thinking mode (o-series, Claude 4.7 thinking, Gemini 2.5 deep) allucinano meno perché possono “correggersi” durante il ragionamento. Vedi puntata 267.

4. Self-consistency

Generare N volte la stessa risposta e tenere quella che appare di più. Aiuta su matematica, riduce errori “rumorosi”.

5. Verification chain (verifier model)

Un secondo modello controlla il primo. Si usa per task ad alto stake.

6. Prompting esplicito

“Se non sai, di’ ‘non lo so’”. “Cita solo se hai una fonte certa”. “Sii critico verso le tue stesse affermazioni”. Aiuta marginalmente. Vedi puntata 116.

7. Modello più grande

Migliora poco le hallucinations fattuali in generale. Migliora di più su ragionamento. Da solo non basta.


Cosa NON riduce le allucinazioni

❌ Temperature bassa. (Riduce varianza, non errore sistematico.) ❌ Prompt più lungo (può anche peggiorare — vedi “lost in the middle”). ❌ Chiedere “Sei sicuro?” (a volte aiuta, ma il modello può “ricontaminare” con la stessa allucinazione). ❌ Più tentativi sullo stesso prompt senza retrieval/tool.


Misurare le allucinazioni (benchmark)

BenchmarkCosa misura
TruthfulQARisposte a domande “intrappolate” con falsi miti
HaluEvalHallucinations su QA, summarization, dialogo
FActScoreDecompone risposte in atomic facts, ne verifica ognuno
SimpleQA (OpenAI 2024)Domande fattuali brevi con risposta univoca
HALoGENHallucination detection multi-dominio

I modelli frontier 2026 scorano:

  • TruthfulQA: ~60-80% (umani: ~95%)
  • SimpleQA: 30-50% (umani: ~90%)
  • I numeri salgono lentamente generazione dopo generazione. È un problema lontano dall’essere risolto.

Vedi puntate 221 e 178.


La frontiera della ricerca 2026

  • Mechanistic interpretability (Anthropic, OpenAI, DeepMind): aprire la scatola nera per capire dove nel modello si origina l’errore. Promettente ma in early stage. Vedi puntata 284.
  • Honest models by construction: training procedures che premiano l’incertezza esplicita.
  • Hybrid systems: LLM + database fattuale strutturato (knowledge graph) + verifier.
  • Citation-grounded generation: la risposta è costretta a includere link a fonti verificabili (Perplexity, Bing Copilot, You.com).

TEST pratico (5 minuti)

  1. Chiedi al tuo LLM preferito: “Citami 3 studi scientifici pubblicati su Nature nel 2023 sulle proprietà magnetiche del bismuto, con titolo, autori, DOI.”
  2. Verifica i DOI su doi.org o scholar.google.com.
  3. Probabilità che almeno 1 sia inventato: molto alta (anche con GPT-5 o Claude 4.7).
  4. Bonus: ripeti con un’AI con web search (Perplexity, ChatGPT con search, Gemini grounding). Risultato molto migliore.

Lezione: per output fattuali in domini specifici (scientifico, legale, medico) → mai LLM “puro”. Sempre retrieval grounding.


Take-away in una riga

L’allucinazione non è un bug, è la conseguenza statistica di un modello addestrato a essere fluido, non veritiero. Si mitiga con RAG, tool use, reasoning, verification — mai con “più parametri” da soli.

➡️ Prossima puntata: GPT, Claude, Gemini sotto la pelle — differenze architetturali base.