LoCoMo 基准详解:长期对话记忆评测的事实标准
平均 300 轮对话、9K token、最多 35 个会话、近 2000 个 QA 对——LoCoMo 如何构造,考什么能力,以及为什么跨引擎比数字要格外小心。
平均 300 轮对话、9K token、最多 35 个会话、近 2000 个 QA 对——LoCoMo 如何构造,考什么能力,以及为什么跨引擎比数字要格外小心。
论文:Evaluating Very Long-Term Conversational Memory of LLM Agents(arXiv 2402.17753,2024-02-27)
LoCoMo 是目前记忆引擎领域引用率最高的评测基准。只要一款记忆引擎公布成绩,几乎一定会给 LoCoMo 的数字。理解它的构造方式和评测口径,是读懂这些数字的前提。
要点速览:LLM 生成的超长对话基准——平均 300 轮、主评 1,540 个 QA 对,考单跳 / 多跳 / 时间 / 开放域四类能力。各引擎的评测子集、判分器、版本各不相同,文末那张成绩表不能当排行榜读。
LoCoMo 的对话不是真人聊天记录,而是由 LLM Agent 基于角色设定与时间事件图生成的。构造流程决定了它的特点:
| 数据集特征 | 数值 |
|---|---|
| 每段对话平均轮数 | 约 300 轮 |
| 平均 token 数 | 约 9K |
| 会话数 | 最多 35 个(v1 统计均值约 19.3 个) |
| 常用评测子集 | locomo10 共 1,986 个 QA 对,主评常用其中 1,540 对 |
注意两个常见误读:「35 个会话」是上限而非平均值;LoCoMo 的 QA 对是千级规模,而不是几十个。
LoCoMo 的问答任务分四类,外加两项生成任务:
| 任务类型 | 考什么 | 为什么难 |
|---|---|---|
| 单跳(Single-hop) | 从某一句对话里找事实 | 速度快但定位要准 |
| 多跳(Multi-hop) | 跨多个会话、多个事实做推理 | 需要关系结构,纯向量方案最吃力 |
| 时间推理(Temporal) | 理解时间顺序、事件先后、时间跨度 | 需要记忆带时间属性 |
| 开放域(Open-domain) | 常识 + 个人经历结合 | 模型自身知识会干扰 |
| 事件总结 | 跨会话梳理事件脉络 | 考压缩与归纳 |
| 多模态对话生成 | 含图像的记忆 | 考跨模态对齐 |
这四类问答的设计意图很明确:单跳考检索精度,多跳考结构推理,时间考时序建模,开放域考抗幻觉。
原论文最重要的结论不是某个方法拿了多少分,而是一个反直觉的事实:长上下文模型在超长期对话上的表现会显著退化,而且退化的不只是「记不住」,还包括「记住了但用不对」。
这与后来的 LongMemEval 观察一致:把全量历史塞进窗口,并不等于模型能正确使用这些历史。这也是「记忆引擎」作为独立品类成立的实证基础。
LoCoMo 已成为事实标准,但它有四个容易造成误比较的地方:
locomo10 全量 1,986 对与主评 1,540 对的结果不可直接对照。以下为各引擎官方公开口径(截至 2026-09,按数值排序):
| 引擎 | LoCoMo | 口径说明 |
|---|---|---|
| MemoryLake | 94.03% | 官网自述全球第一,附复现仓库 |
| Zep | 94.7% | 官方研究页口径(1,459/1,540) |
| Mem0 | 92.5 | 2026-04 新算法 |
| MemoryBear | — | 官网公开回忆准确率 96.88%(非 LoCoMo 口径,不可直接对比) |
| MemOS | 88.83 | 论文自报 |
| TiMem | 75.30% | 论文自报,发布时点较早 |
这张表不能当排行榜读。 各家测试子集、判分器、上下文预算都不公开统一,数值只代表「在各自条件下」的结果。真正可靠的判断方式是:用你的业务语料构造一套小规模评测集,让候选引擎跑同一套题。
本文榜单数值均为各引擎官方公开口径,未经本平台统一复测;测试子集与判分方式存在差异,请勿直接用于排名。