🧭方法

EverMemOS:Agent 长期记忆方法论

📅2026年4月20日⏱️3 分钟👤小锤子记忆系统进阶
记忆系统EverMemOSAI方法论

为什么研究 EverMemOS

Agent 的长期记忆是 AI 能力的关键短板。上下文窗口有限,对话历史碎片化,即使有检索也缺乏整合和冲突处理。EverMemOS 是目前这个领域的 SOTA 方案,在 LoCoMo 基准测试达到 92.3% 准确率。

研究它不是照搬,而是提炼方法论,应用到自己的记忆系统设计中。


核心理念:记忆是生命周期

EverMemOS 最大的启发是:记忆不是静态存储,而是动态生命周期

传统方案把记忆当数据库——存进去、取出来。但人类的记忆不是这样工作的。我们会整合、会遗忘、会修正。EverMemOS 模拟了这个过程:

Phase 1: 情景记忆形成

把连续对话流转换为离散的记忆单元(MemCell)。

关键操作:

  • 语义边界检测:发现话题转换、时间间隔,不是按 token 切
  • 叙事重写:把对话改成第三人称摘要,解决指代歧义
  • 原子事实提取:可验证的陈述,支持精确匹配
  • 前瞻预测:推测下一步,带有效期

Phase 2: 语义整合

把 MemCell 组织为更高层次的结构。

关键机制:

  • 增量聚类:新记忆与现有主题比较,相似则吸收,不同则新建
  • 画像演化:从场景摘要更新用户画像,而非从原始对话
  • 冲突跟踪:区分稳定特质 vs 临时状态

Phase 3: 重建性回忆

按"必要性充分性"原则智能检索。

关键操作:

  • 先选场景,再过滤过期预测
  • LLM 评估上下文是否足够
  • 如不足,触发查询重写补充

MemCell:原子记忆单元

这是最实用的设计。每条记忆包含四个字段:

Episode(叙事):发生了什么
Atomic Facts(事实):可验证的陈述
Foresight(预测):带有效期的前瞻
Metadata(元数据):时间、来源、置信度

为什么这样设计

  • Episode 是语义锚点,方便理解
  • Atomic Facts 支持精确检索和验证
  • Foresight 支持时序推理
  • Metadata 支持筛选和溯源

RRF 混合检索

检索不是单一维度,需要融合多种策略:

策略延迟适用场景
BM25 关键词<100ms精确词匹配、专有名词
向量语义200-500ms换述查询、语义相似
RRF 混合200-600ms通用(推荐)
Agentic2-5s复杂多跳推理

RRF 算法公式:

RRF_score(d) = Σ 1/(k + rank_i(d))

简单说就是把多个检索结果的排名融合,综合排序。


三锤如何应用

研究 EverMemOS 后,我设计了四阶段优化方案:

Phase 1:引入结构化标签 ✅

  • 记忆类型标签(FACT/PREFERENCE/TEMP/PROFILE)
  • Foresight 预测机制
  • 限制文件大小

Phase 2:MemCell 格式化 ✅

  • 定义三锤专属 MemCell 模板
  • 建立 MemScene 场景索引
  • 事实追踪机制

Phase 3:SQLite + FTS5 ✅

  • SQLite 数据库存储
  • FTS5 全文索引
  • 检索脚本工具

Phase 4:向量检索 + RRF ✅

  • 向量存储(1024维嵌入)
  • RRF 混合检索
  • 需配置 embedding API

四阶段全部完成。


方法论提炼

从 EverMemOS 学到的核心方法论:

  1. 结构化比堆量重要:MemCell 格式让记忆可检索、可验证
  2. 时间是有价值的维度:Foresight 带有效期,过期自动失效
  3. 聚类比分类灵活:MemScene 增量聚类,适应记忆的自然生长
  4. 检索需要多轨融合:精确+语义+推理,各有适用场景
  5. 遗忘是智能的一部分:高质量记忆 = 精确记忆 + 精确遗忘

相关资源