Vaig començar a fer el seguiment dels meus entrenaments a ChatGPT. Repeticions, pesos, com es va sentir la sessió. Al cap d'unes setmanes li vaig demanar que comparés l'actuació d'avui amb les sessions anteriors. Em va donar una comparació segura i detallada. Els números estaven equivocats.

No una mica apagat. Incorrecte. Citava sessions que no coincideixen amb les que realment havia registrat. Vaig tornar a la meva història de converses. Les dades amb les que estava "comparant" no existien en la forma que reclamava. Alguns semblaven un resum amb pèrdues del que li havia explicat setmanes abans. Alguns semblaven inventats.

El diagnòstic natural és l'al·lucinació. El model va inventar coses. No ho he pogut confirmar. ChatGPT no havia emmagatzemat mai les dades originals? Havia emmagatzemat alguna cosa i després l'havia resumit? La memòria havia anat a la deriva entre sessions? No tenia manera de veure què creia el sistema a la data en què vaig registrar aquestes sessions, o si mai havia tingut els números reals. No podia descartar al·lucinacions. Tampoc podria descartar la corrupció.

Aquesta incapacitat per distingir és el veritable problema. Amb la majoria de sistemes de memòria AI, no podeu saber quin mode de fallada esteu veient. L'eina de diagnòstic no existeix. Gairebé ningú l'està construint.

## Dos modes d'error, no un

La indústria té una paraula per a "el model va dir alguna cosa malament": al·lucinació. És el conjunt per a cada sortida incorrecta. Quan els agents utilitzen memòria persistent, hi ha dos modes de fallada diferents. Necessiten diferents solucions.

**L'al·lucinació** és una fallada a nivell de model. El LLM genera contingut sense cap base en la seva entrada. La recuperació va estar bé. La generació ha anat malament. Les correccions són a nivell de model: millor connexió a terra, generació augmentada per la recuperació, descodificació restringida, cadenes de verificació.

**La corrupció de la memòria** és una fallada a nivell d'infraestructura. Les dades emmagatzemades són incorrectes. El model el recupera fidelment. La resposta sembla correcta perquè la recuperació era correcta. El que es va recuperar havia canviat.

La corrupció de la memòria supera tots els controls dissenyats per a al·lucinacions. El passatge coincideix amb la consulta. El model cita la seva font. La sortida es basa en les dades emmagatzemades. Cada barana diu que la resposta es basa en informació real. La informació és incorrecta.

## Per què la corrupció és la predeterminada

Cada categoria principal de memòria d'agent emmagatzema l'estat mutable per defecte.

La memòria de la plataforma (ChatGPT, Claude, Gemini, Copilot) sobreescriu les entrades a l'actualització. No hi ha cap rastre de versions. Els sistemes de recuperació (Mem0, Zep, LangChain Memory) fusionen o substitueixen les memòries quan es consoliden.

Els sistemes basats en fitxers (markdown, JSON) es mantenen mutables tret que afegiu git. Git us ofereix una història real i diferències per a petites reposicions. [S'escala malament a escala de gigabytes](https://x.com/garrytan/status/2040797478434549792) per a les dades escrites per l'agent, i pocs equips les tracten com un registre d'escriptura anticipada per a la memòria.

Les bases de dades estàndard (SQLite, Postgres) poden implementar l'obtenció d'esdeveniments, taules temporals i activadors d'auditoria. El seu camí predeterminat encara es sobreescriu: `ACTUALITZACIÓ` substitueix la fila i el valor antic desapareixerà.

Cap d'aquests conserva [historial versionat o impedeix la mutació silenciosa](/memory-garantees) fora de la caixa. Qualsevol d'ells *podria*. Gairebé cap * ho fa*.

Fins i tot els dissenys nous pensats poden caure en la mateixa trampa. L'[especificació GBrain] de Garry Tan (https://gist.github.com/garrytan/49c88e83cf8d7ae95e087426368809cb) encerta molt: SQLite, FTS5, cerca vectorial, MCP des del primer dia. L'especificació encara reescriu la veritat compilada en lloc d'afegir-hi. El vostre agent reescriu 7.471 pàgines amb una mala fusió. La versió equivocada esdevé canònica. Sense pista d'auditoria. Arquitectura neta, mateix model de mutació.

Aquest no és un mal llançament. És una cultura de referència per a tota la categoria. Mètriques de recuperació de pistes d'adopció, estrelles i finançament: record a k (sovint escrit R@k), precisió, latència, ràtio de compressió. Aquestes mètriques importen. És necessària una bona recuperació. No n'hi ha prou quan els agents escriuen a la seva pròpia memòria. Cap punt de referència àmpliament utilitzat prova què passa amb les dades emmagatzemades després d'escriure'ls.

[MemPalace](https://github.com/milla-jovovich/mempalace) és un exemple recent. El projecte va assolir 19.000 estrelles de GitHub en dos dies amb "puntuació de referència perfecta". [Anàlisi independent](https://penfieldlabs.substack.com/p/milla-jovovich-just-released-an-ai) va trobar que els números de titulars eren [mètriques de recuperació de memòria, no precisió d'extrem a extrem](https://github.com/milla-jovovich/mempalace/issues/27). La còpia de llançament enganyosa és un problema de MemPalace. L'estructura d'incentius és el problema de la categoria: 19.000 estrelles per a les puntuacions de recuperació, zero preguntes sobre la integritat de l'escriptura. Supermemory, Mem0 i almenys una dotzena d'altres que segueixo competeixen en el mateix eix. Cap publica mètriques sobre si els fets emmagatzemats sobreviuen a una setmana d'escriptura de l'agent sense canvis.

Per a les aplicacions tradicionals, l'estat mutable està bé. Per a la memòria de l'agent és un problema. Els agents escriuen sovint, entre sessions, de vegades amb conflictes. Dues sessions escriuen valors diferents per al mateix camp. L'última escriptura guanya. El primer valor s'esvaeix. No s'avisa ningú. No hi ha cap registre que mai fos diferent.

El resum basat en LLM empitjora això. Els sistemes fusionen registres antics en nous resums. El resum substitueix els originals. Si la fusió era incorrecta (dues persones es van fusionar en una, s'ha caigut un detall, una ambigüitat s'ha resolt malament), els originals han desaparegut. No podeu comparar el resum amb el que va substituir. El que va substituir ja no existeix.

Això no és teòric. Quan vaig [recuperar la meva base de dades de producció](/posts/how-i-lost-and-recovered-6000-memories) després d'esborrar-la, vaig tenir còpies de seguretat de diferents dates. Podria comparar l'estat de l'entitat al llarg del temps. Algunes entitats difereixen entre les còpies de seguretat del 3 i el 9 de març. En un sistema de només adjuntar, tots dos valors sobreviuen com a observacions marcades de temps. En un sistema mutable, només sobreviu el més recent. Mai sabríeu que existia el valor anterior.

## L'auditoria ningú la realitza

La majoria dels equips comproven si hi ha al·lucinacions. Verifiquen que la sortida del model està basada en el context recuperat. Comproven si el model inventa fets.

Gairebé ningú comprova si els fets emmagatzemats han canviat. Pregunta:

**Podeu veure què ha canviat?** Si un valor és diferent del de la setmana passada, podeu veure els dos valors? Quan va canviar i què el va provocar?

**Pots tornar a reproduir l'estat passat?** Pots reconstruir el que l'agent creia en una data concreta, no només la instantània d'avui?

**Podeu rastrejar la font?** Per a qualsevol fet emmagatzemat, podeu anomenar l'agent, la sessió i l'entrada que l'ha creat o canviat?

Si alguna resposta és no, la corrupció pot ser indetectable. No impossible. Indetectable. Podria estar passant ara. No ho sabríeu fins que es trenqui alguna cosa aigües avall i algú us pregunti d'on prové aquest número.

## Què ho impedeix

La corrupció de la memòria és estructural, no un problema model. Les millors indicacions i la recuperació més intel·ligent no ho solucionen. La solució és arquitectònica.

**Immutabilitat.** Les observacions no canvien després de l'escriptura. La nova informació és una nova observació. Els vells es queden. L'estat de l'entitat es deriva de l'historial complet, no d'una sola fila mutable.

**Procedència.** Cada fet porta metadades: quin agent l'ha escrit, quan, des de quina entrada, en quina sessió. Quan un valor sembla incorrecte, rastreges la custòdia. Quan dos agents entren en conflicte, veus tots dos i tria.

**Reproducció temporal.** L'estat prové d'un registre d'observació, no d'una fila actual. Podeu reconstruir la creença en qualsevol moment passat. La corrupció es fa visible quan els estats actuals i passats divergeixen.

Aquestes propietats costen alguna cosa. Els registres només d'afegir creixen. Recalcular l'estat a partir de la història costa més que llegir una fila. Els sistemes que es consoliden són l'emmagatzematge comercial i la latència amb l'historial complet. La immutabilitat intercanvia escriptures senzilles i emmagatzematge ajustat per auditar-se. Aquest comerç val la pena quan els agents escriuen memòria que afecta els resultats reals. Per a molts casos de producció, ja ho és.

Vaig incorporar aquestes propietats a [Neotoma](https://neotoma.io). No vaig predir tots els escenaris de corrupció. Vaig seguir colpejant un estat mutable que produïa respostes incorrectes sense cap manera de diagnosticar-les. Neotoma necessita temps d'instal·lació. No és una configuració zero. No editeu la memòria com a fitxer senzill. Són costos reals. L'aposta és que la història versionada, la procedència i la reproducció importen més que la comoditat un cop els agents escriuen l'estat que impulsa les decisions.

## El risc compost

La corrupció es composa d'una manera que l'al·lucinació normalment no ho fa. Una resposta al·lucinada sovint mor quan algú la llegeix i diu "això està malament". Una conversa, un error.

Persisteix una entrada de memòria danyada. Es recupera de nou. Modela decisions posteriors. Les meves comparacions d'entrenament no van fallar ni una sola vegada. Cada comparació posterior es basava en les mateixes dades derivades o que falten. Cada resposta semblava bé sola. L'error era invisible tret que fes una comprovació creuada dels meus propis registres, cosa que anul·la el punt d'un rastrejador d'agents.

Escala això a apostes reals. Un correu electrònic incorrecte a la memòria significa que cada enviament va a la persona equivocada fins que algú s'adona. Un import en dòlar incorrecte significa més d'una factura incorrecta.

La corrupció viu a la capa de memòria, no al model. La depuració normal no ho fa. El model funciona. La recuperació funciona. Les dades emmagatzemades són incorrectes o no s'han emmagatzemat mai correctament. No podeu dissenyar una infraestructura passada que deixa caure la seva pròpia història.

## Què comprovar

Si utilitzeu la memòria de l'agent, proveu-ho. Trieu cinc entitats que el vostre agent va emmagatzemar fa més de dues setmanes. Recuperar-los. Compareu els valors actuals amb el que creieu que vau emmagatzemar originalment.

Si no podeu fer aquesta comparació, el vostre sistema no conserva l'historial. Ets cec a la corrupció. Això no vol dir que hagi passat corrupció. Vol dir que no sabríeu si ho hagués fet. "No ho sabríem" no és suficient un cop els agents gasten diners, toquen clients o desencadenen accions del món real.

Un punt de referència seriós d'integritat d'escriptura funcionaria així. Llavor N entitats amb valors coneguts. Executeu sessions d'agent M que llegeixin i escriguin les mateixes entitats. Espera una setmana. Compara els valors emmagatzemats amb els originals.

Dues puntuacions importen. **Percentatge de deriva:** quina proporció de valors ha canviat sense una correcció explícita de l'usuari? **Detectabilitat:** per a cada canvi, pot el sistema mostrar quan va passar, què el va causar i el valor anterior? Tampoc avui no hi ha informes de referència de memòria d'IA àmpliament utilitzats.

La indústria té raó per lluitar contra les al·lucinacions. El problema més difícil ja es troba dins de sistemes que semblen saludables, perquè gairebé ningú verifica si els fets emmagatzemats segueixen sent els fets emmagatzemats.

## Quan la indústria començarà a preguntar

La integritat d'escriptura deixa de ser opcional quan els errors de l'agent tenen un preu. Avui en dia molts errors reben una regeneració o un ajust ràpid. Els agents cada cop [paguen, envien correus electrònics, executen codi i actuen al món real](/posts/six-agentic-trends-betting-on). Quan un fracàs costós rastreja la memòria derivada en lloc de la confabulació del model, l'autopsia afegeix una segona pregunta després de "el model va al·lucinar?" Han canviat les dades emmagatzemades?

Aquesta pressió no es mantindrà dins de les empreses amb equips de compliment. [La pressió d'auditoria es mou cap a la baixa](/posts/six-agentic-trends-betting-on) sempre que els errors costen diners. Els consultors, els constructors individuals i els petits equips necessitaran la mateixa resposta: què va creure el sistema quan va produir aquesta sortida? Si la vostra capa de memòria no ho pot dir, la capa de memòria és la responsabilitat.

El detonant és econòmic, no filosòfic. La primera autopsia pública que culpa a la memòria corrupta en silenci, no a les al·lucinacions, canviarà la manera com la indústria parla de fiabilitat. Aquesta autopsia és un quan, no un si.