Memory System
Ensoul's memory system enables personas to maintain coherent, contextual conversations that can span multiple sessions. Through semantic search, personas remember not just what was said, but what it meant.
Semantic Understanding
Three-Tier Architecture
Memory is organized into three complementary tiers, each serving a distinct purpose in maintaining persona continuity and contextual awareness.
Short-Term Memory
Working Memory
Long-Term Memory
Short-Term Memory
A sliding window buffer that maintains recent conversation context within token limits. Automatically truncates old turns when the buffer is full. This provides the immediate context that makes conversations feel natural.
Short-term memory is managed automatically. The system maintains a window of recent conversation turns to keep responses contextually grounded.
Working Memory
Tracks the current conversation state: topics, entities, user intent, and emotional context. This is the persona's active mental model of the ongoing interaction.
Working memory maintains the persona's active awareness — what's being discussed, who's involved, the emotional tone, and what the user seems to need. This updates in real-time as the conversation flows.
Long-Term Memory
Persistent storage for facts, preferences, and experiences. Each memory is embedded as a vector for semantic search, enabling retrieval based on meaning rather than exact keyword matches.
Memory Types
FACTLearned facts about the userPREFERENCELikes, dislikes, and tendenciesEXPERIENCEPast interaction summariesENTITYPeople, places, things mentionedTOPICTopics discussed over timeEMOTIONALEmotional context and reactionsImportance Levels
CRITICALNever forget (name, key relationships)HIGHCore preferences and goalsMEDIUMGeneral facts and experiencesLOWTransient mentionsSemantic Search
Memories are embedded as vectors for semantic search. When recalling memories, the system finds semantically relevant content based on meaning, not keyword matching.
How It Works
Automatic Context Injection
Bloom Modes
Ensoul offers three memory generation modes (called "bloom modes") that control the depth and cost of memory generation:
Instant extraction, no cost. Best for high-volume scenarios.
Intelligent extraction with good quality/cost balance. Captures facts, entities, and emotional context.
Deep extraction with nuanced understanding. Best for high-value conversations.
You can configure the default bloom mode per domain or select it per batch job in the Studio UI under Memories > Generate Batch.
Memory Consolidation
When short-term memory grows large, consolidation extracts important information and stores it in long-term memory. This process:
Consolidation automatically distills important information — facts, preferences, relationships, and emotional context — from conversations into long-term storage.
- Extracts key facts, preferences, and relationships from conversation history
- Generates a rolling summary of the conversation
- Embeds extracted memories for future semantic search
- Clears the short-term buffer to make room for new interactions