Module memory

Module memory 

Source
Expand description

Memory - Core and Working Memory for Umi

TigerStyle: Three-tier memory architecture with explicit limits.

§Memory Tiers

  1. Core Memory (~32KB) - Always in LLM context
  2. Working Memory (~1MB) - Session state, KV store with TTL
  3. Archival Memory (unlimited) - Long-term storage (separate module)

§Example

use umi_memory::memory::{CoreMemory, MemoryBlockType};

let mut core = CoreMemory::new();
core.set_block(MemoryBlockType::System, "You are a helpful assistant.").unwrap();
core.set_block(MemoryBlockType::Human, "User prefers concise responses.").unwrap();

let context = core.render();
// <core_memory>
// <block type="system">You are a helpful assistant.</block>
// <block type="human">User prefers concise responses.</block>
// </core_memory>

Structs§

ArchivalMemory
Archival Memory - Tier 3 long-term storage.
ArchivalMemoryConfig
Configuration for archival memory.
CoreMemory
Core memory - always in LLM context.
CoreMemoryConfig
Configuration for core memory.
MemoryBlock
A single memory block.
MemoryBlockId
Unique identifier for a memory block.
WorkingMemory
Working memory - session-scoped KV store with TTL.
WorkingMemoryConfig
Configuration for working memory.

Enums§

CoreMemoryError
Errors from core memory operations.
MemoryBlockType
Types of memory blocks in core memory.
WorkingMemoryError
Errors from working memory operations.