Le pipeline RAG standard si interrompono quando le aziende tentano di utilizzarle per distribuzioni di strumenti LLM multisessione a lungo termine. Questa è una limitazione critica in quanto aumenta la domanda di assistenti IA persistenti.
xMemoriaUna nuova tecnica sviluppata dai ricercatori del King’s College di Londra e dell’Alan Turing Institute risolve questo problema organizzando le conversazioni in una gerarchia ricercabile di temi semantici.
Gli esperimenti dimostrano che xMemory migliora la qualità della risposta e il ragionamento a lungo termine e riduce i costi di inferenza tra vari LLM. Secondo i ricercatori, per alcune attività, l’utilizzo dei token scende da 9.000 a circa 4.700 per query rispetto ai sistemi attuali.
Per le applicazioni aziendali del mondo reale come gli assistenti IA personalizzati e gli strumenti di supporto decisionale multisessione, ciò significa che le organizzazioni possono implementare agenti più affidabili e sensibili al contesto in grado di mantenere una memoria coerente a lungo termine senza aumentare il sovraccarico di elaborazione.
RAG non è progettato per questo
Un’aspettativa fondamentale in molte implementazioni LLM aziendali è che questi sistemi mantengano coerenza e personalizzazione durante interazioni lunghe e multisessione. Un approccio comune per supportare questo ragionamento a lungo termine consiste nell’utilizzare il RAG standard: archiviare dialoghi ed eventi passati, recuperare un numero fisso di migliori corrispondenze in base alla somiglianza stabilita e combinarli in una finestra di contesto per generare risposte.
Tuttavia, il RAG tradizionale viene creato per database di grandi dimensioni in cui i documenti recuperati sono piuttosto diversi. La vera sfida è filtrare informazioni completamente irrilevanti. Al contrario, la memoria di un agente AI è un flusso limitato e continuo di conversazioni; Ciò significa che i dati archiviati sono altamente correlati e spesso contengono quasi duplicati.
Per capire perché il semplice aumento della finestra di contesto non funziona, considera il modo in cui RAG standard gestisce un concetto come quello di agrumi.
Immagina che un utente abbia molte conversazioni dicendo cose come “Mi piacciono le arance”, “Adoro i mandarini”, ecc., e abbia anche altre conversazioni su ciò che conta come agrume. Il RAG convenzionale può trattare tutti questi come semanticamente vicini e comunque recuperare particelle simili “simili ad agrumi”.
“Se il recupero crolla sul cluster più denso nello spazio di incorporamento, l’agente può recuperare snippet di preferenza molto simili perdendo i fatti della categoria necessari per rispondere alla query effettiva”, ha detto a VentureBeat Lin Gui, coautore dell’articolo.
Una soluzione comune per i team di ingegneri consiste nell’applicare la potatura o la compressione post-aspirazione per filtrare il rumore. Questi metodi presuppongono che i passaggi recuperati siano molto diversi e che i modelli di rumore irrilevanti possano essere chiaramente separati dai fatti utili.
Questo approccio non riesce a raggiungere la memoria dell’agente conversazionale perché il dialogo umano è “temporalmente confuso”, scrivono i ricercatori. La memoria conversazionale si basa fortemente su riferimenti condivisi, ellissi e rigide dipendenze della sequenza temporale. A causa di questa interconnessione, gli strumenti di potatura tradizionali spesso cancellano accidentalmente parti importanti di una conversazione, privando l’intelligenza artificiale del contesto vitale necessario per ragionare correttamente.
Perché la soluzione proposta dalla maggior parte dei team peggiora le cose?
Per superare queste limitazioni, i ricercatori propongono un cambiamento nel modo in cui viene creata ed esplorata la memoria dell’agente, che descrivono come “disaccoppiamento”.
Invece di mappare le query degli utenti direttamente su registri di chat grezzi e sovrapposti, il sistema organizza la conversazione in una struttura gerarchica. Innanzitutto, separa il flusso vocale in componenti semantiche distinte e indipendenti. Questi fatti individuali vengono poi aggregati in una gerarchia di temi strutturali di livello superiore.
Quando l’IA ha bisogno di richiamare informazioni, cerca dall’alto verso il basso nella gerarchia, passando dai temi alla semantica e infine agli snippet grezzi. Questo approccio evita la ridondanza. Se due frammenti di dialogo hanno posizionamenti simili e sono assegnati a componenti semantici diversi, è improbabile che il sistema li importi insieme.
Affinché questa architettura abbia successo, deve bilanciare due caratteristiche strutturali vitali. I componenti semantici devono essere sufficientemente differenziati per evitare che l’IA riceva dati ridondanti. Allo stesso tempo, le aggregazioni di alto livello devono rimanere semanticamente fedeli al contesto originale per garantire che il modello possa generare risposte corrette.
Una gerarchia a quattro livelli che restringe la finestra di contesto
I ricercatori hanno sviluppato xMemory, un framework che combina la gestione strutturata della memoria con una strategia di ricerca adattiva dall’alto verso il basso.
xMemory organizza continuamente il flusso vocale grezzo in una gerarchia strutturata a quattro livelli. Essenzialmente, ci sono messaggi grezzi che vengono prima riassunti in blocchi contigui chiamati “sezioni”. Da questi segmenti, il sistema distilla fatti riutilizzabili in una semantica che separa la conoscenza essenziale a lungo termine dai registri ripetuti delle chat. Infine, la semantica rilevante è raggruppata in temi di alto livello per renderli facilmente ricercabili.
xMemory utilizza una speciale funzione obiettivo per ottimizzare costantemente il modo in cui raggruppa questi elementi. Ciò impedisce alle categorie di diventare troppo gonfiate, rallentando la ricerca, o troppo frammentate, indebolendo la capacità del modello di raccogliere prove e rispondere alle domande.
Quando riceve una richiesta, xMemory esegue un accesso dall’alto verso il basso in questa gerarchia. Inizia a livello tematico e semantico selezionando un insieme diversificato e compatto di fatti rilevanti. Ciò è fondamentale per le applicazioni del mondo reale in cui le query degli utenti spesso richiedono l’aggregazione di descrizioni di più argomenti o l’assemblaggio di fatti collegati per ragionamenti complessi e multi-hop.
Una volta ottenuto questo scheletro di fatti di alto livello, il sistema verifica la ridondanza attraverso ciò che i ricercatori chiamano: "La porta dell’incertezza." Solo se un particolare dettaglio riduce in modo misurabile l’incertezza del modello, questo viene approfondito per rivelare prove più precise e grezze a livello di segmento o messaggio.
“La somiglianza semantica è un segnale di generazione di candidati, mentre l’ambiguità è un segnale di decisione”, ha detto Gui. “La somiglianza ti dice cosa c’è nelle vicinanze. L’incertezza ti dice cosa vale effettivamente la pena pagare in un budget di emergenza.” Smette di espandersi quando rileva che aggiungere ulteriori dettagli non aiuta più a rispondere alla domanda.
Quali sono le alternative?
Disponibile sistemi di memoria degli agenti Sono generalmente divisi in due categorie strutturali: design piatti e design strutturati. Entrambi soffrono di limitazioni fondamentali.
approcci diretti MemGPT registrare dialoghi grezzi o tracce minimamente elaborate. Ciò cattura la conversazione ma accumula una grande quantità di ridondanza e aumenta i costi di accesso man mano che la cronologia si allunga.
sistemi strutturati A-MEM e MemoryOS cerca di risolvere questo problema organizzando le memorie in gerarchie o grafici. Tuttavia, si affidano ancora a testi grezzi o minimamente elaborati come recupero primario, spesso inserendo contesti estesi e gonfiati. Questi sistemi fanno molto affidamento anche sui registri di memoria generati da LLM, che hanno rigidi vincoli di schema. Alcune deviazioni nella formattazione dell’IA potrebbero causare guasti alla memoria.
xMemory risolve queste limitazioni attraverso uno schema ottimizzato di creazione della memoria, accesso gerarchico e ristrutturazione dinamica della memoria man mano che cresce.
Quando utilizzare xMemory?
È fondamentale per gli architetti aziendali sapere quando adottare questa architettura rispetto allo standard RAG. Secondo Gui, “xMemory è particolarmente interessante nelle situazioni in cui il sistema deve rimanere coerente per settimane o mesi di interazione”.
Gli agenti dell’assistenza clienti, ad esempio, traggono grandi vantaggi da questo approccio perché hanno bisogno di ricordare le preferenze stabili dell’utente, gli eventi passati e il contesto specifico dell’account senza aprire ticket di supporto quasi duplicati più e più volte. Il coaching personalizzato è un altro caso d’uso ideale che richiede che l’intelligenza artificiale separi le caratteristiche persistenti dell’utente dai dettagli quotidiani intermittenti.
Al contrario, se un’organizzazione sta costruendo un’intelligenza artificiale per chattare con un repository di file, come manuali di policy o documentazione tecnica, “uno stack RAG più semplice è ancora una scelta ingegneristica migliore”, ha affermato Gui. In questi scenari statici e incentrati sui documenti, il set di dati è sufficientemente diversificato da consentire l’accesso standard al vicino più vicino che funziona perfettamente, senza il sovraccarico operativo della memoria gerarchica.
Ne vale la pena scrivere le tasse
xMemory elimina il collo di bottiglia della latenza associato al processo di generazione della risposta finale di LLM. Nei sistemi RAG standard, LLM è costretto a leggere ed elaborare una finestra di contesto gonfia piena di dialoghi non necessari. Poiché l’accesso top-down a grana fine di xMemory crea una finestra di contesto molto più piccola e altamente mirata, il lettore LLM impiega molto meno tempo di calcolo per analizzare il prompt e generare l’output finale.
Nei loro esperimenti su attività a lungo contesto, sia i modelli espliciti che quelli impliciti dotati di xMemory hanno sovraperformato altri valori di base utilizzando un numero significativamente inferiore di token e migliorando al tempo stesso la precisione delle attività.
Ma questo recupero efficiente comporta un costo iniziale. Per un’implementazione aziendale, la peculiarità di xMemory è che scambia una grande tassa di lettura con una tassa di pre-scrittura. Anche se in definitiva rende la risposta alle domande degli utenti più rapida ed economica, il mantenimento della sua architettura avanzata richiede una notevole quantità di elaborazione in background.
A differenza delle pipeline RAG standard, che inseriscono a buon mercato incorporamenti di testo non elaborato nel database, xMemory deve eseguire più chiamate LLM ausiliarie per rilevare i confini del discorso, riassumere segmenti, estrarre verità semantiche a lungo termine e sintetizzare temi generali.
Inoltre, il processo di riconfigurazione di xMemory aggiunge ulteriori requisiti computazionali poiché l’intelligenza artificiale deve organizzare, collegare e aggiornare il proprio sistema di archiviazione interno. Per gestire questa complessità operativa in produzione, i team possono eseguire questo pesante refactoring in modo asincrono o in micro-batch anziché bloccare simultaneamente la query dell’utente.
Il codice xMemory è disponibile pubblicamente per gli sviluppatori che desiderano prototipare Disponibile su GitHub Diventa disponibile per uso commerciale sotto la licenza MIT. Se stai cercando di implementare questo in strumenti di orchestrazione esistenti come LangChain, Gui consiglia di concentrarsi prima sull’innovazione fondamentale: “La cosa più importante da costruire per prima non è una richiesta di annullamento fantasiosa. È il livello di analisi della memoria. Se fai prima solo una cosa giusta, rendila la logica di indicizzazione e analisi.”
Il rollback non è il collo di bottiglia finale
xMemory fornisce una potente soluzione alle attuali limitazioni delle finestre di contesto, aprendo al contempo la strada alla prossima generazione di sfide nei flussi di lavoro mediati. Poiché gli agenti IA collaborano su orizzonti più lunghi, trovare semplicemente le informazioni giuste non sarà sufficiente.
“Il recupero è un collo di bottiglia, ma una volta che il recupero migliora, questi sistemi si trovano rapidamente ad affrontare la gestione del ciclo di vita e della memoria come il prossimo collo di bottiglia”, ha affermato Gui. Determinare come corrompere i dati, affrontare la privacy degli utenti e proteggere la memoria condivisa tra più agenti è esattamente “l’ambito in cui mi aspetto che avvenga la maggior parte della prossima ondata di lavoro”, ha affermato.















