Il nuove framework a memoria attiva usa 118K token per richiesta. LangMem consuma 3.26M
Il ragionamento su lungo orizzonte espone un debolezza fondamentale negli agenti di intelligenza artificiale: le finestre di contesto vengono saturate rapidamente, e le pipeline di recupero restituiscono rumore anziché segnali utili. Per risolvere questo problema, un gruppo di ricerca dell’Università Nazionale di Singapore ha sviluppato MRAgent, un framework che abbandona l’approccio statico "ricerca-poi-ragiona". Questo meccanismo permette all’agente di sviluppare dinamicamente la sua memoria basata sull’evidenza accumulata.
Il limite della ricerca passiva in compiti con orizzonte lungo
Nelle pipeline di ricerca tradizionali, i documenti vengono recuperati tramite ricerca vettoriale o attraversamento di un grafo e quindi passati a un modello linguistico di grandi dimensioni (LLM) per il ragionamento. Questo approccio passivo fallisce perché non riesce a combinare ragionamento e accesso alla memoria, creando tre principali collo di bottiglia:
- Questi sistemi non riescono a modificare la loro strategia di ricerca durante il ragionamento. Se un agente recupera un documento e scopre un'importante informazione mancante — come una data specifica o una persona — non ha modo di avviare una nuova query basata su quella scoperta.
- Punteggi di similarità statici e espansioni di grafo predefinite restituiscono corrispondenze superficiali che saturiscono la finestra di contesto dell’LLM con informazioni irrilevanti, degradando il ragionamento.
- I sistemi attuali dipendono pesantemente da strutture pre-costruite come i risultati top-k e funzioni di rilevanza statiche, limitando la flessibilità necessaria per scalare su interazioni imprevedibili e con orizzonte lungo.
I ricercatori argomentano che per superare questi limiti, gli sviluppatori devono spostare il loro focus verso un processo di ricostruzione “attivo ed associativo”, un concetto ispirato alla neuroscienze cognitive.
Qual è la differenza tra ricerca passiva e ricostruzione attiva della memoria?
Sotto questo paradigma, il recupero della memoria si svolge in modo sequenziale piuttosto che funzionando come un simplesso output da un database statico. Il sistema inizia con trigger ristretti e specifici tratti dalla richiesta dell’utente, come il nome di una persona, un’azione o un luogo. Questi primi indizi puntano a concetti o categorie collegate, anziché a grandi blocchi di testo.
In seguito, seguendo questi punti di riferimento, l’agente raccoglie piccoli pezzi di evidenza passo dopo passo. Usa ciascun nuovo pezzo di informazione per guidare il suo passo successivo finché riesce a ricostruire l’intera ed accurata storia.
Implementazione di MRAgent della ricostruzione attiva della memoria
Invece di trattare la memoria come un database statico, MRAgent (Memoria e Architettura di Ragionamento per Agenti LLM) la considera un ambiente interattivo. Quando un agente processa una query complessa, utilizza le capacità di ragionamento dell’LLM per esplorare diversi percorsi di ricerca attraverso un grafo organizzato.
Ad ogni passo, l’LLM valuta le prove intermedie raccolte e le utilizza per ottimizzare iterativamente la sua ricerca. L’agente deduce nuovi vincoli di ricerca, segue i percorsi informatici più promettenti e potizza i rami irrilevanti. Questo permette a MRAgent di ricostruire informazioni profonde senza saturare la finestra di contesto dell'LLM con rumore.
Architettura di MRAgent
Per rendere questa esplorazione attiva efficiente da un punto di vista computazionale e scalabile, il framework organizza il database utilizzando un meccanismo “Indizio-Etichetta-Contenuto”. Questo funziona come un grafo associativo a tre livelli:
- Indizi: parole-chiave fini, come entità o attributi contestuali estratti interazioni tra utenti.
- Contenuti: unità di memoria memorizzate. Queste sono suddivise in livelli multigranulari, come la memoria episodica per eventi concreti e la memoria semantica per fatti stabili e preferenze dell’utente.
- Etichette: ponti semantici che sintetizzano le associazioni relazionali tra Indizi specifici e loro Contenuti.
Questo struttura permette un processo di ricerca a due fasi estremamente efficiente. L’LLM prima si muove dagli Indizi verso le candidate Etichette. Poiché le Etichette espongono esplicitamente le relazioni semantiche e le associazioni strutturali del dato, l’agente esamina questi sommari brevi per giudicarne la rilevanza. L’LLM identifica i percorsi di traversata promettenti e abbandona le ramificazioni irrilevanti prima di spendere capacità di calcolo o di tokens per accedere ai contenuti di memoria pesante.
Esempio pratico
Un utente potrebbe chiedere a un agente AI: “Come ha usato il premio Nate quando ha vinto il terzo torneo di videogioco?”.
MRAgent estrapola da questa richiesta indizi fini, come “Nate”, “torneo di videogioco” e “vincere”. L’agente mappa questi primi stimoli sul grafo della memoria e osserva le etichette associate disponibili. Vede etichette come “Vittoria al torneo” e “Partecipazione al torneo”. Dal momento che è concentrato su ciò che la persona ha fatto dopo aver vinto il campionato, MRAgent abbandona l’etichetta di partecipazione e segue l’etichetta di vinuta.
L’agente recupera il contenuto episodico legato alla coppia “Indizio-Etichetta” scelta, raccogliendo tre distinti ricordi in cui Nate ha vinto un torneo. MRAgent rivede i tre episodi, decide che uno in particolare è rilevante per la query e scarta gli altri due.
Con questa informazione, il sistema aggiorna i propri indizi e inizia un nuovo round di scoperta e potizzazione. Dalla memoria episodica recuperata, l’agente aggiunge “premi dei tornei” ai propri indizi e li utilizza per esplorare nuove etichette e reperire nuovi ricordi. Si ripete questo processo finché non raccoglie informazioni adeguate per rispondere alla query, che potrebbe essere qualcosa tipo “Nate ha investito il denaro”.
Prestanza di MRAgent su benchmark del settore
MRAgent collabora insieme ad altri framework che si occupano costruzione della memoria attiva dagli agenti AI. Tra gli alternative vi sono A-MEM, un framework a memoria associativa basato su grafi, e MemoryOS, un framework gerarchico di memoria. Altri framework della memoria persistente includono LangMem e Mem0.
I ricercatori hanno testato MRAgent sui benchmark LoCoMo e