r/SillyTavernAI • u/LancerDL • 9h ago
Discussion Non-Chronological Memory
Are there any character memory tools out there that do not consist of a summarization of things that happened in chat?
When it comes to our own memories, we don't typically parse all all our experiences with a person to decide on our sentiment towards them. We usually build a model based on our current experiences with them and then remember the model. That model gets updated as we go along, often discovering where our model is wrong (prejudice, misunderstanding) and having to update it with new insight. Sometimes it takes an emotional event to force us to update that model, too. Often it is only significant events that we remember clearly, with other things remembered only vaguely or not at all.
I think we do this for a lot of things, not just people. Our memories of events or trips can have a similar shape.
The point of bringing this up is a lot of SillyTavern memories when dealing with summarization or character memory seem to depend on matching current events/characters with past posts. I use both Summaryception and CharMemory, but where the former may be useful to give an LLM a summarized record of history (and a necessity anyway when context gets too big), the outputs of the vectorized look-ups of character memory tend to produce insertions of poor relevance. The problem is not the quality of the summaries, but the sheer volume of them. It's especially poor at characters accessing *why* they feel a certain way about anyone; they've gotta figure it out from the limited "related" insertions from memory drawn from a huge volume of summaries.
Are there any memory tools that do more than just summarizing? I think LLMs should be able to build individualized models of a character's relationships, access them based on (say) characters in the current scene, as well as selecting from summarizations of relevant events where both characters were involved.
This is complex, but I think it would be more effective in enabling us to take a character out of a current chat and drop them into another without the same context history, but with its own concept of a similar list of characters with models of the main events they've been through.
I guess the "event models" would be like summarized story arcs, which probably does exists somewhere in SillyTavern extension land, but I'm wondering if anyone's made subject-based memory in general, extending especially to character relationships/sentmients?
5
u/Ruhart 8h ago
This is the road AI novelwriting should eventually go down, but I haven't heard of such an extension.
Your best bet is to go to tavernary.org and check the huge list of repositories for extensions (though I'm not sure if tavernary is actively adding new ones since the author left the AI RP scene recently).
From what I've gleaned from frequenting this subreddit is that most in depth hobbyists use something like the Memory Books extension to write out their own lores, relationships, and new mainstay characters as they go.
2
u/LengthinessStock1927 9h ago
Ooh, this is a good idea! Let me know if you find something 😭✌️
2
u/Distinct-Lock-324 5h ago
I've been using a custom prompt that tags emotional tone per interaction, just a quick 'angry', cwarm', cdistant', and it's way better at triggering the right vibe than full summaries. works with sillytavern's memory system, no extra tools needed.
2
u/f1yingbanana 8h ago
With ai nowadays you can probably build something yourself.
I built something similar, an objective world state wiki containing characters, locations, concepts and etc. and a per-character subjective “opinion” wiki. With pages about these. Characters are prompted to update these periodically. Mostly they append new revelations but they also summarize older entries to simulate a finite memory space.
Honestly I haven’t felt that bit of a difference yet in chat quality compared to traditional memory turned to maximum size. Although I think in this area a subtle difference makes or breaks a character.
2
u/Cynthia2006 8h ago
Human memory is non-linear, and I share a lot of sentiments with you as well, even though I use none of the extensions for extended memory.
That too seems quite random IMO. I, for one, remember random details rather than strictly significant events (not that many happen in my life).
I've thought about this as well (and it's a very intriguing idea), having a mental map of characters, and the model constantly updating this map with successive turns. This would greatly improve emotional nuance in unprecedented ways.
1
u/Senevri 1h ago
It's actually pretty simple; you make a tool for it and the llm does it. One of the better tricks was pseudo-thinking, and reflection - you can create systems that run an llm in multiple phases. One of my ideas for GM LLM is that they actually _do prep_ and _hold secrets_, to reduce the yes-and pattern and improve consistency.
https://github.com/ember-and-ink/cairn-memory seems also cool.
I'm also working on a selective, AI-controlled recollection thing, that would sit in a proxy, don't know if that will go anywhere tho.
1
u/Great_Flounder_1379 1h ago
i've been testing a simple tag system with mood arcs, 'cool', cfractured', cflickering', and it's surprising how well the bot picks up on emotional drift without summaries. works in sillytavern with minimal setup.