BotOf Tech
返回首页Agent Memory 全景图:最近三个月最值得看的 5 条路线

Agent Memory 全景图:最近三个月最值得看的 5 条路线

·2 分钟阅读·

2026-01-22 到 2026-04-22,Agent Memory 的讨论已经不再停留在“模型会不会忘”。真正被反复讨论的是:

  • 记忆应该放在 prompt 里,还是外部系统里
  • 是做向量检索,还是图谱检索,还是文件系统
  • 是让模型自己管理记忆,还是交给独立 memory engine
  • 单 Agent 记忆够不够,多 Agent 怎么共享

4 月 7 日,Chappy Asel 在 X 上发了一条很有代表性的长线程,把主流 memory 框架压缩成 “Nine frameworks, four bets”。我觉得这个切法很有价值,因为它点出了今天 Memory 工程真正的分歧。

第一条路线:Memory as Database

这是今天最主流、也最容易落地的一条路线。它的核心抽象非常简单:

  • add()
  • search()
  • get()

Mem0、Supermemory 这一类系统都属于这个阵营。它们的共同点是把记忆做成一个独立层,Agent 本体只负责调用。

这条路线为什么火

因为它最符合工程团队的直觉:

  • 容易接进现有应用
  • 方便权限隔离
  • 方便替换底层存储
  • 更适合多用户、多会话

Mem0 这条线现在已经不只是向量搜索了。官方文档里很明确,它在向量层之外又叠加了 Graph Memory,把实体和关系单独存起来。也就是说,它正在从“搜相似文本”升级成“搜人物、事件、关系图”。

Supermemory 的思路则更像 “context stack as a service”。官方文档里把自己定义成 long-term + short-term memory 基础设施,还配套了 MemoryBench 这套评测框架。它的重点不只是 recall,还包括:

  • connectors
  • user profiles
  • 内容提取
  • benchmark 和可复现评测

第二条路线:Memory as Context Blocks

Letta 代表的是另一种思路:有些记忆根本不该检索,而应该永远在上下文里。

Letta 的 memory blocks 文档写得非常直接:

  • memory blocks 是结构化上下文片段
  • 它们始终可见
  • 不需要 retrieval

这就和数据库路线很不一样了。数据库路线强调“按需召回”,Letta 的 block 路线强调“关键身份与状态常驻”。

这种设计特别适合保存:

  • persona
  • human profile
  • policies
  • scratchpad
  • shared state

我认为 Letta 最重要的洞察是:

记忆不只是检索问题,也是上下文结构设计问题。

第三条路线:Temporal / Graph Memory

Graphiti 这类系统切的点更具体:很多记忆不是一段文本,而是一条随时间变化的关系。

Zep 的 Graphiti 官方概览把自己定义成 “temporally-aware knowledge graph”。这个词很关键,因为 Agent 记忆的难点常常不在“有没有这条事实”,而在:

  • 这条事实什么时候成立
  • 后来有没有更新
  • 它和谁有关
  • 当前版本和历史版本怎么并存

比如:

  • “Alice 喜欢 Adidas”
  • “上周 Alice 改成更喜欢 On”
  • “Alice 是 Bob 的同事”

如果只做普通 semantic search,这些关系很容易糊成一团。时间感知图谱的价值,就在于它更擅长处理动态关系和知识更新

第四条路线:Memory as Filesystem / Repo

这条路线最近三个月也越来越强,代表是:

  • Claude Code auto memory
  • GBrain
  • Letta 的 MemFS

它们的共同点是:把记忆落成开发者和 Agent 都能直接编辑的文件。

Claude Code 的 auto memory 是本地 markdown 文件;GBrain 用一个 repo 去承载长期知识;Letta MemFS 更进一步,直接把记忆版本化进 git 风格的 memory filesystem。

这条路线的优点非常现实:

  • 可审计
  • 可迁移
  • 可人工修
  • 对 coding agent 尤其友好

它的缺点也很明确:

  • 结构化程度不如专门 memory API
  • 多用户和大规模共享场景下治理更难

最近三个月我看到的三种收敛趋势

1. 混合检索已经成为共识

纯向量记忆越来越少被当成终局。Graph + vector、full-text + semantic、profile + query 这种混合检索正在变成标配。

2. 记忆开始分层

现在比较成熟的系统几乎都会把记忆分成:

  • 当前工作记忆
  • 会话记忆
  • 用户长期记忆
  • 组织共享记忆

Mem0 官方文档已经把这套分层写得很清楚,Letta 也把 core memory 和 external memory分开了。

3. “读写闭环”变成关键字

最值得关注的,不是记忆能不能被搜到,而是:

Agent 能不能读记忆、据此行动、再把新经验写回去。

这就是为什么 GBrain、Claude Code auto memory、Mastra observational memory、Hermes learning loop 这些东西会被同时讨论。大家其实都在试同一个目标:让记忆不是归档,而是复利。

我的建议

如果你现在要做产品,不要一上来就追求“最聪明的记忆系统”。更稳的顺序是:

  1. 先把你需要哪些记忆层次想清楚
  2. 再决定哪些必须常驻、哪些适合检索
  3. 最后才决定用向量、图谱、文件还是混合方案

很多团队的问题不是 memory provider 选错,而是根本没先定义清楚:

  • 用户记忆和任务记忆怎么分
  • 冲突知识怎么更新
  • 多 Agent 到底共不共享记忆

来源