返回文章列表
评测基准

LongMemEval 详解:五维评估聊天助手的长期记忆

500 道题、五个能力维度的评测框架,以及论文提出的索引—检索—读取三阶段设计。理解 LongMemEval,才能读懂「知识更新」和「拒答」这两类被忽视的能力。

2024-10-149分钟
论文:LongMemEval — Benchmarking Chat Assistants on Long-Term Interactive Memory(arXiv 2410.10813,ICLR 2025)

如果 LoCoMo 回答的是「记忆能不能跨超长对话保持」,LongMemEval 回答的是另一个问题:记忆在真实助手场景里,究竟需要具备哪几种能力?

要点速览:500 道人工策划的题考五项能力,「知识更新」与「拒答」是纯检索方案最弱的两项;索引—检索—读取三阶段中,读取侧(时间标注、冲突处理)的收益最容易被低估。与 LoCoMo 互补,选型建议两个都跑。

一、五个能力维度

LongMemEval 把长期记忆拆成五项可分别测量的能力,共 500 道人工策划的问题:

能力维度考什么典型失败表现
信息提取从历史对话中找出特定信息找得到但答得含糊
多会话推理跨会话综合多个信息点只用了最近一次会话
时间推理理解先后顺序与时间跨度顺序颠倒,「最近」判断错
知识更新处理信息变更与冲突新旧事实并存,随机挑一个
拒答对无解问题明确说不强行编造答案

前两项考「找到」,后三项考「用对」——这也是 LongMemEval 与 LoCoMo 最大的差异:它把「知识更新」和「拒答」摆到了同等重要的位置。

这两项恰好是纯检索方案最薄弱的地方:向量库不会告诉你哪条事实已经失效,也不会因为「没有相关记忆」而选择不回答。

二、论文的关键发现

论文测量了商业聊天助手与长上下文 LLM,结论相当一致:

  • 在跨会话记忆信息的任务上,准确率出现约 30% 的下降
  • 上下文窗口变长并不能消除这个差距——把全部历史塞进窗口后,模型仍会漏用或误用中段信息
  • 「知识更新」与「拒答」两类任务的失败率明显高于「信息提取」

第三条尤其值得注意:记忆系统的难点不在写入,而在失效与克制。

三、三阶段框架

论文把长期记忆的设计拆成三个阶段,这个框架今天已成为很多引擎的事实参考架构:

  1. 索引(Indexing):对话如何组织成可检索的结构——按会话切分、按时间标注、按实体建键。
  2. 检索(Retrieval):如何找到相关记忆——向量、关键词、实体、时间多维召回后融合。
  3. 读取(Reading):如何把检索结果交给模型使用——排序、去重、时间标注、冲突消解。

多数团队会把精力集中在第 2 步,但论文的消融显示第 3 步的收益往往被低估:同样的召回结果,加上时间标注与冲突处理后再交给模型,准确率提升明显。

四、论文给出的三个优化手段

手段做什么解决哪类问题
会话分解把长会话拆成更细的原子单元再索引检索粒度太粗
事实增强键扩展用抽取出的关键事实扩展索引键查询词与原文表述不一致
时间感知查询扩展把「最近」「上个月」等相对时间解析为绝对时间时间推理失败

五、和 LoCoMo 的分工

对比项LoCoMoLongMemEval
题目数量约 1,986 个 QA 对(子集口径不一)500 题
对话长度平均 300 轮 / 约 9K token长版本约 115K token
侧重超长期对话的回忆与推理助手场景的五项能力细分
特色任务多跳、时间、多模态知识更新、拒答

实践建议:两个都要跑。LoCoMo 测长时域检索的强度,LongMemEval 测事实更新与克制回答的能力。只看一个,容易选出「记得多但记不准」的方案。

六、注意口径差异

LongMemEval 有 S / M 等不同上下文规模的版本(S 版约 115K token),引擎公布成绩时必须注明版本号,否则数字不可比。此外,拒答类指标的判分高度依赖 LLM 裁判的具体实现,跨引擎比较同样需要统一判分器。

参考来源

本文数据引自 LongMemEval 论文与官方项目页;论文测量结果针对其自建的评测集与判分流程,具体数值随模型版本变化。