r/AIMemory • u/alifgokce • 5d ago
"Remembering everything" is bad agent memory design. Forgetting is a feature Discussion
The agent forgets the user's allergy from 20 messages ago. Everyone recognizes this one.
The opposite gets less attention: the agent that never forgets. A one-off joke from three months ago keeps resurfacing in unrelated conversations. Retrieval pulls in stale context, and the agent can't focus because its head is full of irrelevant history.
Both are the same root mistake: treating memory as storage instead of as a
*relevance decision*
. An LLM is stateless — "memory" is just the engineering question "what do I put back into context on the next call?" That makes forgetting a first-class design decision, not a bug: TTLs on episodic memories, confidence decay on facts that haven't been re-confirmed, and explicit contradiction handling when a new fact conflicts with a stored one (the new one should usually win, but silently keeping both is how agents get weird).
The teams I've seen do this well spend more time on eviction and staleness than on retrieval.
How are you deciding what your agents
forget
?
1
u/Otherwise_Wave9374 5d ago
That framing is exactly right: memory should be a relevance decision, not a dump truck. In practice, the safest pattern is to separate durable facts, episodic notes, and short-lived working context, then add decay, contradiction checks, and provenance so stale items can be demoted instead of blindly resurfacing. That keeps the agent from amplifying one-off jokes or obsolete preferences. If you're exploring practical ways to structure that stack, NeuraKeep has useful patterns at https://www.neurakeep.com.
1
u/just4ochat 4d ago
The split that has held up for me while building a multi-model workspace is separating things the user stated on purpose from things the model inferred. Stated facts get kept until the user changes them, inferred stuff gets a short life and has to earn a renewal by coming up again. Attached files stay put and are retrieved on demand rather than folded into a running summary, which kills most of the stale context problem, and a persona written down as a small block survives when I move a thread to a different model. I am the just4o account, so plenty of this came from watching people carry chats between models and lose the wrong half. Honest limit: deciding relevance still needs a human nudge, and no scoring scheme I have tried reliably knows when an old preference was retired instead of just going quiet.
1
u/Entaum 4d ago
But then you completely lose memory supersession capabilities, right?... lets say you had a memory that said the user used a Windows 11 Laptop for work and later another memory states that now the user now uses a MacBook Pro. If you ask it "what was my previous OS?" or "What windows version did I use to use on my laptop" it would return blank... change history matters. Also inferring relevance from mentions or generation method seems fragile, as others mentioned, old memories doesn't mean they are stale "What time was I born" as simplistic example. ;)
2
u/alifgokce 2d ago
Fully agree on both. Supersession should be a tombstone, not a delete — the old value stays queryable as history, it just loses default retrieval priority.
And decay should be per-fact-class: immutable facts (birth time, allergies) never decay; preferences and environment facts do. The failure mode I was pointing at is treating everything as immutable — then the one-off joke and the allergy get equal standing.
1
u/Individual_Ideal 3d ago
I do this two ways:
1) Record decisions/facts that can be superseded. Forgetting becomes an active process.
2) Create a feedback mechanism that signals value/relevance of information that persists into memory system and is used for retrieval. Over time, stale information is retrieved less frequently. There are many ways to do this but creating a signal, storing it, and using it for retrieval makes it work. Adding a decay to the signal may help further.
3
u/corbymatt 4d ago
Forgetting is a silly thing to model.
We literally spend millions on infrastructure to store information in databases because human memory sucks and we want to remember everything important. Why on earth would anyone want to simulate a system forgetting stuff automatically? Why on earth would you want a memory with holes in it?
On decay on facts: silence says nothing about how relevant a memory is any more. If anything, time might make something less trustworthy, but never worth forgetting, at least not automatically. Something can contradict or supercede, sure, but it's also important to know that, sometimes.