I was reading this post from Gordon about the Actor Model for Agents. It is the same setup as Alan Kay. I like the Actor Model for our Society of Agents.
We are working on building our Agentic Framework, and I'd like to spark a discussion about Memory in the context of Agents, the Actor Model and our Document Model. Questions:
Actor Model uses the concept of internal state, is it the same or different from memory and why? Or memories are external documents (shared memories)?
Our Document Model receives messages and updates its state being a real Distributed Object. Should we use it as the distributed infrastructure of our Agents?
If Agent 1 wants to read Agents 2 Memory there are two ways:
Agents 1 sends a message to Agent 2 asking for its memories. Agent 2 sends back a message with its memories.
Agent 2 Memory is stored in a document, Agent 1 can read the memory directly.
Please read the following reference material
Definitions
From MongoDB, source (very informative):
In the context of AI agents, memory is defined as the system that enables an agent to retain, manage, and retrieve information across different interactions, tasks, or sessions, transforming it from a stateless, reactive model into a stateful, proactive teammate.
From Cloudflare:
Unlike basic chatbots that treat every query independently, memory allows an agent to maintain continuity, remember user preferences, and learn from past successes or failures.
Core Components of Agent Memory
Agent memory is typically divided into two main categories:
Short-Term (Working) Memory: Holds immediate context (conversational history, tool outputs, current reasoning state) within a single session.
Long-Term Memory (Persistent Storage): Stores data across multiple sessions, allowing the agent to recall information from days or weeks ago.
Types of Agent Memory
Agent memory systems often adopt a framework inspired by human cognition to structure how data is stored and used:
Episodic Memory: Captures specific past events, user interactions, or action trajectories (e.g., "Last time I tried this command, the API failed").
Semantic Memory: Stores generalized knowledge, facts, and user preferences (e.g., "The user prefers Python code examples" or "Company policy dictates JSON format").
Procedural Memory: Remembers how to carry out specific skills or workflows (e.g., how to navigate a tool’s multi-step API process).
Working Memory: The active "scratchpad" within the context window used to manipulate information to achieve a immediate goal
Key Functions
Continuity: Allowing tasks to be paused and resumed without losing context.
Personalization: Tailoring responses based on past user preferences and behaviors.
Learning: Improving future performance by storing and analyzing past outcomes.
Efficiency: Reducing redundant requests by recalling previously acquired information.
Experiences
Do you like what you are reading? Subscribe to receive updates.
Unsubscribe anytime