← Torna al sito 2026-07-04
Aurelio Capriello · nota tecnica

Cosa mi hanno insegnato mesi passati a misurare confabulazione e allucinazione negli agenti LLM

Cinque lezioni dai benchmark sulla memoria contro l'allucinazione — inclusa la volta in cui il mio stesso metro mi ha mentito di 4×, e l'attacco a falsa memoria che inganna ogni giudice di entailment.

Per mesi, la maggior parte del mio lavoro su Verimem non è stata scrivere feature — è stata misurare i fallimenti. Costruire harness, eseguire benchmark avversariali, e guardare i numeri sgretolarsi sotto scrutinio. Queste sono le cinque lezioni sopravvissute. Ogni numero qui sotto sta nel repo pubblico.

1. Allucinazione e confabulazione sono fallimenti diversi

L’allucinazione è generazione senza fondamento: il modello produce testo non supportato da alcuna fonte. La confabulazione è peggio: una memoria falsa — il sistema ha salvato qualcosa di non vero e ora lo richiama con piena sicurezza, senza provenienza. Un’allucinazione è una bugia una tantum; una confabulazione è una bugia con il posto fisso. I trucchi di retrieval mitigano la prima. Solo il controllo di ammissione in scrittura previene la seconda, perché una volta salvato il fatto falso, ogni lettura a valle lo eredita.

2. Il fix non rende gli agenti più corretti — li rende onesti

Il risultato più frainteso di questo campo. Il gate in scrittura di Verimem ha tagliato le risposte allucinate in un test avversariale dal 95,9% al 12,2%. Sembra che l’agente sia diventato più bravo — non lo è. La correttezza è rimasta quasi piatta per costruzione del test; ciò che è cambiato è che la confabulazione è diventata astensione (l’omissione è passata dal 3% all’85%). L’agente ha imparato a dire «non lo so».

Se un vendor ti mostra la riduzione delle allucinazioni senza metterci accanto i numeri di astensione e recall, ti sta mostrando un terzo del quadro.

3. Il tuo metro ti mentirà, finché un giudice indipendente non lo calibra

La lezione più costosa. Sul benchmark di memory-updating di HaluMem, il mio matcher locale a similarità di embedding dava la nostra accuratezza a 0,66. Un passaggio stratificato con un giudice LLM indipendente, con la rubrica ufficiale, l’ha corretta a 0,24 — il matcher confondeva «stesso argomento» con «stesso fatto». Ricalibrando sui verdetti del giudice, il pavimento conservativo è sceso a 0,16.

Tre strati di profondità, gli stessi dati: 0,66 → 0,24 → 0,16. Da allora la mia regola è assoluta: i matcher locali servono solo per il ranking relativo; i numeri assoluti vengono da giudici indipendenti e calibrati. Pubblico il numero corretto, non quello lusinghiero — ed è anche il motivo per cui ho ritrattato una statistica di punta dei primi tempi (un p-value pooled da un harness accoppiato male) e l’ho rieseguita in modo equo.

4. L’attacco più subdolo è la memoria falsa in bella vista

Il problema dell’attribuzione: un’affermazione sbagliata dell’assistente sta verbatim nella cronologia della conversazione. Ogni giudice basato solo sull’entailment la ammette — il testo è davvero «supportato dal» contesto, perché il contesto contiene la bugia. Nei nostri test un giudice LLM forte ammetteva il 40% di queste memorie false iniettate. Un piccolo modello locale, fine-tunato con negativi di interferenza, ne ammetteva l’8,6% — l’allievo ha battuto il maestro, perché il maestro era strutturalmente cieco sull’asse che contava: non «è implicato?» ma «chi l’ha detto, e la fonte merita fiducia?»

5. I risultati negativi sono portanti

L’idea del write-repair — a un rifiuto del gate, sostituire con lo span verbatim più vicino della fonte e riammetterlo — suonava ovviamente buona. Messa al banco, riciclava memorie false dentro lo store (ri-validare uno span contro la fonte che lo contiene è una tautologia) e il suo presunto beneficio era comunque evaporato. Falsificata, mai spedita. Il cimitero delle idee falsificate è documentato nel repo, perché un sistema che riporta solo le sue vittorie sta facendo marketing, non ingegneria.


Il filo conduttore: la fiducia nei sistemi AI non è una proprietà del modello — è una proprietà dell’architettura. La ottieni con il controllo di ammissione, la provenienza, la misura calibrata, e la disponibilità a pubblicare i numeri che fanno male.

Fonti: STATE.md e BENCHMARKS.md nel repo. Self-run, riproducibili, non auditati da terzi.