<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Swagger</title>
    <description>The latest articles on DEV Community by Swagger (@laidoff465f7d4a33f5e).</description>
    <link>https://dev.to/laidoff465f7d4a33f5e</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3946217%2Fefee5cf3-39d9-425f-9bf1-cc3f23abdc0f.png</url>
      <title>DEV Community: Swagger</title>
      <link>https://dev.to/laidoff465f7d4a33f5e</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/laidoff465f7d4a33f5e"/>
    <language>en</language>
    <item>
      <title>I built AI memory that forgets intelligently-here's what I learned</title>
      <dc:creator>Swagger</dc:creator>
      <pubDate>Fri, 22 May 2026 13:52:07 +0000</pubDate>
      <link>https://dev.to/laidoff465f7d4a33f5e/i-built-ai-memory-that-forgets-intelligently-heres-what-i-learned-4gmc</link>
      <guid>https://dev.to/laidoff465f7d4a33f5e/i-built-ai-memory-that-forgets-intelligently-heres-what-i-learned-4gmc</guid>
      <description>&lt;h1&gt;
  
  
  AI memory should forget. Here's how I built intelligent decay.
&lt;/h1&gt;

&lt;p&gt;I've been frustrated with AI memory for a while.&lt;/p&gt;

&lt;p&gt;Every conversation with Claude or ChatGPT starts completely blank.&lt;br&gt;
You explain yourself again and again. Your name, your project, your&lt;br&gt;
preferences — gone after every session.&lt;/p&gt;

&lt;p&gt;When memory does exist, it's a flat list. No scoring. No decay.&lt;br&gt;
No understanding of what matters more. Everything weighted equally. Forever.&lt;/p&gt;

&lt;p&gt;So I asked Claude directly about its own memory limitations. It said:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"I don't have a scoring system for memories. I don't have a graph&lt;br&gt;
or network of linked memories. The information exists as flat text&lt;br&gt;
snippets, not a connected knowledge structure. I don't forget on&lt;br&gt;
a schedule."&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;That answer became the spec for Engram.&lt;/p&gt;


&lt;h2&gt;
  
  
  The insight that changed everything
&lt;/h2&gt;

&lt;p&gt;Human memory isn't a database. It's a narrative.&lt;/p&gt;

&lt;p&gt;We remember things because they matter. We forget things because they don't.&lt;/p&gt;

&lt;p&gt;Two dimensions that no shipped memory system uses today:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Irreplaceability&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Can this memory be Googled? A definition of Python exists everywhere—low value, forget it fast. But "I'm building an AI memory system because I was frustrated with AI amnesia" exists nowhere else. Never forget it.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Connectivity&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;What breaks if we delete this memory? A memory that five other memories depend on is more dangerous to delete than an isolated one. This pushed the architecture toward a knowledge graph.&lt;/p&gt;

&lt;p&gt;Combined, these create intelligent forgetting. Not random deletion. Not storing everything forever. Keeping what actually matters.&lt;/p&gt;


&lt;h2&gt;
  
  
  The scoring formula
&lt;/h2&gt;

&lt;p&gt;score = 0.40 × irreplaceability&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;0.30 × connectivity&lt;/li&gt;
&lt;li&gt;0.20 × recency&lt;/li&gt;
&lt;li&gt;0.10 × frequency&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Memories below 0.20 get pruned. Archived memories never get pruned regardless of score.&lt;/p&gt;


&lt;h2&gt;
  
  
  Causal chains
&lt;/h2&gt;

&lt;p&gt;Current AI memory stores what happened. I wanted to understand why.&lt;/p&gt;

&lt;p&gt;"I was frustrated because AI kept forgetting everything, so I decided to build Engram" contains a causal chain:&lt;/p&gt;

&lt;p&gt;"AI kept forgetting" → caused → "frustration" → caused → "decided to build Engram"&lt;/p&gt;

&lt;p&gt;Two detection methods — explicit linguistic patterns and semantic flow detection. No labels. No annotation. Pure inference.&lt;/p&gt;

&lt;p&gt;This is the closest current AI gets to narrative memory.&lt;/p&gt;


&lt;h2&gt;
  
  
  The benchmark results — updated
&lt;/h2&gt;

&lt;p&gt;I built a personalization benchmark that tests what Engram is &lt;br&gt;
actually designed for.&lt;/p&gt;

&lt;p&gt;After adding memory consolidation—merging redundant memories &lt;br&gt;
into stronger unified knowledge—the results changed significantly:&lt;/p&gt;
&lt;h2&gt;
  
  
  metric                no memory   flat memory   engram
&lt;/h2&gt;

&lt;p&gt;overall accuracy         0.40        1.00        1.00&lt;br&gt;
personalization          0.29        1.00        1.00&lt;br&gt;
causal understanding     0.50        1.00        1.00&lt;br&gt;
noise rejection          1.00        1.00        1.00&lt;br&gt;
memory retained           100%        100%        28%&lt;/p&gt;

&lt;p&gt;Engram matches flat memory on every accuracy dimension&lt;br&gt;
while retaining only 28% of memories.&lt;/p&gt;

&lt;p&gt;Same intelligence. 72% less storage. 72% faster retrieval.&lt;/p&gt;

&lt;p&gt;The intelligent forgetting is working exactly as designed.&lt;br&gt;
Consolidation merges redundant memories into stronger unified &lt;br&gt;
knowledge — so the system gets cleaner over time, not noisier.&lt;/p&gt;

&lt;p&gt;I also ran against LoCoMo—the industry standard benchmark:&lt;/p&gt;

&lt;p&gt;no memory baseline  : 0.006&lt;br&gt;
flat memory         : 0.209&lt;br&gt;
engram              : 0.211  (+0.9%)&lt;/p&gt;

&lt;p&gt;Forgetting quality on internal benchmarks: 0.94 out of 1.00.&lt;/p&gt;



&lt;p&gt;&lt;strong&gt;Live dashboard: &lt;a href="https://web-production-07b0a4.up.railway.app" rel="noopener noreferrer"&gt;https://web-production-07b0a4.up.railway.app&lt;/a&gt;&lt;/strong&gt;&lt;br&gt;
Try the API directly from the browser — no curl needed.&lt;br&gt;
Email &lt;a href="mailto:cdeekshith1@gmail.com"&gt;cdeekshith1@gmail.com&lt;/a&gt; with subject "Engram Access"&lt;br&gt;
I'll respond within 24 hours with your personal API key&lt;/p&gt;
&lt;h2&gt;
  
  
  The live API
&lt;/h2&gt;

&lt;p&gt;Engram is live. Three endpoints—ingest, query, and decay. Any AI app gets persistent intelligent memory with three API calls.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;curl &lt;span class="nt"&gt;-X&lt;/span&gt; POST https://web-production-07b0a4.up.railway.app/v1/ingest &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;-H&lt;/span&gt; &lt;span class="s2"&gt;"Content-Type: application/json"&lt;/span&gt; &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;-H&lt;/span&gt; &lt;span class="s2"&gt;"X-API-Key: your-key"&lt;/span&gt; &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;-d&lt;/span&gt; &lt;span class="s1"&gt;'{"user_id": "alice", "content": "I prefer Python and hate verbose code"}'&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Email &lt;a href="mailto:cdeekshith1@gmail.com"&gt;cdeekshith1@gmail.com&lt;/a&gt; for API access.&lt;/p&gt;




&lt;h2&gt;
  
  
  What's next
&lt;/h2&gt;

&lt;p&gt;Memory consolidation — merging related memories into stronger unified knowledge. Significance scoring — detecting moments of decision and emotion. Reconstructive retrieval — following causal chains to rebuild full context.&lt;/p&gt;

&lt;p&gt;The foundation is solid. Now I need real users breaking it in ways I haven't thought of.&lt;/p&gt;

&lt;p&gt;If you're building AI apps and want memory that actually forgets intelligently—try it. Break it. Tell me what's wrong.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;GitHub:&lt;/strong&gt; &lt;a href="https://github.com/deekshith080/engram-public" rel="noopener noreferrer"&gt;https://github.com/deekshith080/engram-public&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Built this solo. Feedback welcome.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>machinelearning</category>
      <category>python</category>
      <category>opensource</category>
    </item>
  </channel>
</rss>
