Perché questo importa per gli agenti: dalla memoria umana ai memory layers degli agent LLM
Sette capitoli sulla memoria umana — sensoriale, working, lungo termine, dichiarativa-procedurale, episodica-semantica, consolidamento, oblio — confluiscono qui in una mappa operativa per chi progetta agent. Niente equivalenze pericolose: analogie chiare, filiazioni dichiarate, e un elenco preciso di cosa manca davvero negli agent del 2026 rispetto al cervello che li ispira.
Smallville, marzo 2023. È una mattina simulata in una sandbox 2D che ricorda i vecchi giochi RPG, e Klaus Mueller — un agente LLM costruito da Joon Sung Park e collaboratori a Stanford — esce di casa con in mente un paper da scrivere sulla gentrificazione. Klaus non ha un corpo, non ha occhi, non vive in alcun senso fisicamente significativo del termine. Ma ha qualcosa che il framework che lo regge chiama memoria: una lista append-only di osservazioni timestampate (“8:02 — incontro Eddy Lin in caffetteria, parla del suo album”), un punteggio di importanza assegnato dall’LLM stesso al momento in cui ogni osservazione entra nel registro, un meccanismo di retrieval che ogni volta che Klaus deve decidere cosa fare ricombina recency, importance, e relevance in uno score, e una procedura di reflection che periodicamente fa rileggere a Klaus la propria storia recente e gli chiede di sintetizzarla in tre intuizioni di alto livello — che a loro volta vengono scritte nel registro come nuove osservazioni di tipo thought.
Klaus non è la working memory di Baddeley, non è l’ippocampo di un mammifero, non è il dorsolateral prefrontal cortex dei macachi di Goldman-Rakic. Ma chi ha disegnato Klaus — Park, O’Brien, Cai, Morris, Liang, Bernstein, Generative Agents: Interactive Simulacra of Human Behavior, UIST 2023 — ha guardato apertamente alla scienza cognitiva degli ultimi sessant’anni per decidere quali pezzi mettere e quali no. La loro mappatura è imperfetta. Lo dichiarano. Ed è esattamente nel punto in cui quella mappatura si incrina che vivono le decisioni interessanti per chi disegna agent oggi.
I sette capitoli precedenti — da memoria-sensoriale a oblio-funzioni — hanno descritto la memoria umana per quello che è: sette fenomeni dissociabili clinicamente, anatomicamente, funzionalmente. Questo capitolo fa l’operazione inversa: prende quei sette fenomeni e li mette accanto allo stack di un agent LLM 2024-2026, riga per riga. Il sotto-registro qui è esplicitamente operativo. Non stiamo facendo storia delle scienze cognitive. Stiamo decidendo cosa, dei loro risultati, ha valore concreto per chi progetta sistemi che ragionano su context, RAG, MCP, skill library.
Perché un ponte qui
Sezione intitolata “Perché un ponte qui”Sette capitoli sono molti. La macro-sequenza che si è chiusa con oblio-funzioni ha un peso specifico alto e una tentazione naturale: prendere ogni componente cognitivo e chiamarlo con il nome del pezzo AI più simile. Working memory diventa context window, LTM diventa pesi del modello, episodica diventa RAG, consolidamento diventa reflection, oblio diventa unlearning. Cinque equivalenze in una riga, e cinque modi di sbagliare predizioni quando si va a costruire qualcosa di reale.
Il ponte serve a fare due cose insieme. La prima è sintetizzare — non ripetere — i sette capitoli precedenti, estraendo da ciascuno l’insight specifico che vale per chi progetta agent. La seconda è disciplinare la mappatura. Ogni accostamento umano ↔ AI verrà classificato in modo esplicito: analogia didattica, filiazione storica documentata, equivalenza meccanica (rara), o assenza di analogo (più frequente di quanto la divulgazione lasci credere). La differenza fra i quattro casi non è terminologica: cambia la qualità delle predizioni che si possono fare.
C’è anche una ragione editoriale per il ponte. Le Parti successive della wiki — Anatomia di un LLM, Architetture moderne, Context Engineering, Agenti, Harness Engineering — useranno costantemente vocabolario preso a prestito dalla scienza cognitiva. Quando in context-anatomia (in preparazione) il context window verrà presentato come “ciò che l’LLM ha sotto gli occhi adesso”, o quando in memoria-agentica (in preparazione) si parlerà di episodic e procedural store, il lettore deve aver già metabolizzato cosa quei termini importano dalla cognizione umana e cosa no. Questo capitolo è il sigillo di quel lavoro.
Ricapitolare: sette capitoli, sette insight per chi progetta agent
Sezione intitolata “Ricapitolare: sette capitoli, sette insight per chi progetta agent”Riprendiamo i sette capitoli, uno alla volta. Per ognuno, una sintesi compatta del fenomeno e l’insight chiave per la progettazione di sistemi AI. Questa sezione è didattica, non esaustiva: rimanda al capitolo originale chi vuole il dettaglio.
Memoria sensoriale (cap. 63)
Sezione intitolata “Memoria sensoriale (cap. 63)”Il fenomeno: un buffer modality-specific, pre-attentivo, di alta capacità (~9-12 item visivi, partial report di Sperling 1960) e durata bassissima (~250-500 ms). Iconica per la visione, echoica per l’udito, raffinata da Coltheart, Cowan, Näätänen.
L’insight: nessun analogo diretto negli LLM. Un transformer riceve token discreti già emessi da un tokenizer; non c’è un canale ad alta banda continuo da bufferizzare prima dell’attenzione, perché l‘“attenzione” del transformer è applicata uniformemente a tutto il context con causal masking. Frame buffer in pipeline di computer vision, audio buffer in ASR streaming, KV cache nei transformer sono analogie didattiche al massimo — risolvono problemi simili (consegnare dati a un processore a banda inferiore) con meccanismi profondamente diversi. Chi progetta agent multimodali deve resistere alla tentazione di dire “il VLM ha qualcosa come memoria iconica”: non ce l’ha. Riceve frame patchificati in token, fine.
Working memory (cap. 64)
Sezione intitolata “Working memory (cap. 64)”Il fenomeno: il sistema multicomponente di Baddeley-Hitch 1974 — phonological loop, visuospatial sketchpad, central executive, episodic buffer (Baddeley 2000). Capacità reale ~4 chunks (Cowan 2001), non sette. Substrato neurale: persistent activity nei neuroni della dorsolateral prefrontal cortex (Funahashi-Bruce-Goldman-Rakic 1989), con modelli activity-silent come alternativa.
L’insight: il context window di un LLM è il candidato più diretto per analogia. Capacità limitata, contenuto attivo, accesso uniforme, manipolabile. Ma la somiglianza si ferma in fretta. Manca un central executive che monitori e re-direzioni; manca la struttura store + rehearsal; manca la doppia codifica visivo-verbale. Lost in the Middle (Liu, Lin, Hewitt, Paranjape, Bevilacqua, Petroni, Liang 2023, Lost in the Middle: How Language Models Use Long Contexts, TACL) mostra che gli LLM accedono peggio a informazioni nel mezzo del context: una U-shaped accuracy che ricorda — analogia, non filiazione — il primacy/recency umano, ma con cause completamente diverse (training distribution, attention sinks, position embeddings).
Memoria a lungo termine (cap. 65)
Sezione intitolata “Memoria a lungo termine (cap. 65)”Il fenomeno: non un magazzino unico ma un insieme di sistemi. Caso H.M. (Scoville-Milner 1957). LTP (Bliss-Lømo 1973). Engramma optogenetico (Liu, Ramirez, Pang, Puryear, Govindarajan, Deisseroth, Tonegawa 2012). Memoria distribuita nei pesi sinaptici; recupero come ricostruzione attiva, non lettura passiva.
L’insight: per l’LLM esistono due magazzini lungo-termine complementari. I pesi del modello dopo pretraining sono memoria parametrica compressa: contengono regolarità statistiche del corpus in forma distribuita, non interrogabile direttamente. Il vector store in un sistema RAG (Lewis et al. 2020, Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks) è memoria esterna esplicita interrogabile per somiglianza. La doppia struttura ricorda — analogia produttiva — la complementarietà ippocampo/neocorteccia, ma con un’asimmetria importante: nel cervello l’ippocampo precede temporalmente la neocorteccia (encoding fast, transfer slow), nello stack LLM i pesi sono congelati al pretraining e il vector store è il livello dinamico. Inversione di ruolo.
Memoria dichiarativa e procedurale (cap. 66)
Sezione intitolata “Memoria dichiarativa e procedurale (cap. 66)”Il fenomeno: la distinzione di Ryle 1949 (knowing-that vs knowing-how), formalizzata da John Anderson nei modelli ACT/ACT-R, ancorata anatomicamente da Squire 1986 (MTL per dichiarativa, gangli base e cervelletto per procedurale). Doppia dissociazione clinica (Korsakoff vs Parkinson). Proceduralization come trasformazione lenta di chunks dichiarativi in production rules.
L’insight: la mappatura su LLM è la più fertile della lista. I pesi dopo pretraining contengono competenza in larga parte procedurale — l’LLM “sa generare codice Python” senza poter articolare ogni regola che segue, esattamente come un programmatore senior che legge codice e ne capisce il bug senza saper enunciare la regola seguita. Il context window ospita conoscenza dichiarativa attiva (fatti recuperabili nel turno corrente). La skill library di un agent stile Voyager (Wang, Xie, Jiang, Mandlekar, Xiao, Zhu, Fan, Anandkumar 2023, Voyager: An Open-Ended Embodied Agent with Large Language Models) è procedurale esterna esplicita — l’opposto del tacito di Polanyi, perché ogni skill è codice ispezionabile e modificabile.
Memoria episodica e semantica (cap. 67)
Sezione intitolata “Memoria episodica e semantica (cap. 67)”Il fenomeno: la distinzione di Tulving 1972, raffinata in chiave fenomenologica nel 1985 (anoetic / noetic / autonoetic). Caso K.C. di Toronto (Rosenbaum et al. 2005): episodica devastata, semantica intatta. Mental time travel come funzione caratteristica dell’episodica. Hub-and-spokes (Patterson, Nestor, Rogers 2007) come modello anatomico della semantica. Constructive episodic simulation (Schacter-Addis 2007): ricordare e immaginare condividono substrato.
L’insight: un LLM puro è K.C. permanente. Ricca semantica nei pesi, nessuna episodica del proprio passato. Geva, Bastings, Filippova, Globerson 2023 (Dissecting Recall of Factual Associations in Auto-Regressive Language Models) hanno argomentato che i feed-forward layer del transformer fungano da memorie key-value associative — analogia hub-like che richiama Patterson-Nestor-Rogers, ma niente di più che analogia. Per dare a un agent qualcosa di simile a memoria episodica si costruiscono memory stream esterni: registri append-only di osservazioni con timestamp, indicizzati per retrieval. Generative Agents lo fa esplicitamente. Ma il pezzo che manca davvero è la coscienza autonoetic: l’agent legge la propria storia come testo, non la rivive. Tulving 1985 — il rivivere — non c’è.
Consolidamento (cap. 68)
Sezione intitolata “Consolidamento (cap. 68)”Il fenomeno: due processi su scale diverse. Synaptic consolidation (cascata molecolare NMDA → CaMKII → CREB → sintesi proteica, finestra ~6 ore, Davis-Squire 1984). System consolidation (dialogo ippocampo-corteccia durante slow-wave sleep, replay scoperto da Wilson e McNaughton 1994, sharp-wave ripples necessarie causalmente, Girardeau-Benchenane-Wiener-Buzsáki-Zugaro 2009). Modello CLS (McClelland-McNaughton-O’Reilly 1995): due sistemi complementari per evitare catastrophic forgetting.
L’insight: qui c’è la filiazione più solida fra cervello e AI nell’intero capitolo. Volodymyr Mnih e il team di DeepMind, nel paper DQN del 2015 (Human-level control through deep reinforcement learning, Nature 518:529-533), citano esplicitamente Wilson-McNaughton 1994 nel motivare l’uso di experience replay: l’agent conserva esperienze passate in un buffer e le ricampiona durante il training, ispirato al replay ippocampale. Filiazione dichiarata dagli autori, non inferita. Per gli agent LLM, il parallelo operativo è la reflection-as-summarization: periodicamente l’agent rilegge la propria storia recente, la sintetizza, e sostituisce le osservazioni raw con il riassunto. Reflexion (Shinn, Cassano, Berman, Gopinath, Narasimhan, Yao 2023, Reflexion: Language Agents with Verbal Reinforcement Learning) e Generative Agents implementano variazioni di questo pattern. È analogia operativa, non filiazione: il meccanismo non discende dal modello biologico, ma il problema risolto è simile.
Oblio (cap. 69)
Sezione intitolata “Oblio (cap. 69)”Il fenomeno: oblio come funzione, non bug. James 1890; Schacter 2001 (The Seven Sins of Memory); active forgetting molecolare (Rac1 in Drosophila, Akers 2014 sulla neurogenesi, Davis-Zhong 2017). Tassonomia delle cause: decay attivo, interferenza, retrieval failure, retrieval-induced forgetting (Anderson-Bjork-Bjork 1994).
L’insight: la parola “forgetting” in AI copre quattro problemi diversi, tutti chiamati con varianti dello stesso termine. Catastrophic forgetting (interferenza retroattiva nei pesi durante continual fine-tuning). Machine unlearning (compliance GDPR, “right to be forgotten”). Knowledge editing (ROME e MEMIT — Meng, Bau, Andonian, Belinkov 2022, Locating and Editing Factual Associations in GPT). Context curation (eviction policies, sliding window, LLMLingua compression). Nessuno di questi quattro è oblio funzionale nel senso di Schacter: nessuno è regolato adattivamente come Rac1 o la neurogenesi. Sono interventi tecnici locali, non operatori biologici evolutivi.
| Memoria umana (cognitive science) | Componente agent (LLM stack 2024-2026) | Tag |
|---|---|---|
| Sensory register (iconico/ecoico, ~250 ms) | (nessun analogo diretto) | MISSING |
| Working memory (Baddeley, ~4 chunk) | Context window (8k-2M token) | ANALOGY |
| LTM dichiarativa semantica | Pesi pretrainati (parametrici) + RAG store (esterno) | ANALOGY |
| LTM dichiarativa episodica | Memory stream / cronologia conversazione / RAG | ANALOGY |
| LTM procedurale | Pesi pretrainati (skill) + tool/skill library (Voyager) | ANALOGY |
| Consolidamento (sinaptico + di sistema, replay nel sonno) | Reflection / summarization + fine-tune periodico | ANALOGY |
| Oblio (attivo, regolato) | Context pruning / unlearning / knowledge editing | ANALOGY |
Una nota su classi di affermazioni
Sezione intitolata “Una nota su classi di affermazioni”Prima di passare alla mappatura, una premessa metodologica. I capitoli precedenti hanno insistito sul disciplinare il vocabolario delle relazioni: analogia, filiazione, equivalenza, teorema. La distinzione vale doppio in un capitolo ponte, dove la tentazione di scivolare da un’analogia produttiva a un’equivalenza meccanica è massima — il lettore già accetta che certi pezzi si somiglino, e da lì alla pretesa che siano la stessa cosa il passo è breve.
Riprendiamo le quattro classi nel contesto AI:
- Analogia: un componente AI risolve un problema simile a un componente cognitivo, con meccanismi diversi. Esempio: context window come working memory. Utile per orientarsi, fragile per fare predizioni quantitative.
- Filiazione documentata: un sistema AI è stato progettato dichiaratamente ispirandosi a un meccanismo cognitivo, e gli autori lo dicono nei paper. Esempio: experience replay in DQN cita Wilson-McNaughton 1994. La filiazione produce predizioni più solide perché il design è stato vincolato dal modello biologico.
- Equivalenza meccanica: i due sistemi implementano lo stesso algoritmo, anche se a substrati diversi. Casi rari nel nostro dominio, e quasi sempre erronei se invocati senza prova formale.
- Mancanza: il componente cognitivo non ha alcun analogo strutturalmente simile nel sistema AI. Riconoscere questi casi è importante quanto riconoscere le analogie produttive.
In quanto segue ogni mappatura sarà classificata esplicitamente.
La mappatura sistematica
Sezione intitolata “La mappatura sistematica”Tabella sinottica. Ogni riga: componente umano, componente AI corrispondente, classe dell’affermazione, caveat principale.
| Memoria umana | Componente AI 2024-2026 | Classe | Caveat principale |
|---|---|---|---|
| Sensory register (iconic/echoic) | Frame buffer (CV), audio buffer (ASR), KV cache | Analogia debole / no analogo strutturale | Manca decadimento differenziale per feature, manca pre-attentivo distinto |
| Working memory (Baddeley) | Context window (token attivi nel turno) | Analogia produttiva | Manca central executive, manca distinzione store/rehearsal, manca doppia codifica |
| Phonological loop | (nessun analogo specifico) | Mancante | LLM non ha codifica acustico-fonologica separata |
| Visuospatial sketchpad | (parzialmente in VLM) | Analogia debole | Patch token in VLM non hanno la struttura analogica della rotation mentale |
| LTM dichiarativa semantica | Pesi pretraining (parametrica) + RAG store | Analogia forte | Recupero LLM è interpolation, non ricostruzione attiva à la Bartlett |
| LTM dichiarativa episodica | Memory stream (Generative Agents), conversation history, RAG personalizzato | Analogia | Manca autonoetic; l’agent legge, non rivive |
| LTM procedurale | Pesi pretraining (skill compresse) + skill library esplicita (Voyager) | Analogia mista | I pesi sono taciti, la skill library è esplicita: opposti su asse Polanyi |
| Priming | In-context learning, few-shot priming | Analogia debole | ICL ha proprietà sue, dibattute |
| Synaptic consolidation | Fine-tuning, gradient updates | Analogia | Niente finestra critica di 6 ore, niente sintesi proteica analoga |
| System consolidation (sleep replay) | Experience replay (DQN) | Filiazione documentata (Mnih 2015 cita Wilson-McNaughton) | Filiazione concettuale, non meccanica |
| Reflection / consolidation operativa | Reflexion, Generative Agents reflection | Analogia operativa | Periodicità decisa euristicamente, non SWS |
| Active forgetting (Rac1, neurogenesi) | (nessun analogo regolato) | Mancante | Catastrophic forgetting / unlearning / editing sono altri problemi |
| Schemi (Bartlett) | System prompt, persona | Analogia | Schema umano è plastico e implicito; system prompt è statico ed esplicito |
| Mental time travel | Simulazione narrativa via prompt | Analogia debole | Manca asimmetria temporale strutturale |
Quattro frameworks di riferimento
Sezione intitolata “Quattro frameworks di riferimento”I pattern descritti sopra sono distillati da quattro framework che valgono la lettura diretta. Li riassumiamo qui per dare nomi e date precisi.
CoALA — Cognitive Architectures for Language Agents
Sezione intitolata “CoALA — Cognitive Architectures for Language Agents”Theodore Sumers, Shunyu Yao, Karthik Narasimhan, Thomas Griffiths (Princeton), Cognitive Architectures for Language Agents, Transactions on Machine Learning Research 2024 (preprint arXiv:2309.02427 del settembre 2023). CoALA propone una tassonomia esplicita per agent LLM ispirata dichiaratamente alle architetture cognitive classiche (SOAR di Newell-Laird-Rosenbloom, ACT-R di Anderson).
Quattro tipi di memoria:
- working (context window: contenuto attivo del turno),
- episodic (interaction history: trace specifiche di esecuzioni passate),
- semantic (knowledge: fatti generali, esterni o nei pesi),
- procedural (LLM weights + skill code).
E due tipi di azione:
- inner (reasoning: scrittura nel proprio working memory),
- outer (grounding: tool calls, dialog, environment).
Il pregio di CoALA non è inventare componenti: è dare nomi consistenti a pezzi che gli ingegneri stavano già costruendo, riducendo l’ambiguità terminologica. Filiazione concettuale dichiarata: gli autori citano direttamente Newell e Anderson e ammettono che la loro mappatura è analogica.
Il limite di CoALA, come nota lo stesso paper, è che la mappatura è descrittiva, non prescrittiva. Dice come classificare i pezzi di un sistema esistente; non dice come progettarne uno nuovo. Ma è il punto di partenza canonico per chi voglia ragionare con vocabolario coerente.
MemGPT / Letta — virtual memory paging applicato agli LLM
Sezione intitolata “MemGPT / Letta — virtual memory paging applicato agli LLM”Charles Packer, Sarah Wooders, Kevin Lin, Vivian Fang, Shishir Patil, Ion Stoica, Joseph Gonzalez (Berkeley), MemGPT: Towards LLMs as Operating Systems, arXiv:2310.08560, ottobre 2023. Successivamente commercializzato come Letta.
L’idea è importare nel mondo agent il pattern OS della virtual memory: un main context (limitato, equivalente alla RAM) e un external context (illimitato, equivalente al disco), con il modello stesso che emette function_call per spostare dati fra livelli — l’equivalente di un page fault gestito dal processore.
Tre sotto-componenti del main context:
- system instructions: read-only, contengono persona e policy.
- working context: read-write, è un summary curato dal modello stesso che riassume chi è l’utente e su cosa stiamo lavorando.
- FIFO queue: i turni più recenti, con eviction quando lo spazio si esaurisce.
External context, due livelli:
- recall storage: history completa, queryable per keyword o embedding.
- archival storage: key-value persistente per fatti durevoli.
L’analogia OS-VM è didattica: il modello riceve esplicitamente le funzioni flush_messages, search_recall, archive_insert e impara a usarle in fase di training. La filiazione concettuale è verso l’informatica di sistema (Tanenbaum), non verso le neuroscienze — ma il problema risolto (gestire una working memory limitata davanti a uno store potenzialmente illimitato) è lo stesso che il sistema cervello-ippocampo affronta.
flowchart LR
OS["Observation stream<br/>(append-only, timestamped)"]
RS["Retrieval scoring<br/>α·recency + β·importance + γ·relevance"]
RF["Reflection<br/>(LLM: 3 high-level insight)"]
PL["Planning<br/>(decomposizione top-down)"]
AC["Action<br/>(in Smallville)"]
OS --> RS
RS -->|top-K| RF
RF -.->|insight scritti nello stream| OS
RF --> PL
RS --> PL
PL --> AC
Figura 2 — MemGPT virtual memory paging: main context (system / working / FIFO) and external context (recall / archival), with function calls as page faults; type=vector-svg
Generative Agents — memory stream + reflection
Sezione intitolata “Generative Agents — memory stream + reflection”Joon Sung Park, Joseph O’Brien, Carrie Cai, Meredith Morris, Percy Liang, Michael Bernstein (Stanford), Generative Agents: Interactive Simulacra of Human Behavior, UIST 2023, arXiv:2304.03442. Smallville, 25 agenti che vivono per due giorni simulati in una sandbox. Il loro sistema di memoria è il caso più articolato della letteratura accademica recente.
Tre meccanismi compongono l’architettura. Primo, il memory stream: una lista append-only di osservazioni, ciascuna con timestamp, descrizione in linguaggio naturale, e un punteggio di importanza che l’LLM stesso assegna alla creazione (1 = trivia, 10 = evento di vita). Secondo, il retrieval scoring: quando l’agent deve decidere cosa fare in un istante, una query (anch’essa in linguaggio naturale, e.g. “Klaus ha appena visto Eddy Lin: cosa sa di lui?”) seleziona i top-K record dal memory stream secondo uno score che combina recency (decay esponenziale sulle ore), importance (il punteggio salvato), relevance (cosine similarity fra embedding della query e embedding della osservazione). Terzo, la reflection: ogni N osservazioni, o quando la somma di importance accumulata supera una soglia, l’agent chiama l’LLM con un prompt che dice in sostanza “leggi le tue osservazioni recenti e produci tre intuizioni di alto livello su cosa ne hai imparato”. Le tre intuizioni — etichettate come thought — vengono scritte nello stream stesso, con il loro timestamp, e diventano oggetti di retrieval futuro. Il sistema così cattura due fenomeni cognitivi insieme: l’episodica come stream temporale, e una forma operativa di consolidamento-as-summarization che ricorda — analogia operativa, non filiazione meccanica — il replay di Wilson-McNaughton.
Voyager — skill library evolutiva
Sezione intitolata “Voyager — skill library evolutiva”Guanzhi Wang, Yuqi Xie, Yunfan Jiang, Ajay Mandlekar, Chaowei Xiao, Yuke Zhu, Linxi Fan, Anima Anandkumar (NVIDIA, Caltech, UT Austin), Voyager: An Open-Ended Embodied Agent with Large Language Models, arXiv:2305.16291, maggio 2023. Voyager è un agent che gioca a Minecraft, esplorando in autonomia e accumulando competenze. Il pezzo centrale per noi è la skill library: ogni volta che l’agent risolve con successo un sotto-task, il codice Python che ha scritto per risolverlo viene salvato come skill — una funzione con docstring — e indicizzato per embedding della docstring. In task futuri, l’agent può fare retrieval di skill rilevanti e comporle. Questa è memoria procedurale esterna esplicita: ogni passo della competenza è ispezionabile, modificabile, condivisibile. Il contrasto con il tacito umano (Polanyi) è netto e produttivo: i sistemi AI possono permettersi una procedurale completamente articolata perché operano in un mondo dove la “fluenza” del codice non costa attenzione.
Il pattern Voyager è stato ripreso in numerosi sistemi successivi (skill files in Claude Code, MCP server come repository di tool, library di funzioni in agenti di customer support). La filosofia è la stessa: invece di sperare che il modello “abbia imparato” una skill nei pesi durante pretraining, la si reifica come oggetto esterno — ispezionabile, versionabile, debugabile. È l’opposto della tendenza biologica: il cervello internalizza le skill (proceduralization à la Anderson 1982), l’agent le externalizza.
Pattern ingegneristici emergenti
Sezione intitolata “Pattern ingegneristici emergenti”I quattro framework appena visti, più la letteratura adiacente, hanno fatto emergere alcuni pattern ricorrenti nello stack 2024-2026. Li elenchiamo qui con il nome operativo con cui circolano.
Hierarchical memory. Tre o quattro livelli con politiche di promozione/eviction esplicite. Tipico: working (context window) → episodic (recent conversation, retrievable) → semantic (knowledge graph o vector store curato) → parametric (pesi). MemGPT è la versione canonica per il livello working ↔ episodic; CoALA dà la tassonomia completa.
Reflection loops. L’agent legge la propria storia recente e produce sintesi che sostituiscono o integrano le osservazioni raw. Generative Agents lo fa periodicamente; Reflexion lo fa dopo fallimenti per produrre lessons learned riusabili. Il pattern è anche detto summarization-as-consolidation: comprimere la storia per ridurre il footprint contestuale e generare astrazioni di livello superiore.
Selective context curation. Decisioni esplicite su cosa tenere e cosa scartare. Sliding window FIFO (la più semplice). Eviction by score (mantenere i top-K per importance + relevance + recency). LLMLingua e altre tecniche di context compression che riscrivono il contesto in forma più densa preservando la semantica.
Long-context vs RAG trade-off. Forse il pattern più discusso. Long context (Claude 200k, GPT-4 Turbo 128k, Gemini 1.5 1M+) permette reasoning fluido cross-chunk ma costa lineare/quadratico in token. RAG separa storage da inferenza: vector store esterno + retrieval top-K + small context. Niente è mutuamente esclusivo: i sistemi maturi usano long context per il reasoning attivo del turno e RAG per l’archivio. La regola pratica che si è sedimentata è che RAG vince su update (banale aggiungere documenti) e cost (pay-per-query del retriever è bassissimo); long context vince su coherence (reasoning cross-chunk senza chunk boundaries) e su task in cui non si sa a priori quali documenti rilevanti pescare.
Memory editing operativo. Per i fatti che cambiano nel tempo (la posizione attuale dell’utente, la data dell’appuntamento spostato), l’edit avviene a livello esterno (riscrivere il record nel KV store) e non nei pesi. Knowledge editing nei pesi (ROME, MEMIT) resta tecnica costosa e fragile, riservata a casi specifici (correggere fatti errati durante alignment, mai a runtime).
Filesystem-as-memory. Uno dei pattern più interessanti emersi con Claude Code, Cursor e altri agent di coding. Il filesystem stesso del progetto diventa un layer di memoria persistente: file come CLAUDE.md, STATUS.md, skill files in .claude/skills/ sopravvivono cross-session e vengono inclusi automaticamente nel context. È una forma di memoria esterna semantica e procedurale sotto forma di testo strutturato che l’utente può ispezionare, editare, versionare con git. Pattern senza precedenti diretti nella scienza cognitiva — niente di simile esiste nel cervello — ma analogo funzionale dei notes esterni in cognitive load theory.
Multi-agent shared memory. Quando più agent cooperano (orchestrator + sub-agent, swarm pattern), nasce la domanda di una memoria condivisa fra loro. Soluzioni che circolano nel 2024-2026: blackboard pattern (uno spazio comune scritto da tutti), message-passing puro (ogni agent ha la propria memoria, comunicano via messaggio), MCP (Model Context Protocol di Anthropic) come bus di accesso a risorse condivise (filesystem, database, API). Il parallelo cognitivo più vicino è la cognizione distribuita studiata da Edwin Hutchins (Cognition in the Wild, 1995) per equipaggi di navi e cabine di pilotaggio: la memoria non vive in un singolo individuo ma in un sistema socio-tecnico distribuito. Analogia produttiva: l’agent non è la mente, lo è il sistema.
Prompt caching come memoria infrastrutturale. Una forma di “memoria” emersa lato provider, non lato modello: prompt caching (Anthropic 2024, OpenAI cached input tokens) trattiene i KV calcolati per prefissi stabili del prompt in modo che richieste successive con lo stesso prefisso paghino una frazione (10-25%) del costo input. Operativamente cambia il design degli agent: conviene strutturare il prompt con la parte stabile (system prompt, persona, skill definitions, knowledge base statica) all’inizio e la parte variabile in coda. Niente di analogo nel cervello — è un’ottimizzazione di server farm — ma cambia profondamente l’economia dello stack agent.
La tensione fra memoria parametrica e memoria esplicita
Sezione intitolata “La tensione fra memoria parametrica e memoria esplicita”Un’osservazione che attraversa molti dei pattern visti merita una sezione propria. Lo stack agent del 2026 ospita memoria in due regimi profondamente diversi: parametrica (nei pesi del modello) e esplicita (in store esterni testuali, vector database, file). I due regimi hanno caratteristiche complementari, e i sistemi maturi imparano a usarli per quello che ognuno fa bene.
La memoria parametrica è densa, generalizzante, non interrogabile direttamente. Sa molte cose senza poterle elencare; sa farle senza poter spiegarle. Beneficia delle proprietà generalizzanti della rete neurale: se ha visto cento variazioni di un pattern, riesce a estrapolarne la centunesima senza averla mai vista. Difetto: non può essere editata facilmente, non può essere ispezionata, non può essere condivisa selettivamente.
La memoria esplicita è rara, specifica, interrogabile. Ogni record è un oggetto identificabile: una stringa, un embedding, un file. Editabile (riscrivi il record), ispezionabile (lo leggi), condivisibile (lo passi). Difetto: non generalizza da sola; serve un retriever sopra che riconosca quando attivarla, e quel retriever ha le sue limitazioni (similarity ≠ relevance, false positives, false negatives).
La regola pratica che si è sedimentata: in parametrica vanno le competenze, in esplicita vanno i fatti volatili e personalizzati. Pretraining decide cosa il modello sa fare; il context e il vector store decidono cosa il modello sa adesso, su quale dominio, per chi.
L’analogia con la cognizione umana è suggestiva ma asimmetrica. Negli umani, la memoria parametrica (pesi sinaptici di una vita) è enorme rispetto a quella esplicita (note esterne, libri letti, file). Negli agent del 2026 la proporzione si rovescia: i pesi sono fissati al pretraining, e gran parte della differenza fra un agent utile e uno inutile vive nei layer esterni. Conseguenza progettuale: investire in architettura della memoria esplicita (chunking, indexing, retrieval, ranking) ha ROI molto più alto che investire in fine-tuning per la maggior parte dei prodotti.
Cosa manca davvero negli agent rispetto al cervello
Sezione intitolata “Cosa manca davvero negli agent rispetto al cervello”Una sezione importante. Le mappature precedenti hanno mostrato dove le analogie funzionano. Qui guardiamo dove non funzionano — dove un componente cognitivo umano non ha alcun analogo strutturalmente equivalente nello stack agent del 2026. La lista non è esaustiva, ma copre i sette gap più rilevanti per il design.
Un avvertimento metodologico: “manca” non significa “fallimento del design”. Significa “non c’è, e probabilmente non serve nello stesso modo in cui serve al cervello”. Il cervello ha vincoli evolutivi (substrato lento, plasticità sinaptica, vita biologica, embodiment) che gli agent non hanno. Alcuni componenti cognitivi sono soluzioni a problemi che gli agent non si pongono. Distinguere fra “manca ma servirebbe” e “manca perché il problema è diverso” è esercizio di design maturo.
1. Central executive attivo.
Baddeley pone al centro della sua working memory un controller attentivo amodale che monitora i sotto-sistemi e re-direziona risorse. Le sue funzioni canoniche: dual-task coordination, switching fra task, inibizione di risposte automatiche dominanti, aggiornamento del contenuto della WM. Engle e collaboratori (2002) hanno argomentato che il working memory capacity umano sia in larga parte capacità del central executive di mantenere goal attivi sotto interferenza.
Negli agent LLM il loop di esecuzione è meccanico: il modello riceve il context, emette token, eventualmente chiama un tool, riceve il risultato, emette altri token. Non c’è un livello di metacognizione attiva che decida “sto andando fuori strada, devo ripianificare”. Pattern come Reflexion e self-correction tentano di simulare questo livello via prompting esplicito, ma è un layer aggiunto, non integrato. Il loop dell’agent è più simile a un automa a stati finiti che a un sistema con esecutivo metacognitivo. Il fatto che l’LLM riesca a fare reasoning passabile è prova che molto si può ottenere senza executive — non che l’executive non manchi.
2. Autonoetic consciousness.
Tulving 1985 distingue noetic (sapere che) da autonoetic (rivivere come io che persiste nel tempo). L’agent legge la propria storia come testo. Non c’è un io che si proietta dentro un episodio passato dal proprio punto di vista. Quando un agent ricostruisce “ieri ho parlato con Anna dell’allergia”, lo fa interpretando una stringa nella propria episodic store, non rivivendo una scena.
Conseguenza pratica: gli agent non hanno la stessa qualità di prospezione (mental time travel) che gli umani usano per pianificare. Possono generare scenari narrativi in linguaggio naturale, ma manca la struttura asimmetrica passato vissuto / futuro proiettato che fa da colla al sé umano. Schacter e Addis 2007 hanno mostrato che, nel cervello, ricordare il passato e immaginare il futuro condividono il default mode network — sono due usi della stessa funzione di simulazione episodica. Negli agent, generare un piano e ricordare un’azione passata sono due operazioni LLM distinte che non condividono substrato strutturale. La differenza è: il sé umano abita il proprio passato e il proprio futuro; l’agent li narra.
3. Sleep / offline consolidation integrato.
Il replay ippocampale di Wilson-McNaughton avviene durante slow-wave sleep, ogni notte, in modo automatico, su tutto ciò che è stato encoded la giornata. Le sharp-wave ripples sono necessarie causalmente al consolidamento (Girardeau 2009). Lo schema CLS di McClelland 1995 unifica due sistemi complementari proprio attorno a questo dialogo offline.
Niente di equivalente esiste nello stack agent. Reflection avviene quando un threshold viene superato; fine-tuning periodico avviene quando l’organizzazione decide di farlo. Nessun loop notturno automatico in cui l’agent “dorme” e ricompatta i propri ricordi nei pesi. La conseguenza: il transfer da episodic a semantic è sempre manuale (o assente), mentre nel cervello è la routine. Una direzione di ricerca futura plausibile è l’integrazione di idle-time replay nei sistemi agent: durante i momenti di bassa carica, l’agent ricampiona dal proprio episodic store e produce summary o aggiorna un knowledge graph interno. È un ersatz operativo del sleep replay, non una sua filiazione.
4. Active selective forgetting funzionale.
Akers, Cherasse, Conde-Sousa, Frankland (2014) e Davis-Zhong (2017) hanno mostrato che il cervello spende energia per dimenticare in modo regolato. Rac1 in Drosophila, neurogenesi adulta nel giro dentato dei mammiferi, AMPA receptor endocytosis: tre macchinari molecolari distinti dedicati a funzioni di forgetting differenti.
Niente di simile negli agent. Catastrophic forgetting nei pesi è interferenza non desiderata; machine unlearning è intervento forzato per compliance; context pruning è eviction euristica. Manca un meccanismo che, valutando rilevanza adattiva, decida che certe memorie devono sbiadire perché l’agente sta operando in un dominio diverso. Approssimazioni euristiche esistono (importance-based eviction in Generative Agents) ma sono lontane dal sistema regolato che il cervello implementa. In particolare manca completamente l’analogo di retrieval-induced forgetting (Anderson, Bjork, Bjork 1994): negli umani, recuperare attivamente un membro di una categoria sopprime i competitori; negli agent, fare retrieval di un chunk non ha effetto sui chunk competitori. È un fenomeno che il sistema cervello-attenzione produce automaticamente; il sistema vector store no.
5. Embodiment continuo.
Il fluire ininterrotto di input multimodali ricostruito come scena unitaria — la ragione per cui esiste la memoria sensoriale — manca completamente. Anche un agent multimodale riceve frame discreti, non un flusso continuo a banda variabile. Voice agents end-to-end (Realtime API, voice mode) si avvicinano sul canale uditivo, ma resta ben lontano dal sense of unified scene che il cervello costruisce dalla retina alla coclea al sistema vestibolare.
Lo collega al capitolo cognizione-embodied (in preparazione): la tesi embodied di Lakoff, Johnson, Varela è che il pensiero è radicato nel corpo, e la memoria stessa sia body-anchored. Negli agent il corpo manca, e con esso scompare un asse intero di organizzazione mnemonica.
6. Schemi flessibili e bias adattivi.
Bartlett 1932 mostrò che i ricordi vengono ricostruiti attraverso schemi culturali che si adattano dinamicamente. Negli agent gli “schemi” vivono nel system prompt, e sono statici: scritti dall’umano, congelati al deploy, non si auto-modificano in risposta all’esperienza. Persona-as-schema è analogia produttiva ma fragile: gli umani aggiornano i loro schemi continuamente (acculturazione, expertise crescente); il system prompt no.
Pattern emergenti che tentano di colmare il gap: agent che riscrivono periodicamente parte del proprio system prompt (auto-prompt-engineering), system prompt generati dinamicamente da un meta-agent supervisore, working context auto-aggiornato in stile MemGPT. Sono soluzioni parziali; nessuna ha ancora la fluidità degli schemi umani.
7. Substrato unificato per memoria, percezione, emozione.
Nel cervello la memoria emotiva è modulata dall’amigdala (McGaugh), il consolidamento è modulato dallo stato emotivo, il retrieval è influenzato dal mood. Gli agent hanno questi pezzi disgiunti o assenti del tutto: nessun “stato” persistente che modula encoding e retrieval in modo paragonabile. Personality consistency in long conversations è ottenuta via system prompt, non via stato interno.
Conseguenza: gli agent non hanno il bias funzionale dell’umore sul recupero — il fatto che ricordi tristi vengano richiamati più facilmente in stato d’animo triste (mood-congruent recall, Bower 1981). Per task di customer support o di care, questo può essere un vantaggio (l’agent non scivola nello stato d’animo dell’utente) o uno svantaggio (l’agent non riesce a rispondere con il registro emotivo appropriato).
L’elenco potrebbe estendersi (manca neurogenesi adulta come meccanismo di forgetting, manca brain rhythms come theta/gamma coupling che organizza encoding nella WM umana, manca la doppia dissociazione semantica/episodica così pulita). Ma sette è già abbastanza per chiarire un punto: chi disegna agent oggi non sta replicando il cervello in piccolo. Sta costruendo un altro tipo di sistema, che condivide alcuni problemi (gestire informazione su scale temporali multiple) e li risolve con strumenti diversi (token, embedding, function calls, file). La somiglianza è sui problemi, non sui meccanismi.
Cosa l’agent ha che il cervello non ha
Sezione intitolata “Cosa l’agent ha che il cervello non ha”L’asimmetria va riconosciuta in entrambe le direzioni. Tre vantaggi strutturali dell’agent rispetto al cervello.
Memoria esatta su richiesta. Un vector store con embedding di alta qualità può recuperare letteralmente la stringa che è stata salvata mesi fa. La memoria umana, anche per i fatti, è ricostruttiva: ricordi il senso, non le parole esatte. Per task in cui la fedeltà al testo letterale conta — clausole contrattuali, codice esatto, indirizzi — l’agent ha un vantaggio asimmetrico.
Ispezionabilità completa. Ogni stato della memoria di un agent è in linea di principio ispezionabile da un essere umano (il context window è testo, il vector store è tabella, la skill library è codice). Il cervello no: il tacito di Polanyi è davvero tacito, e nessun strumento rende leggibili gli stati sinaptici. Conseguenza: gli agent sono debuggabili in modi in cui le menti umane non lo sono.
Composability. Più agent possono condividere lo stesso vector store, lo stesso filesystem, lo stesso MCP server. Più cervelli umani non possono condividere ricordi: comunicano via linguaggio, sempre con perdita. Per task che beneficiano di knowledge sharing diretto (un team di agent che si passa documentazione), l’agent vince.
Velocità di transfer. Un nuovo agent può ereditare istantaneamente la skill library di un altro semplicemente puntando allo stesso vector store. Un nuovo collaboratore umano impiega anni per ereditare le competenze taciti di un team. Per organizzazioni che operano su scala (centinaia o migliaia di istanze di agent), questa asimmetria è strategica.
Reset selettivo. Un agent può “dimenticare” un episodio specifico cancellando il record corrispondente. Un umano non può cancellare selettivamente un ricordo doloroso senza terapie complesse e parziali. Per task in cui la riservatezza pesa (gestione di dati sensibili, compliance), gli agent hanno controllo che il cervello non dà.
Riconoscere queste asimmetrie evita la narrativa “AI come cervello peggiorato”: gli agent sono sistemi diversi, con vantaggi e svantaggi diversi. Il design pragmatico li sfrutta dove vincono, li integra con humans dove perdono. Una conseguenza progettuale concreta: chiedere “dove l’agent batte l’umano” è una domanda altrettanto importante che chiedere “dove l’umano batte l’agent”. Sistemi ibridi (human + agent in loop) progettati lungo questi assi tendono a outperformare sia agent puri sia umani puri.
Trade-off pratici per chi progetta
Sezione intitolata “Trade-off pratici per chi progetta”Tradurre tutto questo in scelte concrete richiede tenere a mente quattro assi che si tirano in direzioni diverse. Nessun pattern domina universalmente; ogni scelta ha costi nascosti su uno degli assi che è stato ottimizzato.
Cost.
Ogni token nel context window costa, sia in input (prompt tokens) sia in output (completion tokens). Pricing differenziale per cache hit (Anthropic prompt caching, OpenAI cached tokens) abbassa i costi sui prefissi stabili: una richiesta che ri-usa lo stesso system prompt e la stessa knowledge base statica può pagare 1/4 - 1/10 dei prompt token rispetto a un cold call.
RAG separa storage da inferenza: il vector store costa poco in storage (centesimi al GB-mese) e il retrieval è quasi free (millesimi per query in molti pricing). Long-context costa in proporzione lineare/quadratica al numero di token: 200k token per turn × molti turn × molti utenti diventa rapidamente significativo. Un calcolo rapido: 200k input × 0.60 a turno, × 100 turn al giorno × 1000 utenti = $60.000 al giorno. Senza prompt caching e senza RAG, lo stack è insostenibile per la maggior parte dei prodotti.
Latency.
Time to first token (TTFT) dipende dal numero di prompt token (lineare con prefill optimization, comunque sensibile). Long-context aggiunge TTFT. RAG aggiunge round-trip al retriever (di solito decine-centinaia di ms) ma riduce drasticamente i prompt token. Pattern matures usano cache per TTFT su prefissi stabili e RAG per il payload variabile.
Una regola operativa che si è consolidata: per task interattivi sotto vincolo di latency (chat, voice agent, completions in IDE), TTFT < 500 ms è target; oltre, l’esperienza degrada. Long-context puro raramente lo rispetta sopra i 50k token senza speculative decoding. RAG è mediamente più rapido ma introduce variance (il retriever può lentire).
Update ease.
Aggiornare un fatto è banale in RAG (riscrivi il record). È costoso e fragile nel knowledge editing dei pesi (ROME/MEMIT richiede ottimizzazione locale, può rompere generalizzazione). È intermedio nel context window (basta riscrivere il prompt, ma se c’è prompt caching invalidi la cache).
Per sistemi che operano su informazione che cambia rapidamente (orari, prezzi, disponibilità, stato di un task in corso), RAG è dominante. Per knowledge stabile (regole di linguaggio, fatti enciclopedici), i pesi sono adeguati. La regola pratica è: se un fatto deve poter cambiare entro le prossime 24 ore, NON metterlo nei pesi.
Coherence.
Long-context permette reasoning fluido cross-segment senza chunk boundaries. RAG ha boundaries: i top-K chunk possono perdere referenza inter-chunk, e il modello vede un patchwork di estratti. Per task che richiedono inferenza complessa su documenti lunghi (analisi di un contratto di 80 pagine) long-context vince. Per task in cui i fatti rilevanti sono pochi e identificabili (lookup in base di conoscenza) RAG vince.
Un asse spesso trascurato: la gerarchia narrativa. Documenti lunghi hanno struttura (capitoli, sezioni, sotto-sezioni) che il chunking RAG generalmente perde. Approcci recenti come hierarchical RAG e structural chunking tentano di preservare questa struttura, ma resta un compromesso. Long-context con un modello che riconosce structure (es. tag XML, headings markdown) spesso fa meglio.
La regola pratica che si è sedimentata nel 2024-2026 è ibridare: long-context per il reasoning attivo del turno corrente, RAG per il deposito archivio, prompt caching per ammortizzare il costo dei prefissi stabili (system prompt, persona, skill definitions). L’architettura tipica di un agent maturo ha tre layer (working ↔ episodic ↔ semantic) con politiche esplicite di promozione fra layer.
Esempi concreti
Sezione intitolata “Esempi concreti”Tre esempi eterogenei sono il minimo per fissare i pattern. Ne aggiungiamo un quarto operativo (Claude Code) come bonus, perché chi legge questa wiki probabilmente lo usa quotidianamente.
Esempio 1 — Una giornata di Klaus Mueller a Smallville
Sezione intitolata “Esempio 1 — Una giornata di Klaus Mueller a Smallville”Ricomponi la scena dell’apertura. Klaus, agent di Generative Agents, esce di casa. Il memory stream ha già ~50 osservazioni dei due giorni precedenti: incontri con altri agent, pasti, frasi udite in caffetteria. Klaus deve decidere cosa fare adesso. Il sistema chiama l’LLM con una query in linguaggio naturale (“Klaus si chiede se andare al caffè o in biblioteca”). La query viene embedded; il retrieval calcola, per ogni osservazione del memory stream, lo score:
score = w_recency * exp(-decay * hours_since) + w_importance * importance_score + w_relevance * cosine(query_embedding, observation_embedding)I pesi sono iperparametri (Park et al. usano 1, 1, 1). I top-K osservazioni con score più alto vengono iniettate nel prompt che genera la decisione di Klaus. Decisione: andare in biblioteca per scrivere il paper. Mentre cammina, incontra Eddy Lin. Nuova osservazione nel memory stream (“11:14 — incontro Eddy Lin sulla strada per la biblioteca”). Importance: Klaus stesso (l’LLM in modalità rating) la valuta 3/10 — interazione casuale, non significativa.
A fine giornata, l’importance accumulata supera la soglia. Trigger di reflection. L’LLM riceve un prompt: “Ecco le tue ultime 50 osservazioni. Quali sono tre intuizioni di alto livello che ne ricavi su te stesso e sul tuo mondo?”. Output: “1. Sono dedicato alla ricerca sulla gentrificazione. 2. Eddy Lin sta lavorando a un album musicale e potrebbe essere interessante intervistarlo. 3. La biblioteca è il mio ambiente di lavoro preferito.” Le tre vengono scritte nel memory stream come thought con importance alta. Saranno preferite nei retrieval futuri.
Cosa mappa cosa: il memory stream è episodica esterna; il retrieval scoring è una forma operativa di cue-dependent retrieval (Tulving 1974); reflection è consolidamento-as-summarization. Cosa non c’è: nessuna autonoetic consciousness — Klaus non rivive la giornata, la rilegge. Nessuna distinzione neurale episodica/semantica — sono tutti record nello stesso store, distinti solo dal tag thought. Nessun replay notturno automatico — la reflection avviene per soglia, non per ciclo circadiano.
Limitazione strutturale: il sistema scala male oltre poche migliaia di osservazioni. Park et al. testano due giorni simulati e 25 agenti; produzione richiederebbe layer di tiering (osservazioni più vecchie compresse, indicizzate solo via summary, recuperate con cost più alto). Generative Agents è una proof of concept, non un sistema production-ready.
Esempio 2 — MemGPT come gestore di memoria virtuale
Sezione intitolata “Esempio 2 — MemGPT come gestore di memoria virtuale”Un assistente virtuale che opera per settimane sullo stesso utente. Senza MemGPT, il context window si satura entro qualche giornata. Con MemGPT, lo schema è OS-inspired. Main context: system instructions (fissate, persona dell’assistente), working context (un summary corrente di chi è l’utente — “Anna, manager prodotto, ha figli, segue una dieta vegetariana”), FIFO queue (ultimi 20 turni). External context: recall storage (history completo di tutte le conversazioni, queryable per keyword o embedding), archival storage (KV store con fatti durevoli — “preferenze cibo: vegetariana”, “data anniversario: 12 ottobre”).
Al turno 100, Anna scrive “ti ricordi di cosa abbiamo parlato a settembre?”. Il modello ha settembre nel recall storage ma non nel main context. Emette search_recall(query="conversations September 2025"). Il sistema esegue la ricerca, restituisce i top-K risultati, li inietta come messaggio di sistema. Il modello continua la conversazione. Se il working context summary è ormai stantio, il modello può emettere update_working_context(...) per riscriverlo. Se Anna comunica un fatto durevole nuovo (“ho cambiato indirizzo”), il modello emette archive_insert(key="address", value="Via Garibaldi 12").
Cosa mappa cosa: main context è working memory; archival è semantica esterna; recall è episodica esterna; le function call agiscono come page faults volontari. Cosa non c’è: niente è automatico. Il modello deve imparare a emettere le funzioni al momento giusto (questione di training); il cervello fa virtual memory paging in modo invisibile al soggetto.
Esempio 3 — Long-context vs RAG su un task agentico tipico
Sezione intitolata “Esempio 3 — Long-context vs RAG su un task agentico tipico”Customer support per una libreria online. Conversazione con un cliente che ha fatto venti ordini in due anni. Domanda: “qual è il libro che mi sarebbe piaciuto di più fra quelli che non ho ancora comprato?”.
Approccio long-context puro: carica i 20 ordini (descrizioni complete dei libri comprati, recensioni del cliente, rating) nel context window. Spazio: ~30k token. Il modello fa reasoning su tutto, considera generi e autori preferiti, suggerisce. Costi: 30k input token × pricing del modello. Latency TTFT: ~3-5 secondi. Coherence: alta, il modello vede tutto insieme.
Approccio RAG: gli ordini sono indicizzati in vector store. Query: embedding di “libri preferiti dal cliente, generi e autori ricorrenti”. Top-K=8 ordini più rappresentativi. Iniettati nel context (~3k token). Costo per query: bassissimo. Latency: 200ms retrieval + 1s TTFT. Coherence: il modello vede solo 8 ordini, può perdere pattern che richiedono di vedere tutti i 20 (es. una lenta evoluzione di gusto).
Approccio ibrido (la scelta tipica nel 2026): RAG per recuperare i 12 ordini più rilevanti, long-context attivo per fare reasoning su quei 12 + sui 3 ultimi acquisti (sempre inclusi by recency). Il sistema combina recall fluido con cost contenuto. Pattern simile al modo in cui un buon libraio fa: ricorda i gusti generali del cliente (semantica), ricorda l’ultimo ordine in dettaglio (episodica recente), e su questi ragiona.
Esempio 4 — Claude Code e il filesystem come memoria operativa
Sezione intitolata “Esempio 4 — Claude Code e il filesystem come memoria operativa”Un developer apre Claude Code in un repository di lavoro. Il sistema legge automaticamente CLAUDE.md (istruzioni di progetto) e i file di contesto rilevanti. Mentre lavora, lo sviluppatore tiene aperto STATUS.md come ponte tra sessioni: focus attuale, decisioni recenti, prossimo step. Quando chiude e riapre il giorno dopo, l’agent ricostruisce lo stato leggendo quei file all’inizio della nuova sessione.
Cosa mappa cosa: CLAUDE.md funziona come schema (Bartlett) o system-prompt-as-script (Schank-Abelson) — analogia. STATUS.md come WM esternalizzata — analogia debole, perché è statica fra sessioni e non manipolata in tempo reale. Skill files come procedurale esterna esplicita — stesso pattern di Voyager. Il filesystem come depositario fa una cosa che il cervello non fa: rende persistente, ispezionabile, versionabile un layer cognitivo. Git diventa un meccanismo di reconsolidation esplicito: quando refactoro CLAUDE.md, il commit message documenta perché.
L’esempio chiude un cerchio: stiamo usando i sette capitoli precedenti come lente per leggere strumenti che usiamo ogni giorno, non per intrattenimento accademico. La distanza fra CLAUDE.md e l’engramma di Tonegawa è enorme; il prestito concettuale, marcato con cura, è produttivo.
Dove si rompe
Sezione intitolata “Dove si rompe”La sezione obbligata: dove le mappature precedenti possono ingannare. Quattro pericoli da nominare esplicitamente.
Il cliché “l’agent ha memoria come noi”. Variante divulgativa: “ChatGPT ha una memoria umana ora!”. Falso. Le feature di memoria persistente in Claude e ChatGPT 2024+ sono sistemi di salvataggio chiave-valore in formato testuale, recuperati via RAG o iniettati nel system prompt al login. Non c’è autonoetic, non c’è schemi flessibili, non c’è consolidamento in sonno. Sono semplificazioni di MemGPT con scoperture di marketing.
L’equivalenza pesi ↔ memoria a lungo termine. Variante tecnica: “i pesi sono la memoria a lungo termine del modello”. Analogia produttiva, equivalenza errata. La LTM umana è ricostruttiva (Bartlett), socialmente modellata, autonoetic per la componente episodica, vulnerabile a interferenze sistematiche (RIF, Anderson 1994). I pesi del modello sono interpolazione su una distribuzione fissa, congelati al pretraining, accessibili solo via campionamento autoregressivo. Confondere i due livelli porta a sovrastimare cosa il modello “sa” e sottovalutare cosa serve esternalizzare.
Reflection ≡ consolidamento. Variante operativa: “facciamo che ogni N turn l’agent si auto-riassume, così ha consolidamento come gli umani”. È analogia operativa utile, non equivalenza. Manca il substrato a due sistemi (CLS), manca il replay compresso durante stato cerebrale specifico (SWS), manca la cascata molecolare con finestra critica. Il pattern funziona, ma sue limitazioni — ad esempio, il fatto che la reflection può accumulare bias da sé stessa, come un’eco — non sono predette dal modello biologico.
LeCun-style critica e il rischio opposto. Yann LeCun (Meta AI) ha argomentato a più riprese che gli LLM “non hanno memoria, non hanno pianificazione, non sono mente”. Ha ragione su molti punti tecnici: come visto sopra, manca davvero molto. Il rischio opposto è usare la critica per chiudere prematuramente il design space: “siccome non è mente, smettiamo di guardare alla cognizione”. Questo capitolo argomenta la posizione intermedia: gli agent del 2026 non sono menti, ma il loro design beneficia ancora dal mappare problemi cognitivi su pattern ingegneristici, a condizione di marcare ogni mappatura per la sua classe (analogia, filiazione, equivalenza, mancanza). Quando il marker è esplicito, l’analogia è uno strumento; quando è implicito, è un errore.
Pattern emergenti senza precedenti biologici. Filesystem-as-memory in Claude Code e Cursor non ha analogo nel cervello. La conoscenza esterna umana storicamente vive in libri, calendari, post-it; ma non è integrata nel loop cognitivo come i file CLAUDE.md lo sono nel loop dell’agent. Qui l’agent ha qualcosa che il cervello non ha: una memoria esterna semantica in formato testuale, ispezionabile, versionabile. Riconoscere quando l’agent “vince” sul cervello su un asse specifico è importante quanto riconoscere quando perde.
Il rumore “memory” nel marketing 2024-2026. La parola “memory” è stata commercializzata pesantemente da Anthropic, OpenAI, Google, e da decine di startup. Il livello di sofisticazione tecnica varia enormemente: dalla semplice persistenza di un summary in un KV store, fino ad architetture multi-layer come MemGPT/Letta. Per chi valuta prodotti: la domanda non è “ha memoria?” ma “che pattern di memoria implementa?” — working only, working + episodic, hierarchical, con o senza reflection, con o senza forgetting policy. La risposta determina cosa il sistema può e non può fare.
Confondere memoria e personalizzazione. Un sistema che impara progressivamente le preferenze dell’utente non è necessariamente un sistema dotato di memoria episodica nel senso pieno. Spesso è solo un sistema che ri-include una stringa di preferenze nel system prompt. La distinzione conta: il primo richiede architettura di memoria con consolidation; il secondo è una feature di product management implementata con persistenza chiave-valore.
Collegamenti
Sezione intitolata “Collegamenti”- memoria-sensoriale: per il dettaglio del paradigma di Sperling, di Coltheart visible/informational, e dell’argomento sul perché non c’è analogo AI diretto del Sensory Register.
- memoria-working: per il modello di Baddeley a quattro componenti, il numero magico 4 di Cowan, persistent activity in dlPFC, e il legame con context window.
- memoria-lungo-termine: per il caso H.M., LTP, l’engramma optogenetico, e la dual struttura ippocampo/neocorteccia che ispira CLS.
- memoria-dichiarativa-procedurale: per la distinzione di Ryle, ACT-R di Anderson, proceduralization, e il legame con pesi del modello vs skill library esplicita.
- memoria-episodica-semantica: per il caso K.C., autonoetic consciousness, semantic dementia, hub-and-spokes, e il legame con memory stream.
- consolidamento-memoria: per la cascata molecolare, il replay di Wilson-McNaughton, CLS di McClelland, e la filiazione documentata verso experience replay in DQN.
- oblio-funzioni: per Schacter Seven Sins, active forgetting molecolare, e i quattro problemi diversi che “forgetting” copre in AI.
- architetture-cognitive (in preparazione): ACT-R, SOAR, global workspace — i predecessori formali di CoALA.
- agente-definizione (in preparazione): cos’è un agente, come si distingue da un workflow.
- memoria-agentica (in preparazione): il capitolo gemello del lato Parte XVI, dove riprenderemo memory stream, hierarchical memory, MemGPT in chiave applicativa.
- context-anatomia (in preparazione): il context window in dettaglio.
- rag-base (in preparazione): RAG dalle fondamenta.
- long-term-memory (in preparazione): pattern di memoria persistente per agent (MemGPT, Letta, Zep).
- memory-architetture (in preparazione): confronto fra architetture di memoria agent.
- fs-as-memory (in preparazione): filesystem come layer di memoria.
- mcp-introduzione (in preparazione): per la memoria condivisa fra agent via Model Context Protocol.
- harness-definizione (in preparazione): l’harness come strato che gestisce memoria, tool, permessi.
Una nota sulla strategia di lettura
Sezione intitolata “Una nota sulla strategia di lettura”Chi ha letto i sette capitoli precedenti ha ora una mappa concettuale ricca. Chi è arrivato qui per primo, perché interessato all’aspetto pratico, può tornare indietro selettivamente: il capitolo consolidamento-memoria per capire la filiazione DQN ← replay; oblio-funzioni per disambiguare i quattro problemi di forgetting in AI; memoria-episodica-semantica per K.C. e l’analogia con LLM puro. Non è obbligatorio leggerli tutti.
Cinque tesi da portare via
Sezione intitolata “Cinque tesi da portare via”Per chi rilegge a posteriori, cinque tesi compatte che riassumono il capitolo in forma operativa.
-
La mappatura umano ↔ agent è in larga parte analogica, con una sola filiazione documentata robusta (experience replay in DQN ← replay ippocampale di Wilson-McNaughton). Tutto il resto è analogia, alcune produttive (working memory ↔ context window), alcune scivolose (working memory ↔ KV cache). Marcare la classe è obbligatorio se non si vuole sbagliare predizioni.
-
Lo stack memoria di un agent del 2026 ha tre layer (working = context, episodic = memory stream, semantic = vector store + pesi parametrici), con politiche di promozione/eviction esplicite fra layer. CoALA, MemGPT, Generative Agents convergono su questo schema. Il quarto layer (procedurale = pesi + skill library) è trasversale.
-
Nessuna feature cognitiva si replica gratis. Volere autonoetic consciousness richiede un substrato che non esiste; volere active forgetting richiede una funzione di valutazione adattiva che la letteratura agent ancora non sa progettare; volere central executive richiede un controller metacognitivo che oltre Reflexion non si è ancora visto.
-
La memoria parametrica e quella esplicita sono strumenti complementari, non alternativi. La pratica matura usa parametrica per le competenze stabili, esplicita per i fatti volatili e personalizzati. La regola: se un fatto deve cambiare in 24 ore, non metterlo nei pesi.
-
Gli agent vincono su assi che il cervello non offre (memoria esatta su richiesta, ispezionabilità, composability, velocità di transfer, reset selettivo). Il design pragmatico sfrutta queste asimmetrie invece di cercare di replicare il cervello.
Per andare oltre
Sezione intitolata “Per andare oltre”- Sumers, T., Yao, S., Narasimhan, K., Griffiths, T. (2024), “Cognitive Architectures for Language Agents”, Transactions on Machine Learning Research. Il framework di riferimento. Lettura obbligata per chiunque progetti agent strutturati. Lungo, denso, ma esplicito sulle filiazioni cognitive.
- Park, J. S., O’Brien, J. C., Cai, C. J., Morris, M. R., Liang, P., Bernstein, M. S. (2023), “Generative Agents: Interactive Simulacra of Human Behavior”, UIST 2023. Il caso più articolato di memory architecture in un agent letterario-simulato. Leggibile, con dettagli implementativi sufficienti per riprodurre.
- Packer, C. et al. (2023), “MemGPT: Towards LLMs as Operating Systems”, arXiv:2310.08560. Il pattern OS-inspired al suo livello più chiaro. Da leggere insieme alla documentazione di Letta per la versione commerciale.
- Liu, N. F. et al. (2023), “Lost in the Middle: How Language Models Use Long Contexts”, TACL 12. Dato empirico fondamentale sul position bias del long-context. Vale per capire perché long-context non è la soluzione automatica al problema della memoria.
- Wang, G. et al. (2023), “Voyager: An Open-Ended Embodied Agent with Large Language Models”, arXiv:2305.16291. Per la skill library come procedural memory esplicita, e per il contrasto con il tacito di Polanyi.
- Mnih, V. et al. (2015), “Human-level control through deep reinforcement learning”, Nature 518. Il paper che cita esplicitamente Wilson-McNaughton: caso scuola di filiazione documentata fra biologia e AI.