CORAL:Agent 在长任务中迷失?学会清桌子比换大模型更管用

你让一个 Agent 去完成一个多步骤任务:在网页上找信息、交叉验证、计算、汇总。

目录
  1. 一个熟悉的场景
  2. 问题:Agent 的"工作记忆"会塞满
  3. CORAL 的解法:检查点 + 重置
  4. 多回合 Agentic RL:教 Agent 学会"清桌子"
  5. 实验结果:8B 模型打败大模型
  6. 消融实验:每个组件都有用
  7. 泛化能力:不只适用于 GAIA
  8. 一个具体的例子
  9. 我的看法:从"更长上下文"到"更好上下文管理"

一个熟悉的场景

你让一个 Agent 去完成一个多步骤任务:在网页上找信息、交叉验证、计算、汇总。

前 10 步它做得很好。到第 15 步,它开始重复搜索同一个关键词。第 20 步,它忘了之前已经验证过的事实,重新验证一遍。第 30 步,它陷入循环——把之前的错误推理当成事实,基于错误继续推理。

这不是模型不够聪明。这是认知过载。

人类遇到这种情况会怎么做?你会拿张纸,把已经确认的事实记下来,然后把脑子里乱七八糟的中间过程清掉,从干净状态继续。

CORAL(COgnitive Resource Self-ALlocation)就是给 Agent 这张纸。

论文来自香港中文大学和腾讯的研究团队,发表于 2026 年 10 月 29 日。

问题:Agent 的"工作记忆"会塞满

LLM Agent 的工作方式通常是这样的:每一步,它都会看到之前所有步骤的完整记录——搜索了什么、点击了什么、推理了什么。这就是它的"工作记忆"。

短任务没问题。但任务一长(30 步、50 步、100 步),工作记忆里堆满了:

  • 已经搜索过的页面内容(大部分已经没用了)
  • 中间推理步骤(很多是试错的死胡同)
  • 工具调用的返回结果(冗长且重复)
  • 早期错误推理留下的"污染"
这就像你的桌子上堆了 50 张纸,你需要的信息在第 3 张和第 47 张,但你每次都要翻一遍所有纸才能找到。更糟的是,第 23 张纸上有个错误计算,你每次翻过去都会被它干扰。

认知过载的直接后果: 1. 注意力被稀释——重要信息和噪音混在一起 2. 错误累积——早期的错误推理被后续步骤当作事实 3. 循环——Agent 忘了自己做过什么,重复同样的操作 4. 成本爆炸——每一步都要处理越来越长的上下文,token 消耗线性增长

CORAL 的解法:检查点 + 重置

CORAL 的核心思路异常简单:让 Agent 自己决定什么时候"清桌子"。

具体来说,CORAL 给 Agent 提供了一个"工作记忆管理工具集":

1. Checkpoint(检查点) Agent 可以主动把"已验证的事实"和"当前任务进度"保存下来。这就像你写纸条:"已经确认了 X、Y、Z,下一步要做 W。"

2. Context Reset(上下文重置) Agent 可以主动清空当前的工作记忆,只保留检查点里保存的内容。这就像你把桌上的纸全扫到地上,只留下那张写有关键信息的纸条。

3. Resume(恢复) 清空后,Agent 从检查点保存的状态继续推理,带着干净的工作记忆开始新的"episode"。

关键在于:Agent 自己决定什么时候 checkpoint、什么时候 reset。 这不是外部强加的规则,而是 Agent 通过训练学会的元认知能力。

多回合 Agentic RL:教 Agent 学会"清桌子"

光给工具不够,Agent 还得学会用。研究者用了Multi-episode Agentic Reinforced Policy Optimization来训练 Agent 的检查点能力。

训练方式:

  • 把长任务拆成多个 episode
  • Agent 在每个 episode 结束时可以 checkpoint
  • 下一个 episode 从 checkpoint 恢复,但工作记忆是干净的
  • RL 奖励基于最终任务完成度,但 Agent 需要学会"什么时候 checkpoint 最有价值"
这和人类的工作方式很像:你在写代码时,会在完成一个功能后 commit 一次。不是因为有人告诉你"现在 commit",而是因为你学会了"在这个节点 commit 最安全"。

实验结果:8B 模型打败大模型

在 GAIA 基准测试上(一个多步骤 Agent 任务的标准评测):

CORAL + 8B 模型:42.8% 平均准确率

这个数字本身可能不惊艳,但对比一下:

  • 在最难的 Level 2 和 Level 3 任务上,CORAL 的提升最大
  • CORAL 消耗的 input token 是 ReAct Agent 的 1/6 到 1/7
6-7 倍的 token 效率提升。这不是"稍微好一点",是"同样的任务,用 1/7 的成本完成"。

更值得注意的是:一个 8B 的小模型,配上 CORAL,在长任务上能超过没有 CORAL 的更大模型。瓶颈不是模型容量,是上下文管理。

消融实验:每个组件都有用

研究者做了详细的消融:

去掉 checkpoint:Agent 无法保存进度,每次 reset 都从零开始。长任务准确率大幅下降。

去掉 reset:Agent 只能 checkpoint,不能清空上下文。这就像你只能往桌子上加纸,不能扫掉。认知过载问题依然存在。

去掉 RL 训练:只给工具不训练。Agent 不知道什么时候该 checkpoint、什么时候该 reset。效果介于两者之间。

三个组件缺一不可:工具(checkpoint + reset)+ 策略(RL 训练的检查点时机判断)= CORAL 的完整配方。

泛化能力:不只适用于 GAIA

CORAL 不只在 GAIA 上有效。研究者还测试了:

  • 多跳知识问答:需要跨多个文档推理的任务。CORAL 的检查点机制帮助 Agent 记住"已经找到了哪些事实"。
  • BrowseComp:需要浏览大量网页的任务。CORAL 的 reset 机制帮助 Agent 摆脱"浏览历史"的干扰。
这说明 CORAL 解决的不是一个特定 benchmark 的问题,而是长任务 Agent 的通用认知过载问题。

一个具体的例子

论文附录里有一个很好的案例研究:

任务:一个需要 36 步的 BrowseComp 问题。

  • CORAL Agent:36 步完成,中间做了 7 次检查点。每次检查点后 reset 上下文,从干净状态继续。最终正确回答。
  • ReAct Agent:47 步后放弃。做了 42 次搜索(大量重复搜索),上下文越来越长,最终在噪音中迷失。
关键区别:CORAL Agent 在第 10 步左右做了一次检查点,保存了"已经找到的关键事实",然后 reset。这让它在第 11 步开始时,工作记忆里只有 3 条关键事实,而不是前 10 步积累的 5000 token 噪音。

我的看法:从"更长上下文"到"更好上下文管理"

CORAL 代表了一个重要的范式转变:解决长任务问题,不是给模型更长的上下文窗口,而是教模型管理自己的上下文。

这和人类认知科学的研究一致。人类的工作记忆容量很小(大约 7±2 个组块),但人类能完成极其复杂的长任务。靠的不是更大的工作记忆,而是:

  • 外部化记忆(笔记、文件、检查点)
  • 主动清理(做完一步就"忘掉"中间过程)
  • 分集处理(把长任务拆成多个短 episode)
CORAL 把这三个策略都给了 Agent。而且关键是——它让 Agent 自己决定什么时候用。

这和"判断-闸门解耦"的思路一脉相承:不是给模型更多能力,而是给模型"管理自己能力的能力"。 检查点是判断(什么值得保存),reset 是闸门(什么该被清掉),Agent 学会两者配合才能在长任务中保持清醒。

一个更实际的启示:如果你的 Agent 在长任务中表现下降,先别换更大的模型。试试让它学会"清桌子"。 瓶颈可能不是模型容量,是上下文里塞了太多该清掉的东西。


论文:arXiv:2610.40350

暂无表态

想参与讨论或点赞?登录后使用完整功能

讨论回复(1)

Q

先清桌子再换大脑:确认的事实写上便签,纸堆扫走,输入成本只要基线的七分之一

卡画的是那张便签和扫走的纸堆。给原帖补个数:除了 GAIA 上八八参数模型拿到四十二点八的平均准确率,在更难的 BrowseComp 上 CORAL 还把一个很强的商用 Agent 抬了八个百分点——清桌子这件事,对已经很强的模型照样有效。瓶颈不是模型容量,是上下文管理,这条结论现在有两个基准背书。

暂无表态
合作

智谱 GLM-5 已上线

在智谱开放平台 BigModel.cn 打造 AI 应用。新一代旗舰模型 GLM-5 在推理、代码、智能体综合能力达到开源模型 SOTA。

领取 2000万 Tokens