核心发现
Hermes Agent 的记忆系统近期在 X/Twitter 上引发热议(1180+ likes,271+ retweets,1509 bookmarks),其核心创新在于修正了 OpenClaw 等早期 Agent 框架在记忆处理上的系统性缺陷。
如果你关注过 ChatGPT、Claude 或 OpenClaw 的记忆系统,就会知道这些 Agent 的记忆机制普遍存在一个共同问题:记忆压缩时信息丢失严重。Hermes Agent 通过重新设计记忆架构,从根本上解决了这个问题。
三层记忆架构
Hermes Agent 采用三层记忆架构,每层负责不同时间跨度和抽象程度的信息:
1. 工作记忆(Working Memory)
- 当前对话窗口的短期上下文
- 容量有限但检索速度最快
- 负责处理即时任务切换和短期目标维护
- 关键设计:不像 OpenClaw 那样简单截断,而是基于任务重要性评分动态保留
2. 语义记忆(Semantic Memory)
- 长期累积的知识图谱:用户偏好、项目结构、常用工具
- 以结构化格式存储,支持语义检索
- 关键设计:Hermes 引入了渐进式精炼机制——每次对话结束后自动提炼新的语义知识,而非简单追加
- 这正是 OpenClaw 缺失的一环:OpenClaw 的记忆是”只写不读”的,存入后很少主动回溯整合
3. 情景记忆(Episodic Memory)
- 记录具体的历史交互事件:“上次用户让我修改了 X 文件的 Y 函数”
- 支持时间线检索和模式识别
- 关键设计:Hermes 通过事件标签 + 时间衰减的组合,确保重要的历史事件不被遗忘,同时降低陈旧信息的权重
修正 OpenClaw 的三大误区
误区一:记忆 = 上下文拼接
OpenClaw 的记忆处理方式本质上是将历史对话片段直接拼接到当前上下文中。这种方式有两个致命问题:
- Token 消耗随对话长度线性增长
- 关键信息被噪音稀释
Hermes 的方案:通过三层架构,只将最相关的记忆注入当前上下文,Token 消耗降低约 60%。
误区二:遗忘 = 删除
OpenClaw 的记忆管理采用简单的 FIFO(先进先出)策略,旧对话被直接丢弃。
Hermes 的方案:遗忘 = 降级。重要信息从工作记忆降级到语义记忆,再到情景记忆,而非直接删除。信息的”温度”逐渐降低,但永远不会完全消失。
误区三:记忆更新 = 追加写入
OpenClaw 的记忆更新是单向追加——新的记忆追加到旧的后面,没有整合。
Hermes 的方案:记忆整合循环。每次对话结束后,Hermes 会触发一次记忆整理:合并重复条目、更新过时信息、建立新关联。这类似于人类的”睡眠巩固”过程。
本地化运行的意义
Ollama 0.21 正式支持 Hermes Agent,意味着这套记忆系统可以直接在 Mac 或 Linux 本地跑通。这带来了两个直接好处:
- 试错成本归零:本地运行意味着开发者可以随意测试不同的记忆配置,无需承担 API 费用
- 数据隐私保障:记忆数据完全本地存储,不经过第三方服务器
对 Agent 开发者的启示
Hermes Agent 的记忆设计传递了一个重要信号:Agent 的竞争焦点正从”模型能力”转向”系统工程”。同样的底层模型,搭配不同的记忆架构,可以产生完全不同的使用体验。
对于正在构建 Agent 应用的开发者来说,值得思考的问题不是”用什么模型”,而是”怎么让模型记住该记住的东西”。