Gli agenti AI basati su grandi modelli linguistici partono da un concetto fondamentale: i modelli linguistici grandi sono, per natura, a statoless. Ogni chiamata API parte da zero. Dopo la risposta, il modello dimentica il messaggio precedente. Questo funziona bene per domande isolate, ma non per agenti che eseguono compiti a lungo termine e multi-step. La memoria è l’infrastruttura che trasforma un modello a statoless in un sistema in grado di trattenere contesto. Per far questo, gli agenti necessitano di meccanismi diversificati di memorizzazione.

Che Cos’è la Memoria degli Agenti

La memoria è ogni meccanismo che trasporta informazioni attraverso le ragionamenti del modello. Alcuni di questi si trovano all’interno della finestra di contesto, altri all’esterno, come database o pesi modellati. Ogni tipo memorizza una classe diversa di informazioni per durate diverse.

La memoria varia per forma e durata. La forma può essere parametrica, memorizzata nei pesi, o non parametrica, conservata come testo. La durata include breve termine e lungo termine. I sette tipi di memoria esaminati qui sono mappati lungo questi due assi.

I Sette Tipi di Memoria degli Agenti

1. In-Context / Memoria di Lavoro (Breve Termine)

Questa comprende tutto ciò che il modello vedoattualmente all’interno della sua finestra di contesto. Vi rientrano il prompt del sistema, i messaggi recenti, le uscite degli strumenti e i passaggi di ragionamento. Si può immaginare come RAM: veloce e essenziale, ma temporanea e limitata nello spazio. Ogni tipo di memoria compete per lo spazio in questa finestra.

2. Memoria Semantica (Lungo Termine)

Questa è un archivio persistente di fatti, preferenze e conoscenza su un dominio. Raccoglie informazioni come “l’utente preferisce Python rispetto a JavaScript”. La conoscenza è staccata dal momento in cui è stata acquisita. Rappresenta in pratica l’enciclopedia organizzata del sistema relativa all’utente o al tema.

3. Memoria Episodica (Lungo Termine)

Memorizza eventi passati specifici, conversazioni complete o risultati di compiti. Registra ciò che ha funzionato e ciò che no. L’agente utilizza questa memoria per imparare dall’esperienza. Sistemi come Reflexion e ExpeL redigono post-mortem verbali e conservano conclusioni utili per esecuzioni future.

4. Memoria Procedurale (Lungo Termine)

Questa memorizza le capacità dell’agente di come svolgere attività. Include abilità, modelli di utilizzo di strumenti, workflow e regole comportamentali. Un agente di supporto che gestisce per la centesima volta la reimpostazione di una password non ri-costruisce il workflow ogni volta: semplicemente esegue una procedura appresa.

5. Memoria Esterna / di Recupero (Breve terme + Lungo Termine)

Questa è informazione conservata all’esterno, ad esempio in un database vettoriale. Viene recuperata nel contesto durante l’inferenza utilizzando ricerche per similarità. Si tratta effettivamente di RAG applicato all’history degli agenti o ai documenti. La qualità del recupero diventa velocemente il collo di bottiglia.

6. Memoria Parametrica (Lungo Termine)

Questa rappresenta le conoscenze integrate direttamente nei pesi del modello durante l’addestramento. Include linguaggio, schemi di ragionamento e informazione generale sul mondo. Il modello non cerca niente, produce direttamente informazione partendo dai collegamenti acquisiti. Il compromesso è che questa tipologia di memoria è fissa al momento dell’addestramento.

7. Memoria Prospeettiva (Breve Termine + Lungo Termine)

Questa memoa dell’agente gli permette di ricordare gli impegni futuri e gli obiettivi pianificati. Si tratta della componente essenziale nel caso di agenti con orizzonti di tempo estesi e compiti multi-stage. Senza, l’agente dimentica i propri impegni pianificati.

Confronto Laterale: Come si Paragonano i Sette Tipi

Ecco una mappa di ogni tipo con scala temporale, localizzazione, dati che memorizza e implementazioni tipiche.

Tipo di memoria
Memoria di lavoro / In-Context
Scala temporale
Breve termine
Dove risiede
Finestra di contesto
Che cosa memorizza
Prompt, messaggi, output strumenti
Implementazione comune
Nativa nel modello linguistico

Per gli altri sei tipi di memorie è utilizzato un formato simile.

Usi Pratici: Quale Memoria Risolve Qual Problema

Tipi diversi di memoria rispondono a bisogni prodotto concreti. Mappa semplicemente il bisogno al tipo di memoria.

    • Un assistente di codifica all’interno di una sola sessione usa la memoria in-context. Memorizza i file aperti e le modifiche recenti in tempo reale.
    • Un assistente personale che ricorda l’utente ha bisogno di memoria semantica. Memorizza, ad esempio, l’allergia al glutine e la richiama settimana dopo.
    • Un agente di ricerca che migliora nel tempo necessita di memoria episodica. Ricorda che le sezioni sui rischi hanno funzionato nel mese scorsa.
    • Un agente di prenotazione delle vacanze ha bisogno di memoria procedurale. Conosce il flusso: cerca voli, confronta, prenoti, conferma.
    • Un chatbot delle documentazioni usa memoria di recupero. Inserisce la documentazione e richiama i frammenti pertinenti in base alla query.
    • Un agente a orizzonte esteso che gestisce un progetto settimanale necessita di memoria prospettica. Ricorda di inviare il rapporto del venerdì.

Esempio Combinato: Tutte e Sette le Memorie in un Agente

immagina un agente autonomo per analisi di mercato. Un solo compito esercita in contemporanea tutti i tipi di memoria.

La memoria parametrica fornisce la base del ragionamento e del linguaggio. La memoria di recupero richiama dati attuali dal mercato. La memoria semantica fornisce il formato preferito dal usuario. La memoria episodica ricorda le fonti già verificate. La memoria procedurale guida l’ordine delle sezioni: primo sizing, poi paesaggio, infine rischi. La memoria prospettica programma la bozza successiva per la settimana prossima. E la memoria in-context assembla tutto per fornire un contesto operativo.

Rimuovere un solo strato rende l’agente più debole. Ogni strato svolge funzioni che gli altri non possono svolgere.

Implementazione: Una Memoria Minima

Ecco uno schema ridotto