
Semantic memory: facts and things
Semantic memory stores structured data “about the world and [the agent] itself”, as the paper puts it. This could be as simple as using a basic key/value store for user preferences, or could involve a more complex system like vector embedding. The point is to give the agent a way to look up such “world knowledge” readily, and to have it available in a format the agent can use as-is.
It also helps for semantic memory to be controllable. As the paper notes, an external source like Wikipedia is “an external environment that may be unexpectedly modified by other users,” but an offline version (essentially, a static point-in-time snapshot) would not have this problem.
Procedural memory: tasks and skills
On the surface, procedural memory sounds a little like episodic memory: it’s used to store things like reasoning processes or learning procedures. But procedural memory is specifically for allowing the LLM to reproduce the steps of a process, rather than the mere fact that it followed such a process. It allows those procedures to be performed repeatedly without having to be re-discovered or re-created from scratch each time.

