La finestra di contesto di un modello è una piccola scrivania fissa. I sistemi operativi hanno risolto il problema di «più dati di quanti ne entrino in memoria» decenni fa — quindi cosa succede se dai a un LLM lo stesso trucco?
TL;DR
- MemGPT tratta la finestra di contesto come la RAM e aggiunge un archivio esterno più ampio, come il disco.
- È il modello stesso a decidere cosa caricare e scaricare, così può lavorare oltre il limite della finestra.
- La lezione si generalizza: una memoria gestita e a livelli batte un unico prompt piatto e in continua crescita.
Il problema della scrivania fissa
Ogni modello ha un limite di contesto rigido. Conversazioni lunghe, documenti voluminosi e cronologia accumulata prima o poi lo fanno traboccare, e una volta che qualcosa esce dalla finestra il modello si comporta come se non fosse mai esistito. Ingrandire la finestra non fa che spostare più in là il muro — e, come mostra il lavoro «persi nel mezzo», una finestra più grande non viene comunque letta in modo uniforme.
Cosa dimostra la ricerca
In MemGPT: Towards LLMs as Operating Systems, i ricercatori della UC Berkeley prendono in prestito l’idea più antica della progettazione dei sistemi: una gerarchia di memoria. In un sistema operativo, una RAM veloce ma piccola è sostenuta da un disco lento ma grande, e il sistema operativo pagina i dati tra i due così che un programma possa indirizzare più memoria di quanta ne entri fisicamente. MemGPT dà a un LLM gli stessi due livelli — un piccolo contesto principale dentro la finestra e un ampio contesto esterno al di fuori — e lascia che sia il modello a gestire il confine attraverso chiamate di funzione.
In concreto, ogni livello è suddiviso. Il contesto principale contiene le istruzioni di sistema fisse, un blocco di appunti di contesto di lavoro per i fatti che l’agente vuole tenere sotto gli occhi, e una coda FIFO dei messaggi recenti. Il contesto esterno si divide in archivio di richiamo — il registro completo degli eventi della conversazione passata — e archivio di conservazione, un magazzino a lungo termine ricercabile per testo arbitrario. Il modello legge e scrive attraverso questo confine emettendo chiamate di funzione, concatenate tramite un «battito cardiaco» così che un’azione possa innescare la successiva.
L’innesco è un concetto preso in prestito dai sistemi operativi: un interrupt. Quando la finestra si avvicina al suo limite, scatta un allarme di pressione della memoria e il modello espelle o riassume i messaggi più vecchi nell’archivio di richiamo prima di proseguire — la stessa mossa dello «scarica quando la RAM è piena» che compie un sistema operativo, ma decisa dal modello.
Invece di cercare di far stare tutto sulla scrivania in una volta, il modello impara a recuperare ciò che gli serve e a riporre ciò che non gli serve.
Gli autori hanno testato tutto questo sui due carichi di lavoro che mandano in crisi una finestra fissa. Nella chat multi-sessione, un agente doveva ricordare e costruire sui fatti che un utente aveva menzionato in sessioni precedenti — richiamandoli dall’archivio esterno anziché perderli quando scorrevano fuori dalla finestra. Nell’analisi di documenti, MemGPT rispondeva a domande su documenti molto più lunghi del contesto del modello sottostante paginando su richiesta le sezioni rilevanti, inclusi compiti di recupero annidato progettati per mettere in scacco un singolo passaggio. In entrambi i casi, il design a livelli ha fatto sì che una piccola finestra si comportasse come una molto più grande.
Cosa significa per te
La conclusione pratica non è «usa MemGPT» in particolare — è il principio che ne sta alla base. Un assistente utile ha bisogno di una memoria che possa far crescere, organizzare e da cui richiamare selettivamente, non di un singolo prompt che continui a re-incollare e che dimentica silenziosamente il proprio inizio. La domanda passa da «quanto è grande la finestra?» a «quanto è buona la gestione della memoria?».
Dove si colloca FocusLM
FocusLM è costruito esattamente su questo principio. Il tuo materiale vive in una memoria durevole e strutturata al di fuori di ogni singola conversazione; ogni volta che chiedi qualcosa, i pezzi rilevanti vengono fatti emergere nel contesto e citati, e tutto il resto resta archiviato e fuori dai piedi. È l’idea della gerarchia di memoria applicata al tuo reale corpo di conoscenza in crescita — non a una sola sessione di chat.