Memory
Last updated
Last updated
The system employs a two-tier memory architecture consisting of:
Memory Manager (RAM-based): Handles transient, session-specific data for active agents. Memory is cleared when the agent session ends.
Storage Manager (Persistent Storage): Ensures long-term storage for evicted or overflowed memory blocks.
The Memory Manager is responsible for managing temporary memory stored in RAM during an agent's active tasks or sessions.
Components
Compressed Block: Primary unit of memory, containing interaction history in a compressed format.
Memory Limit: Defines the maximum amount of memory an agent can use in RAM.
Eviction Strategy: Implements a policy to evict blocks to persistent storage when memory usage exceeds the limit, ensuring efficient memory management.
Memory Flow
Interaction data is compressed into blocks and stored in the agent's memory.
Each agent's memory operates within a predefined limit.
When the accumulated memory reaches the limit:
Blocks are evicted based on the eviction strategy.
Evicted blocks are moved to the Storage Manager for persistent storage.
Privacy Mechanism: Add a system to restrict agents from accessing the memory of other agents, ensuring data privacy.
Memory Optimization: Improve the structure and efficiency of the memory management system.