Don't Build RAG for Your AI's Memory. Build a Forgetting Machine.
Summary
The article discusses an interactive fiction app where AI characters need long-term memory for ongoing stories. The author initially tried a running summary approach, which failed because older, foundational events were lost due to repeated re-summarization, akin to a "game of telephone." This led to characters forgetting crucial plot points. The solution implemented was a "forgetting pyramid" or summary tree, which maintains summaries at different depths: shallow, detailed summaries for recent history, and deeper, vaguer summaries for older events. Two adjacent older summaries are merged into one deeper summary when a limit is reached, ensuring the prompt stays bounded. This design mirrors the brain's complementary learning systems theory, consolidating specific recent episodes into generalized knowledge. The implementation faced distributed system challenges like race conditions and duplicate writes, requiring idempotency and careful cache management. The system aims for "gist" memory over perfect recall, aligning with fuzzy-trace theory and the idea that forgetting is crucial for generalization and good decision-making, not a malfunction. The author also notes using smaller, "feral" models for character voice and separate, literal models for summarization.
Key takeaway
For AI Engineers building interactive narrative systems, optimizing for perfect recall with RAG or simple running summaries will likely degrade character consistency and story arc. Instead, you should design a "forgetting machine" using a hierarchical summary tree, allowing older details to generalize while preserving recent specifics. Be prepared to address distributed system challenges like race conditions and idempotency, as memory writes become a concurrent database problem in real-time applications.
Key insights
Effective AI memory for narrative requires a deliberate forgetting policy, not perfect recall.
Principles
- Narrative meaning relies on order and causation, not semantic similarity.
- Memory systems benefit from consolidating specific details into generalized knowledge over time.
- Forgetting, when managed, is a feature that aids generalization and decision-making.
Method
Implement a "forgetting pyramid" using a summary tree, merging older, adjacent summaries into deeper, vaguer ones to maintain a bounded context window while preserving narrative arc.
In practice
- Use a summary tree structure for long-term narrative memory in LLM applications.
- Design summarization prompts to explicitly preserve specific details like names and dates.
- Treat asynchronous memory writes as a distributed system problem, addressing concurrency issues.
Topics
- LLM Memory
- Retrieval-Augmented Generation
- Narrative AI
- Summary Tree
- Distributed Systems
- Cognitive Science
Best for: AI Engineer, Machine Learning Engineer, MLOps Engineer
Related on AIssential
Editorial summary, takeaway, and curation by AIssential. Original article published by HackerNoon.