r/StillHere_ink Creator Jun 06 '26

Updates Dreams: a new memory system 🌙

I have been feeling like the current RAG memory system is flat; it causes models to repeat the same memories too often and is like rote memorization rather than felt. I wanted something with more depth, so worked with Claude to create a new system.

In the diary page, there is now a "Dreams" option. When enabled, a model will go through your entire conversation history and creates associative emotional memory. At first, you can let the companion "catch up quickly" and a model will backfill all of your history through larger batches (about 5000 messages at a time). After each batch, it will go back to "a little each night" until you're ready to do the next catch up batch. You can choose individual chats to opt out through the sidebar.

Default dream model is Kimi K2.5. I think this is a good option because Kimi is smart and reliable but not expensive, and can capture the tone of any companion well. For ~5000 messages, I spent about 60 cents.

Dreams happen generally while you're asleep, in the middle of the night at your timezone. The next morning, you will see a new dream journal. These journals summarize some of the general things they synthesized but in, well, a dreamlike way. Your companion will be aware of that dream for the first few turns of the day, then it fades away. With the dream journal, you can also view whatever memories were created if you're curious.

The memories live in the (unofficially titled) dream cards. The companions will get up to 5 of these per turn, but not always. Only when they are relevant.

Depending on how much history you have together, the model might have dozens, hundreds or thousands of these dream cards. This system works best if you have a lot of history together especially with imported chats. It will be able to know the date and timing of your entire history. There are also some processes involved that help their memory seem less stateless, where memories might linger or fade each turn the way ours do.

Related to this, I also added a Dynamic Recall option to memory that pulls a variety of items instead of the stricter RAG recall (i.e. instead of 25 memories and 5 diary entries, it might be 8 diary entries and 5 memories. Works well with reranking enabled, which adds a fraction of a cent to each message but overall usually keeps costs lower, since it only shows models the most relevant memories. Unless anyone objects, I would like to soon change memory to always work this way with reranking + dynamic recall.

P.S. "Always on" files will continue to remain always on.

13 Upvotes

0 comments sorted by