// data & ai · giornale tecnico MILANO ● LIVE 00:00:00

Memoria degli agenti AI: un decay engine ispirato alla curva di Ebbinghaus

Un decay engine che pesa la ritenzione con la curva di Ebbinghaus batte la sliding window sui fatti fondamentali: 100% vs 0% di recall su 50 sessioni.

La maggior parte dei sistemi di memoria per agenti AI a lunga durata sfratta il contesto vecchio con una sliding window: se un elemento non viene toccato per N turni, sparisce. Un articolo su Towards Data Science mostra il limite strutturale di questo approccio e propone un’alternativa: un decay engine che pesa la ritenzione con la curva dell’oblio di Ebbinghaus, dove ogni richiamo rinforza la stabilità di un’informazione e ne allontana l’orizzonte di sfratto in modo non lineare.

Il problema della finestra fissa è che non distingue un fatto fondamentale enunciato al turno 1 da un log di debug usa-e-getta del turno 40: vince sempre il più recente, a prescindere da quante volte ciascuno sia stato realmente usato. Il decay engine cambia la domanda: non quando è stato toccato l’ultima volta, ma quanto è dipeso da quell’informazione. La ritenzione segue Ret = e^(-t/S), e a ogni richiamo la stabilità cresce come S_new = S_old × (1 + ln(1 + recall_count)). Un elemento viene sfrattato solo quando la sua ritenzione scende sotto soglia (default 0.20).

I numeri del benchmark sono netti, e vanno letti con l’onestà con cui l’autore li presenta. Su 50 sessioni seeded da 150 turni, il decay engine mantiene un Foundational Recall Rate del 100% contro lo 0% della baseline recency-only. Un elemento richiamato quattro volte nei primi 45 turni porta la stabilità a circa 292, e al turno 150 — 111 turni dopo l’ultimo tocco — la sua ritenzione è ancora 0,684, ben sopra la soglia. Il vantaggio regge anche aumentando il rumore di venti volte e su quindici combinazioni di soglia e finestra.

La parte più utile è il caso di fallimento, quello che di solito viene omesso: se un fatto è enunciato una volta e mai più richiamato, non c’è nulla da rinforzare e il decay engine si comporta esattamente come la baseline (0% contro 0%). È il confine onesto del meccanismo: non memoria migliore in assoluto, ma protezione specifica di ciò che continua a essere usato. L’implementazione è deterministica, a zero dipendenze, basata su un contatore di turni intero e non sul wall-clock — scelta nata da un bug reale, in cui il tempo di sistema aveva reso i risultati non riproducibili.

Per chi costruisce coding agent multi-sessione, support bot o loop di ricerca autonomi, il messaggio pratico è che allargare la finestra non è la soluzione: una finestra abbastanza ampia da coprire un lungo silenzio smette di essere un meccanismo di pruning. Legare la ritenzione all’uso lo fa, e in modo verificabile.

In sintesi

  • La sliding window scarta i fatti fondamentali per anzianità, ignorando quanto sono stati usati.
  • Con la curva di Ebbinghaus la stabilità cresce a ogni richiamo: 100% vs 0% di recall su 50 sessioni.
  • Il meccanismo non aiuta i fatti mai richiamati: è il suo limite dichiarato.

Fonte: Context Windows Forget What Matters — I Built a Usage-Reinforced Decay Engine for AI Agent Memory — https://towardsdatascience.com/context-windows-forget-what-matters-i-used-a-140-year-old-psychology-paper-to-fix-ai-memory/

Condividi X Facebook LinkedIn WhatsApp Email

// scritto da

Fernando

Hai qualcosa da aggiungere? Unisciti alla discussione.

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Altri dell'autore

dalla stessa firma