Mem0g用图谱拿到 68.4%,TiMem5 层时间树为什么走另一条路

我前阵子在跑一个长会话的 agent demo,连续 200 轮对话之后用户突然问:"我上次说的那个公司你还记得吗?"

Mem0 选择性 pipeline 检索回来的是用户两个月前提过一次的公司名,但用户中途已经换了工作。Agent 一本正经地用了过期信息回答,被用户当场拆穿。

这个 case 让我重新审视了 2026 年这波 AI agent 记忆方案------尤其是 Mem0 团队在 v1.0.0 推出的图增强变体 Mem0g 之后。

Mem0g 凭什么能在 LOCOMO 上拿 68.4%

Mem0g 的设计思路很直接:在 Mem0 原本的向量存储之外,额外搭一层有向、带标签的知识图谱。

具体运作链路是三件套:

  • Entity extractor 从对话文本里抽出节点(用户、公司、产品、地点)
    • Relations generator 推断节点之间的标签化边(works at、located in、prefers)
    • Conflict detector 检测新信息和已有图谱节点/边的冲突
      ECAI 2025 那篇 benchmark 论文(arXiv 2504.19413)里给出的数据很有说服力:在 LOCOMO 多跳推理子集上,Mem0 LLM Score 是 66.9%,加了图谱的 Mem0g 提到 68.4%,p95 latency 从 1.44s 涨到 2.59s。

1.5 个百分点的精度提升,换 1.8 倍的延迟开销------在多跳关系推理题目上,这笔账算得过来。

但我看完源码后有个疑问:conflict detector 真的稳吗

Mem0g 的图谱方案有一个隐性前提------conflict detector 必须能可靠识别"新信息和旧节点冲突"。

放到开头那个例子:用户两个月前说"我在 A 公司",今天说"我刚跳槽到 B"。一个理想的 conflict detector 会标记 (user, works_at, A) 和 (user, works_at, B) 冲突,然后做覆盖。

实际跑下来的问题:

  1. 冲突检测依赖 LLM 的语义判断,模型一旦没把"跳槽"识别成 works_at 关系的更新,老节点就不会被淘汰
    1. 图谱写入是离线 pipeline,下次召回时如果两个节点都还在,单跳查询可能返回任意一个
    1. 对时间序的处理是"事后打补丁"------每个节点上要额外挂时间戳,召回时再做时间过滤
      这些细节在 paper 里被一句"conflict detector flagging contradictions"轻轻带过了。

TiMem 用的是另一套设计

TiMem(github.com/TiMEM-AI/timem)不走"向量 + 图谱"的双结构路线,走的是 5 层 Temporal Memory Tree (TMT)。

5 层从下往上是:

  1. Fragment------原始对话片段,保留完整上下文
    1. Evidence------从片段里提炼的事实证据,带时间戳
    1. Fact------聚合多条证据后形成的稳定事实
    1. Trait------用户的偏好、习惯、风格特征
    1. Persona------稳定人设画像
      每一层都有显式的时间序,上层 consolidation 时会自动用更新的下层覆盖陈旧的下层。

回到跳槽的例子,用 TiMem 跑:

  • 第 1 轮:"我在 A 公司" → fragment + evidence (timestamp: t1)
    • 第 200 轮:"我跳槽到 B 了" → fragment + evidence (timestamp: t2)
    • consolidation 触发时,新 evidence 升级到 fact 层时用 t2 覆盖 t1
      不需要专门跑 conflict detector,时间序本身就是 conflict 的解。

这套设计在更长程的 benchmark 上发力

LOCOMO 的对话长度还没那么夸张。真正考验长程一致性的是 LongMemEval-S------平均会话长度比 LOCOMO 长一倍以上,且专门测试"模型是否被早期错误信息误导"。

TiMem 在 LongMemEval-S 上是 SOTA。

为什么?因为这个 benchmark 的题目大量是"用户某个事实在中途变化了,agent 应该用新的还是旧的"------这正好是时间分层最擅长的领域。Mem0g 的图谱在这里需要 conflict detector 拼命兜底,TiMem 的 5 层结构相当于在系统层解决了同一个问题。

选型建议

不给一个谁吊打谁的结论,因为两套方案的最佳战场不一样。

选 Mem0g 的场景:

  • 短到中等长度会话(< 50 轮)

    • 多跳关系推理是主要任务(比如"用户的同事的项目用了什么技术栈")
    • 团队已经在用向量数据库,不想引入新的存储模型
      选 TiMem 的场景:
  • 长程会话(数百轮以上)

    • 用户状态/偏好会持续变化
    • 要 selective forgetting(记住,但用最新的)
    • 不想为"实体提取 + 关系生成 + 冲突检测"三件套单独维护一条 pipeline
      最近 ICLR 2026 接收的那篇 MemoryAgentBench(arXiv 2507.05257)把 agent 记忆的核心能力归为四类:accurate retrieval、test-time learning、long-range understanding、selective forgetting。前两类 Mem0g 不输甚至更强,后两类 TiMem 的结构性优势会更明显。

如果你正在选型,与其纠结"哪个框架更强",不如先看自己的场景落在哪个能力维度上。

那个让我重新审视方案的 demo 后来用 TiMem 重跑了一次。同样 200 轮对话,用户问"我上次说的那个公司",agent 用的是最新的 B 公司------没用 conflict detector,没写额外的过滤逻辑,时间序自己解决了问题。

这是我决定换路线的真正原因。

相关推荐
月诸清酒2 小时前
52-260504 AI 科技日报 (四月AI架构密集发布,模型更新潮来临)
人工智能
AI周红伟2 小时前
一天赚5个亿的超级个体天花板李一舟:普通人可借鉴的6点
大数据·人工智能·搜索引擎·copilot·openclaw
MATLAB代码顾问2 小时前
AI Agent智能体开发实战:LangChain自动化工作流
人工智能·langchain·自动化
永远不会的CC2 小时前
Hello-Agents 初识智能体(实现一个简单旅游推荐智能体)
人工智能·学习·旅游
AI科技星2 小时前
全域数学三元公理体系下π的射影几何本源阐释 - 基于兵棋推演框架改造:常温超导仿真验证【乖乖数学】
人工智能·线性代数·机器学习·量子计算·agi
sali-tec2 小时前
C# 基于OpenCv的视觉工作流-章60-点点距离
图像处理·人工智能·opencv·算法·计算机视觉
Data-Miner2 小时前
61页可编辑PPT | 人工智能基础知识培训
人工智能
TDengine (老段)2 小时前
红有软件重构智能油田时序数据底座,支撑生产实时感知与设备预测性维护
大数据·数据库·人工智能·重构·时序数据库·tdengine
极智视界2 小时前
分类数据集 - 糖尿病视网膜病变检测图像分类数据集下载
人工智能·yolo·数据集·图像分类·算法训练·医学影像分析·糖尿病视网膜病变检测