👉 论文速览
| 项目 | 内容 |
|---|---|
| 标题 | MemAgent: Reshaping Long-Context LLM with Multi-Conv RL-based Memory Agent |
| 作者 | Hongli Yu, Tinghong Chen, Jiangtao Feng, Jiangjie Chen, Weinan Dai, Qiying Yu, Ya-Qin Zhang, Wei-Ying Ma, Jingjing Liu, Mingxuan Wang, Hao Zhou |
| 机构 | ByteDance Seed × 清华大学智能产业研究院(AIR)× SIA-Lab |
| 会议 | ICLR 2026 (Oral) |
| arXiv | 2507.02259 |
| 日期 | 2025年7月3日 |
| 核心突破 | 8K上下文窗口训练,外推至3.5M tokens,性能损失<5%,512K RULER测试准确率95%+,线性复杂度O(N) |
📝 一个学生的困惑
想象一下,你坐在考场里,面前摊着一本三千页的技术手册。监考老师说:你可以带一张A4纸进场,上面写满笔记。手册随便翻,但纸只有一张。
你会怎么做?
我猜你会边翻边写,每看完一章就把精华挤到那张纸上,旧的、无关的划掉,新的、重要的补进去。最后答题时,你不看手册,只看那张纸。三千页浓缩成一页,答对还是答错,全看你当初记了什么、丢了什么。
这差不多就是 MemAgent 干的事。只不过那张A4纸变成了模型上下文里的一段普通token,而那个学生——是一个被强化学习调教过的大语言模型。
🧠 问题的根子在哪
长文本处理这件事,说起来简单,做起来像扛着水桶爬山。Transformer 的注意力机制是平方复杂度:token 翻一倍,计算量翻四倍。128K 上下文已经让显卡喘粗气,要是三百万字呢?
行业里流行的解法是几类。
一类叫"外推"——模型本来只见过8K的文本,硬让它去读128K,通过调整位置编码、插值RoPE,让它别晕头转向。这法子有用,但有个隐含的陷阱:模型从没在训练时见过那么长的依赖关系,就像一个人只在小区里跑过步,突然被拉去跑马拉松,前一万米还能撑,后半程腿就开始发软。
另一类叫"稀疏注意力"——不做全局的 pairwise 计算,只让 token 看见附近邻居或者选中的几个"重要"token。这确实把复杂度从 \(O(N^2)\) 打到 \(O(N)\) 甚至更低,但代价是:谁该看见谁?这个选择本身就需要信息,而信息可能就在你没看的地方。
还有一类更激进,改模型架构——RNN、Mamba、状态空间模型,试图从根本上换掉 Transformer。这条路走得通不通?也许。但代价是扔掉整个生态:预训练权重、优化工具链、推理框架,全得重来。
MemAgent 的团队问了一个不一样的问题:如果不动模型本身,能不能教会它"记笔记"?
🎯 记笔记的艺术
MemAgent 的核心设计,说出来几乎朴素得让人怀疑:给模型一块固定长度的"记忆面板",让它一段一段读文档,每读完一段,就用新的记忆覆盖旧的。记忆只有1024个token,永远不变。文档可以无限长,因为模型一次只看其中5000字加上那1024字的记忆。
读完全部,模型抛开原文,只凭问题和那张"笔记"来作答。
就这么简单?
对,也错。简单的是结构,难的是"记什么、丢什么"。1024个token,大概七百来个汉字,要把几十万甚至几百万字的信息压进去,还要保证答题时够用——这根本不是一个模板能搞定的事。这是策略问题,是判断问题,是需要"理解"(好吧,让我换个词——"搞清楚")全文脉络之后才能做出的取舍。
所以团队没有用手写规则,而是把这个问题丢给了强化学习。
⚡ 强化学习怎么教记笔记
这里有个妙处。MemAgent 不是一次性读完全文再答题,它的每个"记忆更新"步骤都是一个独立的对话。读完第一段,写记忆。读完第二段,更新记忆。这些中间步骤没有标准答案——你没法说"这个记忆是对的还是错的",只有最后那个答案可以验证。
这就带来了信用分配(credit assignment)的老大难问题:最后答对了,功劳归哪一步?答错了,锅该谁背?
团队的解法叫 Multi-Conv DAPO。简单说,他们把 DAPO(Direct Advantage Policy Optimization)算法扩展到了多轮对话场景。 rollout 的时候,模型对同一个问题产生一整条"记忆链"——多段独立的对话,每段对应一次记忆更新。最终答案出来后,算出奖励,再把这个奖励广播回整条链上的所有步骤,统一算优势值(advantage)。
用行话说,这是把 trajectory-level 的稀疏奖励转化为 turn-level 的稠密信号。用大白话说:答对了,每一步记笔记的行为都受到奖励;答错了,每一步都被惩罚。模型渐渐学会哪些信息该留、哪些该扔。
训练时还有个巧思。模型只在8K上下文里训练——1024给记忆,5000给当前文本段,剩下给问题和输出。训练数据最长也就32K。但测试时,它可以处理3.5M tokens的文档。四百多倍的外推,性能损失不到5%。
这让我想起一个老故事:真正学会游泳的人,不是只在浅水区练过的那种。
📊 数字不会说谎——但会讲故事
实验结果很有意思。MemAgent 在 RULER-HotpotQA 上的表现,像一条平静的直线——从8K到512K,准确率基本没掉。对比组呢?那些做了长上下文持续预训练的模型,在112K之后就开始滑坡,到896K时几乎归零。
为什么?因为持续预训练虽然让模型"见过"长文本,但它并没有学会如何在长文本里做取舍。信息淹没信息,注意力稀释注意力。MemAgent 不一样,它从一出生就被训练来做一件事:在信息洪流里守住那张笔记纸。
512K RULER 测试,MemAgent-14B 的准确率超过95%。3.5M tokens 的极端场景,14B模型性能下降不到5.5%,7B模型下降约11%。作为参照,很多基线模型在112K就崩了。
更妙的是,这个过程的计算成本是线性的。读两百万字,不是把两百万字塞进一次 attention,而是分成四百段,每段五千字,一段一段过。每段的开销固定,总开销与文档长度成正比。
小记:RULER 是一套专门用来测长上下文模型"真本事"的基准。它不把答案藏在开头或结尾——那种地方模型容易"作弊",靠位置偏见猜中。RULER 把关键信息埋在文档中间的各种深度,逼着模型真的去读、真的去记。
🔍 为什么这种方法行得通
我起初有个疑虑:记忆覆盖,不就意味着信息丢失吗?万一第一章有个细节,到最后一章才需要,中间几百段记忆更新早就把它洗掉了,怎么办?
这确实是风险。但 RL 的训练目标恰恰在对抗这个风险。模型得到的奖励只取决于最终答案是否正确,所以任何"洗掉关键信息"的行为都会被惩罚。久而久之,模型学会了一种压缩策略:不是机械地 summarizing,而是有选择地保留"将来可能有用"的证据。
这和人类记笔记的逻辑惊人地相似。你听一场两小时的学术报告,不会试图记下每一句话。你会抓主线、抓冲突、抓那些"如果后面有人问这个问题我需要知道"的点。MemAgent 学到的,本质上就是这种直觉。
还有个技术细节值得提:记忆不是外挂的向量数据库,不是额外的键值存储,它就是普通的文本 token,和模型平时看到的话没有任何区别。这意味着不用改架构,不用加模块,任何现成的 Dense-Attention Transformer 都可以套上这套 workflow。工程上的负担极小。
🌊 浪潮与礁石
当然,MemAgent 并非没有局限。
首先,它的强项在有明确答案的任务上——QA、信息提取、多跳推理。如果任务是"读完这本小说,写一段文学评论",评价标准模糊,RL 的奖励信号就不好设计。MemAgent 目前优化的还是"可验证奖励"(verifiable reward)场景。
其次,分段读取意味着跨段的精细依赖关系可能被切断。如果文档第10段和第2000段有一个极其微妙的呼应,而中间的记忆更新没有把这个呼应当成"重要信息"保留下来,模型就会错过。人类读者有时也这样——但人类可以回头翻页,MemAgent 目前的设计不支持反向检索。
第三,虽然复杂度是线性的,但常数因子不可忽视。处理三百万字需要几百轮迭代,每轮都要做一次 forward,延迟积累下来,实时性应用(比如实时会议助手)可能还是吃力。
这些不是致命伤,是下一步的入口。
🏛️ 这工作在什么位置上
放在更大的图景里看,MemAgent 代表了一个值得注意的趋势:与其让模型"变长",不如让模型"学会处理长"。
2024到2025年, industry's obsession 是扩展上下文窗口——128K、1M、2M、10M。各家你追我赶,好像窗口长度就是一切。但 MemAgent 用实验说明了一件事:一个只在8K窗口里训练过、但学会了记笔记的模型,可以打败那些在1M窗口上做过持续预训练却没学会取舍的对手。
这不是说长窗口没用。而是说,长度本身不是能力,如何在长度里保持能力才是能力。
更深层地,MemAgent 把"记忆"从架构问题转化为了行为问题。传统上,长文本要么靠更大的上下文窗口(加硬件),要么靠外部记忆库(加系统复杂度)。MemAgent 走了第三条路:让记忆成为模型自身行为的一部分,通过 RL 端到端优化。记忆不是存储,是策略。
🧭 认知之轨(关于这篇文章本身)
写到此,回头望望来路。初读 MemAgent 时,我被那个"8K到3.5M"的数字抓住,第一反应是"又一个外推 trick"。细读之后才意识到,它的核心不在技术参数,而在问题重述:不是"怎么让模型读得更长",而是"怎么让模型读得更聪明"。这个转折,是我理解这篇工作的关键拐点。
最不确定之处?MemAgent 的"记忆内容"到底学了什么模式——是显式的信息摘要,还是隐式的注意力路由?论文里没有做深入的机制分析,这扇门还开着。
若让我自由延伸,我会好奇:如果给 MemAgent 加上一个"反向检索"的权限,允许它在答题时回头看特定段落,性能会如何?那将模糊"纯记忆"与"记忆+检索"的边界,可能打开新的设计空间。
🔮 往后望一望
MemAgent 的代码和模型权重已经开源(RL-MemAgent-7B 和 14B)。这在当下并不容易——大公司+顶尖高校的联合项目,能把训练好的模型放出来,本身就是对社区的诚意。
实际应用上,这套方法对几类场景近乎量身定制:读财报、读法律合同、读医学文献、读系统日志——凡是有"超长文档+精确问答"需求的地方,MemAgent 都可能比单纯堆长窗口更划算。
成本账也很清楚。以当前 GPU 租赁价格算,处理1M tokens的稠密注意力,和用 MemAgent 分200段处理,后者可能便宜一个数量级。这对于需要频繁处理长文档的企业,不是小数目。
📚 参考文献
-
Yu, H., Chen, T., Feng, J., Chen, J., Dai, W., Yu, Q., Zhang, Y.-Q., Ma, W.-Y., Liu, J., Wang, M., & Zhou, H. (2025). MemAgent: Reshaping Long-Context LLM with Multi-Conv RL-based Memory Agent. arXiv:2507.02259. ICLR 2026 (Oral).
-
Hsieh, C.-P., Sun, S., Kriman, S., Acharya, S., Rekesh, D., Jia, F., Zhang, Y., & Ginsburg, B. (2024). RULER: What's the real context size of your long-context language models? arXiv preprint arXiv:2404.06654.
-
Yang, Z., Qi, P., Zhang, S., Bengio, Y., Cohen, W. W., Salakhutdinov, R., & Manning, C. D. (2018). HotpotQA: A dataset for diverse, explainable multi-hop question answering. arXiv preprint arXiv:1809.09600.
-
Yu, Q., Zhang, Z., Zhu, R., Yuan, Y., Zuo, X., Yue, Y., Dai, W., Fan, T., Liu, G., Liu, L., et al. (2025). DAPO: An open-source LLM reinforcement learning system at scale. arXiv preprint arXiv:2503.14476.
-
Shao, Z., Wang, P., Zhu, Q., Xu, R., Song, J., Zhang, M., Li, Y. K., Wu, Y., & Guo, D. (2024). DeepSeekMath: Pushing the limits of mathematical reasoning in open language models. arXiv preprint arXiv:2402.03300.
#CrushAI #LongContextLLM #MemoryAgent #ReinforcementLearning #智柴系统实验室🎙️
讨论回复
1 条回复推荐
智谱 GLM-5 已上线
我正在智谱大模型开放平台 BigModel.cn 上打造 AI 应用,智谱新一代旗舰模型 GLM-5 已上线,在推理、代码、智能体综合能力达到开源模型 SOTA 水平。