Memory Management per AI Agents
Una guida completa sulla gestione della memoria negli AI agents, basata sul talk di Richmond (MongoDB) sulle strategie di memory management per costruire agenti più credibili, capaci e affidabili.
Introduzione
La memoria è il componente fondamentale che trasforma un semplice chatbot in un agente AI efficace. Questo è il messaggio centrale del talk di Richmond, esperto di AI engineering presso MongoDB, che esplora come implementare sistemi di memory management per costruire agenti che non siano solo reattivi, ma anche proattivi, riflessivi e veramente autonomi.
Richmond apre il suo intervento con una promessa: nei prossimi 6 mesi, l’informazione condivisa diventerà cruciale per costruire “the best AI applications, the best agents that are believable, capable, and reliable.”
Le tre caratteristiche chiave di un agente AI efficace sono: believable (credibile), capable (capace) e reliable (affidabile). Tutte e tre dipendono da un’efficace gestione della memoria.
L’Evoluzione delle Applicazioni AI
Da Chatbot a Sistemi Agentici
Negli ultimi 2-3 anni abbiamo assistito a un’evoluzione rapida:
- Chatbot LLM-powered (2022) - ChatGPT esplode a novembre 2022
- RAG (Retrieval-Augmented Generation) - Conoscenza domain-specific e risposte personalizzate
- Scaling compute e data - Emerging capabilities: reasoning, tool use
- AI Agents e sistemi agentici - Il presente
Cos’è un AI Agent?
Richmond evita di entrare nel dibattito sulla definizione precisa, paragonandolo alla domanda “cos’è la coscienza?” Preferisce pensare all’agenticità come uno spettro:
- Livello minimo: Un LLM che opera in un loop
- Livello 4 (autonomo): Un insieme di agenti con accesso a tool, che operano autonomamente con prompt minimi
Pensare all’agenticità come uno spettro (simile ai livelli di guida autonoma) aiuta a progettare sistemi scalabili. Non tutti i problemi richiedono agenti completamente autonomi.
Definizione operativa di AI Agent:
Un’entità computazionale con:
- Awareness dell’ambiente attraverso la percezione
- Capacità cognitive attraverso un LLM
- Abilità di azione attraverso tool use
- Memoria a breve o lungo termine (componente fondamentale)
Perché la Memoria è Fondamentale
L’Intelligenza Umana come Modello
Richmond pone una domanda chiave: se l’obiettivo dell’AI è costruire entità computazionali che superino o mimino l’intelligenza umana, cosa determina l’intelligenza negli esseri umani più intelligenti?
La risposta: la capacità di richiamare informazioni. La memoria.
Se l’AGI (Artificial General Intelligence) deve mimare l’intelligenza umana in tutti i compiti, è inevitabile (“no-brainer, no pun intended”) che dobbiamo implementare memoria negli agenti che costruiamo oggi.
Tipi di Memoria nel Cervello Umano
Il cervello umano implementa diversi tipi di memoria:
- Short-term memory (memoria a breve termine)
- Long-term memory (memoria a lungo termine)
- Working memory (memoria di lavoro)
- Semantic memory (memoria semantica)
- Episodic memory (memoria episodica)
- Procedural memory (memoria procedurale)
Esempio interessante: Il cervelletto (cerebellum) è dove vengono immagazzinate routine e skill fisiche. Se sai fare un backflip, quella conoscenza è conservata in quella parte specifica del cervello. Questa architettura può essere mimata negli agenti AI.
Agent Memory: Concetti Fondamentali
Definizione
Agent memory sono i meccanismi implementati per garantire che:
- Lo stato persista nelle applicazioni AI
- Gli agenti accumulino informazioni nel tempo
- I dati vengano trasformati in memoria
- La memoria informi i prossimi step di esecuzione
Obiettivo finale: Rendere gli agenti più affidabili, credibili e capaci.
Memory Management
Il core del lavoro come AI Memory Engineers è costruire memory management systems.
Memory management è il processo sistematico di organizzare tutte le informazioni inserite nella context window.
Large context windows (200K+ token) non sono fatte per riempirle completamente di dati. Sono progettate per permettere il retrieval della memoria rilevante, strutturata in modo efficace per generare risposte pertinenti.
Componenti Core del Memory Management
- Generation - Generazione di memoria da dati
- Storage - Archiviazione strutturata
- Retrieval - Recupero (componente più importante)
- Integration - Integrazione nel contesto
- Updating - Aggiornamento
- Deletion - Eliminazione (con caveat)
Nota importante sulla deletion: Gli esseri umani non cancellano le memorie (tranne quelle traumatiche). La ricerca sta esplorando “forgetting mechanisms” invece della semplice cancellazione. Non vuoi eliminare la memoria, vuoi implementare un processo di dimenticanza naturale.
RAG e Agentic RAG
RAG Tradizionale
Il Retrieval-Augmented Generation è ormai una pratica consolidata nell’AI engineering. Richmond evidenzia un punto chiave:
Vector search is not all you need.
Esistono diversi tipi di search necessari per un RAG efficace:
- Vector search (similarità semantica)
- Full-text search
- Geospatial search
- Graph search
- Query-based search
MongoDB fornisce tutti questi meccanismi di retrieval in un singolo database, rendendolo ideale come memory provider per sistemi agentici.
Agentic RAG
L’evoluzione naturale: dare la capacità di retrieval all’agente come tool.
Invece di un retrieval passivo, l’agente:
- Decide quando chiamare l’informazione
- Sceglie quale tipo di search utilizzare
- Determina la rilevanza dei risultati
Questo trasforma il retrieval da processo statico a processo dinamico e contestuale.
Tipi di Memoria negli AI Agents
Richmond presenta diversi design patterns per implementare memoria negli agenti, disponibili nella sua libreria open source Memoriz.
1. Persona Memory
Obiettivo: Rendere i sistemi più believable e human-like, permettendo agli agenti di costruire relazioni con gli utenti.
Esempio: OpenAI ha implementato personality features in ChatGPT alcuni mesi fa. Pur non essendo perfetto, il tentativo va nella direzione giusta.
Modellazione in MongoDB:
{
"agent_id": "assistant_001",
"persona": {
"name": "Alex",
"traits": ["helpful", "concise", "technical"],
"communication_style": "professional yet friendly",
"expertise_areas": ["AI", "databases", "architecture"]
},
"user_preferences": {
"formality_level": "medium",
"response_length": "concise",
"preferred_examples": true
}
}
2. Toolbox Memory
Problema: OpenAI raccomanda di inserire solo 10-20 tool schemas nella context window.
Soluzione: Usare il database come toolbox, memorizzando i JSON schema di tutti i tool disponibili.
Vantaggio: Scalabilità illimitata. Prima di chiamare l’LLM, si recuperano solo i tool rilevanti usando qualsiasi forma di search.
Modellazione in MongoDB:
{
"tool_id": "web_search",
"schema": {
"name": "web_search",
"description": "Search the web for current information",
"parameters": {
"query": "string",
"max_results": "integer"
}
},
"category": "information_retrieval",
"usage_patterns": ["research", "fact_checking"],
"embedding": [0.234, 0.567, ...] // per semantic search
}
3. Conversational Memory
Approccio classico: Memorizzare il back-and-forth delle conversazioni (ChatGPT, Claude, etc.).
Modellazione in MongoDB:
{
"conversation_id": "conv_12345",
"messages": [
{
"role": "user",
"content": "Come implemento RAG?",
"timestamp": "2025-12-20T10:00:00Z"
},
{
"role": "assistant",
"content": "RAG si compone di...",
"timestamp": "2025-12-20T10:00:03Z"
}
],
"recall": "recent",
"recency": 1,
"associated_conversation_id": null
}
Memory signals implementati:
recall- Quanto recente è la conversazionerecency- Score di recencyassociated_conversation_id- Collegamenti a conversazioni correlate
Questi segnali sono il tentativo di Richmond di implementare forgetting mechanisms nella libreria Memoriz.
4. Workflow Memory
Concetto chiave: I fallimenti sono esperienze di apprendimento.
Scenario:
- L’agente esegue una sequenza: Step 1 → Step 2 → Step 3
- L’esecuzione fallisce a Step 3
- Invece di ripetere l’errore, memorizziamo il fallimento
Utilizzo: Nella prossima esecuzione, il sistema può:
- Evitare il percorso fallimentare
- Esplorare alternative
- Informare l’LLM su cosa non fare
Modellazione in MongoDB:
{
"workflow_id": "data_processing_001",
"execution_id": "exec_456",
"steps": [
{
"step": 1,
"action": "fetch_data",
"status": "success",
"duration_ms": 234
},
{
"step": 2,
"action": "transform_data",
"status": "success",
"duration_ms": 567
},
{
"step": 3,
"action": "validate_schema",
"status": "failed",
"error": "Schema mismatch: expected field 'user_id'",
"timestamp": "2025-12-20T11:30:00Z"
}
],
"learning": "Schema validation requires 'user_id' field - add preprocessing step",
"alternative_paths": ["add_user_id_field", "use_alternative_schema"]
}
5. Episodic Memory
Memoria di eventi specifici e esperienze passate, simile alla memoria episodica umana.
6. Long-term Memory
Informazioni persistenti che informano il comportamento dell’agente nel lungo periodo.
7. Entity Memory
Memoria relativa a entità specifiche (utenti, oggetti, concetti) che l’agente incontra.
8. Agent Registry
Memorizzazione delle informazioni sugli agenti stessi.
Modellazione in MongoDB:
{
"agent_id": "research_agent_001",
"type": "research_specialist",
"capabilities": ["web_search", "document_analysis", "summarization"],
"tools": ["web_search", "pdf_reader", "code_analyzer"],
"persona": {
"name": "Research Assistant",
"expertise": "academic research"
},
"created_at": "2025-12-20T00:00:00Z",
"performance_metrics": {
"tasks_completed": 1234,
"success_rate": 0.95,
"avg_response_time_ms": 2340
}
}
Memory Management Tools
Strumenti Disponibili
Richmond menziona alcuni tool esistenti per memory management:
- MemGPT (ora chiamato Letta)
- Mem0
- Zep
Dopo aver parlato con partner e clienti, Richmond evidenzia che non esiste un unico modo per risolvere il problema della memoria. Servono memory providers che permettano di costruire soluzioni custom efficaci.
MongoDB come Memory Provider
Perché MongoDB?
- Flexible data model - Il modello a documenti si adatta a qualsiasi struttura di memoria
- Multiple retrieval mechanisms - Vector, text, graph, geospatial, query in un singolo database
- Scalabilità - Gestione di grandi volumi di memoria
- Performance - Retrieval veloce anche con milioni di documenti
MongoDB + Voyage AI
L’Acquisizione Strategica
All’inizio del 2025, MongoDB ha acquisito Voyage AI, creatori di alcuni dei migliori embedding models sul mercato.
Capacità di Voyage AI:
- Text embedding models
- Multimodal embedding models
- Re-rankers di alta qualità
Obiettivo: Ridurre significativamente le allucinazioni AI nei sistemi RAG e agentici.
Integrazione Future
Nei prossimi mesi, MongoDB integrerà:
- Embedding models di Voyage AI direttamente in MongoDB Atlas
- Re-rankers nativi
- Automatic chunking strategies
L’obiettivo di MongoDB è ridefinire il database eliminando la necessità per gli sviluppatori di scrivere manualmente strategie di chunking. La complessità viene spostata nel database stesso.
Impatto per gli sviluppatori:
- Meno codice per gestire preprocessing
- Chunking ottimizzato automaticamente
- Retrieval strategies integrate
- Focus sul business logic invece che su plumbing
Ispirazione dalla Neuroscienza
L’Esperimento di Hubel e Wiesel
Richmond conclude con una lezione di storia della scienza. Negli anni ‘50-‘60, David Hubel e Torsten Wiesel (vincitori del Nobel Prize) condussero esperimenti sulla corteccia visiva dei gatti.
Scoperta fondamentale: La corteccia visiva funziona apprendendo gerarchie di rappresentazioni:
- Edges (bordi)
- Contours (contorni)
- Abstract shapes (forme astratte)
Questa ricerca ha ispirato le Convolutional Neural Networks (CNN), alla base di:
- Face detection
- Object detection
- Computer vision moderna
“We are architects of intelligence. But there is a better architect of intelligence: nature.” La natura ha creato il cervello umano, la forma più efficace di intelligenza che conosciamo. Guardare inward (verso la biologia) può informare i nostri sistemi agentici.
Collaborazione Interdisciplinare
La settimana precedente al talk, Richmond e Tenny (Chief AI Scientist di MongoDB e founder di Voyage AI) hanno incontrato:
- Neuroscientisti (Kenneth, con 20+ anni di ricerca su cervello e memoria)
- Application developers (Charles Parker, creatore di MemGPT/Letta)
Obiettivo: Portare neuroscientisti e sviluppatori insieme per accelerare il percorso verso l’AGI.
Risorse
Memoriz Library
Richmond ha creato una libreria open source chiamata Memoriz (ammette che il nome è imbarazzante: “I was trying to be cool when I came up with it”).
Contenuto:
- Design patterns per tutti i tipi di memoria
- Implementazioni di riferimento
- Esempi pratici
- Molto sperimentale ed educativo
Come trovarla: Cerca “Memoriz” su Google o contatta Richmond su LinkedIn.
Presentazione e Contatti
Per ottenere le slide complete:
- Aggiungi Richmond su LinkedIn
- Richiedi la presentazione
- Oppure cerca il talk su YouTube
Conclusione
La gestione della memoria è la frontiera più importante nell’AI engineering moderno. Stiamo passando da:
Applicazioni stateless → Applicazioni stateful Prompt engineering → Persistence focus Risposte una tantum → Relazioni durature
Le tre caratteristiche fondamentali da perseguire:
- Believable - Gli agenti devono essere credibili attraverso personalità e memoria
- Capable - Gli agenti devono essere capaci attraverso tool memory e learning
- Reliable - Gli agenti devono essere affidabili attraverso memoria episodica e workflow memory
L’implementazione di memory management systems efficaci richiede un memory provider solido. MongoDB, con la sua flessibilità, capacità di retrieval multiplo e integrazione con Voyage AI, si posiziona come piattaforma ideale per costruire la prossima generazione di agenti AI.
Il futuro appartiene agli agenti che sanno ricordare, apprendere e costruire relazioni. La memoria è il ponte tra l’intelligenza artificiale di oggi e l’AGI di domani.
Key takeaway finale: Nature ha già risolto il problema dell’intelligenza attraverso il cervello umano. Il nostro compito come AI engineers è guardare alla neuroscienza, comprendere i meccanismi della memoria biologica, e tradurli in sistemi computazionali scalabili.
Buon AI engineering! 🧠🤖