Gli LLM sembrano avere memoria, ma non ce l'hanno. Quella che chiamiamo “memoria” è in realtà la finestra di contesto: tutto ciò che rientra lì viene considerato, tutto il resto non esiste per il modello. Progettare bene il contesto è metà del lavoro di un sistema AI.
La context window
La finestra di contesto è la quantità massima di token che il modello elabora in una singola richiesta: system prompt, storia della conversazione, documenti recuperati e risposta in generazione. È condivisa tra input e output.
Quando la conversazione cresce oltre la finestra, qualcosa deve essere tagliato. Se la strategia di taglio è ingenua, il modello “dimentica” informazioni importanti.
La memoria è un'illusione progettata
Un chatbot che ricorda i messaggi precedenti lo fa perché il sistema reinvia quei messaggi nel contesto a ogni turno. Non c'è stato persistente dentro il modello: lo stato lo gestisci tu, fuori dal modello.
- Memoria a breve termine = storia della conversazione nel contesto
- Memoria a lungo termine = database + retrieval (RAG) o memorie esplicite
- Oltre la finestra: riassunti progressivi o recupero selettivo
Strategie di gestione del contesto
Riempire la finestra al massimo non è una buona idea: aumenta costi, latenza e rumore. Le strategie efficaci selezionano e comprimono.
- Sliding window: tieni gli ultimi N messaggi rilevanti
- Summary memory: riassumi i turni vecchi in poche righe
- Retrieval-augmented: porta nel contesto solo i pezzi pertinenti
- Structured state: salva entità e decisioni in campi, non in prosa
“Lost in the middle”
I modelli tendono a usare meglio le informazioni all'inizio e alla fine del contesto rispetto a quelle in mezzo. Per questo l'ordine conta: istruzioni critiche e dati più rilevanti vanno posizionati strategicamente, non sepolti in un blocco enorme.
In sintesi
- La “memoria” di un LLM è la finestra di contesto: gestita fuori dal modello, da te.
- Non riempire la finestra: seleziona e comprimi ciò che serve davvero.
- Memoria a lungo termine = retrieval + database, non un contesto più grande.
- L'ordine delle informazioni influenza la qualità: non sotterrare le istruzioni critiche.
FAQ tecniche
Come fa un assistente a ricordare conversazioni passate?
Salvando i contenuti in un database e recuperando quelli rilevanti al momento giusto (RAG o memoria semantica). Non è il modello a ricordare: è il sistema a reiniettare il contesto.
Una context window più grande risolve tutto?
No. Aiuta in alcuni casi, ma costa di più e soffre del fenomeno “lost in the middle”. Un retrieval ben fatto su finestra media spesso batte una finestra enorme riempita male.