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).
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):
| Tipo | Esempio |
|---|---|
| Factual hallucination | Dice una data sbagliata, una citazione inventata, una statistica errata |
| Citation hallucination | Inventa un paper accademico (autori, anno, journal — tutto plausibile, niente esistente) |
| Reasoning hallucination | Logica interna sbagliata: passaggi che sembrano corretti ma sono errati |
| Self-contradiction | Si contraddice nella stessa risposta |
| Visual hallucination | (Multimodale) descrive oggetti nella foto che non ci sono |
| Confabulation | Riempie 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)
| Benchmark | Cosa misura |
|---|---|
| TruthfulQA | Risposte a domande “intrappolate” con falsi miti |
| HaluEval | Hallucinations su QA, summarization, dialogo |
| FActScore | Decompone risposte in atomic facts, ne verifica ognuno |
| SimpleQA (OpenAI 2024) | Domande fattuali brevi con risposta univoca |
| HALoGEN | Hallucination 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)
- Chiedi al tuo LLM preferito: “Citami 3 studi scientifici pubblicati su Nature nel 2023 sulle proprietà magnetiche del bismuto, con titolo, autori, DOI.”
- Verifica i DOI su doi.org o scholar.google.com.
- Probabilità che almeno 1 sia inventato: molto alta (anche con GPT-5 o Claude 4.7).
- 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.