复杂Agent记忆,输给了一个朴素RAG
新论文发现,直接从原始对话检索的朴素RAG,在多个基准上击败了精心设计的Agent记忆系统。原因很简单:压缩记忆会切断答案所需的事实联系。这篇文章分析了为什么,以及什么样的记忆抽象才值得做。
新论文的标题像一个拷问:复杂Agent记忆是必要的吗?结论是,在很多对话理解任务上,一个简单的原始检索RAG,比精心设计的记忆系统更强。Akshay在推文中介绍这篇论文时评论说:RAG is so back(RAG回来了)。
论文来自Zhengye Bao等人,标题是《Is Complex Agentic Memory Always Needed? Naive RAG Is Stronger Than We Thought》。他们提出Raw-RAG(RAG即检索增强生成,先检索证据再让模型回答):直接从原始对话历史做稠密检索,重排,再把证据交给LLM回答。简单说,跳过记忆加工,需要回答时直接翻找原话,找到相关片段,让模型基于片段回答。在LoCoMo、LongMemEval、MEME、MemoryAgentBench四个基准、七种设置下,它拿下六个第一,比最强智能体记忆系统高出0.13到5.53分。
为什么朴素方法能赢?答案往往藏在多个相互关联的事实里:什么变了、何时变、影响了哪些旧事实。孤立的一个陈述撑不起回答。把对话压缩成独立记忆,会切断这些联系。Raw-RAG因为保留原话,能提供更多必需证据。作者发现,即使给记忆系统完整的转换存储访问,准确率仍然追不上原始证据。加工就是有损的。
有网友在推文下总结:记忆系统真正的坑,是把对话切成孤立记忆后,联系全断了。记不住反而不是主要问题。另一条评论更直接:原始段落保留了确切的措辞,而先总结再存储的记忆系统,可能会丢掉后来某个问题所依赖的那一个细节。这大概就是Raw-RAG赢的原因。
这和Akshay之前在另一篇文章里聊的Observations并不矛盾。他介绍Zep的做法:在知识图谱上做模式识别,找出跨对话的依赖链。比如三个工程师分别报告阻塞,单独看是三个问题,但观察层会识别出它们根源于同一个未完成任务。关键是,Observations不删除原始事实,每个观察都能追溯回具体消息和事实。摘要只负责描述结构,不替代证据。算法决定聚类,LLM只负责把结构写成文字。
所以,对Agent记忆来说,最简单的基线是先别丢东西。任何复杂的记忆系统,都应该先证明自己能赢过直接检索原文。如果你想在记忆之上构建抽象,至少要保证抽象可追溯,且不替代原文。否则,你只是在用一个更差的总结,替代原始证据。
参考:
- 论文:https://arxiv.org/abs/2610.30755
- Akshay的推文:https://x.com/akshay_pachaar/status/2114659720602534014
- Akshay关于Observations的文章:http://x.com/i/article/2086395867582603264
发布时间: 2026-10-27 03:11