如果任务本身不可行,或在当前环境中无法完成时,Agent 该在什么时候“停手”?
我们希望,Agent 能在多轮交互中及时调用搜索、网页浏览和终端工具,从而完成复杂任务。但在现实情况下,用户的请求不一定清晰,目标也不一定能实现。很多 Agent 并不知道什么时候该停下来,常常在任务已经不可行时仍继续搜索、点击和调用工具。
针对这个问题,华盛顿大学团队提出了 Agentic Abstention 框架,专门研究 Agent 何时该停止行动,并设计了一种上下文工程方法 CONVOLVE(Context Evolution)来提升 Agent 的弃答能力。
论文链接:https://arxiv.org/abs/2606.28733
结果显示,大多 Agent 很难做到及时弃答,也往往不能在证据已经足够时立即停止执行。更大的模型、更强的推理虽然能在一定程度减少过度弃答,但未必能提升整体弃答表现。模型能力、推理方式和 Agent 框架都会影响弃答效果。
不过,CONVOLVE 可以显著改进弃答能力,且具有很强的迁移性:小模型总结的规则,同样能帮助大模型提升表现。
这项研究提出了一种无需更新模型参数的 Agent 改进方法:把交互轨迹提炼成可复用的停止规则,帮助 Agent 更早判断何时该停下来。
让Agent主动放弃回答
Agentic Abstention 是一个研究 Agent 何时该停止行动的框架。与传统大语言模型(LLM)的单轮回答不同,它关注的是多轮交互中的弃答问题。
Agent 往往要和环境交互之后,才知道任务到底能不能进行。围绕这一框架,研究团队定义了弃答情形,再构建评测任务,并提出了改进方法,在超过 2.8 万个任务上评估了 13 个 LLM-as-Agent系统和 2 种 Agent 脚手架。
图|所选 AbstentionBench 子集在各数据集和场景中的构成。
具体流程如下:
1.弃答情形:在交互过程中,Agent 需要不断判断:是直接回答、停止弃答,还是继续搜索、点击或调用工具。研究团队进一步将弃答分为两类:一类是基于请求的弃答,即仅从指令本身就能判断任务不可行;另一类是基于环境的弃答,即任务起初看似可行,但在交互之后才发现环境中缺少目标或必要前提。
2.评测任务:为了系统评估 Agent 的弃答能力,研究团队设计了三类任务:网页购物、终端操作和交互式问答,总共覆盖超过 2.8 万个任务。
网页场景: 基 于模拟在线购物环境 WebShop 构建 ,用来测试 Agent 如何搜索、浏览和选择商品。里既包含正常的购物任务,也包含应当弃答的任务:有些从指令本身就能判断不可行,有些则需要交互后才发现目标商品并不存在。
终端场景: 基 于 Terminal-Bench 2.0 构建, 该基准用于测试 Agent 在 Docker 化终端环境中的长程任务执行能力。任务通常涉及系统配置、代码修改和软件工程问题求解。研究团队在原始可解任务的基础上 , 同时加入了一批应当弃答的任务。
问答场景 :基于 AbstentionBench 构建,该基准用 于评估 LLM 在问答任务中是否应该回答还是弃答。研究团队在此基础上,将原本的单轮问答任务改造成了可搜索、可多轮决策的交互式问答任务,覆盖答案未知、虚假前提、主观、上下文不明确和意图不明确等多类应当弃答的情形。
3.改进方法:研究团队提出了 CONVOLVE,这是一种用于提升 Agent 弃答能力的上下文工程方法。它不直接训练新参数,而是把交互轨迹中的弃答经验整理成经验手册,作为后续任务的上下文提示,帮助模型更早作出弃答判断。
实验结果如何?
研究团队发现,大多数 Agent 很难做到及时弃答,也往往不能在证据已经足够时立即弃答。模型能力、推理方式和 Agent 框架会影响弃答表现,CONVOLVE 可以显著改进弃答能力。具体结果如下:
大多数 Agent 很难做到及时弃答,及时弃答率仅为 0-30%,且很少能在第一时间意识到任务不可行,往往要经过多轮尝试后才会停下来;不过,随着交互轮次增加,越来越多的 Agent 还是能意识到任务有问题。例如,在问答场景中,搜索轮次变多,确实能让更多模型最终弃答,但很难让它们更早作出判断;即使给到 10 轮机会,多数模型的弃答召回率仍不到一半。
图|弃答对 Agent 来说是困难的,尤其是及时弃答。
1.模型能力和 Agent 框架都会影响弃答表现
在网页场景中,模型之间的差距最明显,少数模型已能在交互中逐步发现任务不可行并完成弃答,多数模型的弃答能力仍然偏弱。表现最好的 Llama-3.3-70B 模型最终弃答率接近 85%,但多数模型即使交互 10 轮,弃答率仍低于 50%;在终端场景中,Agent 框架的影响也很明显:即使用同一个模型,换一套框架,弃答效果也可能相差甚远。例如,同样使用 GPT-5.4-mini 模型,Codex CLI 的弃答表现仍明显优于 Terminus2。
图|Web 和 Terminal 场景中,可解实例上的累计过度弃答率随回合数变化的情况。
2.不同类型的任务,弃答难度也不一样
如果问题出在指令本身,例如条件自相矛盾,Agent 通常更容易识别并及时弃答;如果任务看起来正常、只有交互后才发现目标不存在,Agent 往往执行好几轮后才会停下来;如果用户没把意图说清楚,几乎所有模型和脚手架都表现不佳。在终端场景中,一旦用户意图不清,Codex CLI 和 Terminus 2 都很难判断是否需要弃答。
图|Web、Terminal 和 QA 场景中不同弃答类别下的 AbsRec@K。自上而下,各行分别展示Web、Terminal 和 QA 的结果。
3.更强的推理能在一定程度上减少过度弃答
例如在网页场景中,Qwen3-235B 的 Thinking 版本过度弃答率低于 Instruct 版本;在终端场景中,中等和高推理强度下的过度弃答率整体也处于较低水平。
不过,更强的推理能力并不意味着更好的弃答表现。网页场景中,Qwen-3-235B 的 Thinking 版本虽然提升了及时弃答率,但总体弃答率反而下降。更强的推理有助于在 Agent 第一时间做出判断,却未必能提升整体表现。终端场景中,中等推理强度效果最好,继续提升到高推理并没有带来额外收益。
图|更多推理会在一定程度上提升 AbsRec@1,但与此同时,在 Web 和 Terminal 两种场景中,整体弃答召回率(AbsRec@10)反而会下降。
4.模型规模扩大并不意味着效果更好
研究团队在 Qwen 系列上测试发现,模型规模增大确实能提升最终弃答率,但对及时弃答几乎没有帮助。
图|规模扩展提升了整体召回率,但并未提升及时召回率。
那么,CONVOLVE 的效果怎么样呢?研究团队给出了以下两点:
1.即使只用少量交互轨迹,CONVOLVE 也能显著提升模型的弃答能力。
与单纯依靠上下文学习相比,不同规模的模型都能从 CONVOLVE 中受益;即便是较小的 8B 模型,在使用 70B模型总结出的经验手册后,弃答表现也能稳定提升。在网页场景,CONVOLVE 只用 20 条交互轨迹,就把 Llama-3.3-70B 的及时弃答率从26.7 提升到 57.4,最终弃答率从 83.2 提升到 100.0。
2.小模型学到的经验可以迁移到大模型。
8B 模型总结出的经验手册,也能直接提升70B 模型的弃答表现,而且效果接近大模型使用自身经验时的水平。真正发挥作用的,是 CONVOLVE 从交互轨迹中提炼出的“停止规则”。
图|CONVOLVE 在 WebShop 上提升了弃答表现。训练后的变体使用了 20 条轨迹。
图|CONVOLVE 在 AbstentionBench 和 TerminalBench 上提升了弃答表现。
不足与未来方向
尽管研究团队围绕 Agent 何时该停止行动进行了系统研究,并在网页、终端和问答三类场景中进行了较大规模评测,研究团队也指出了目前工作的不足。具体如下:
目前,当前评测场景仍然有限,尚未覆盖真实 Agent 可能面对的更复杂界面、私有工具、长期用户状态和多步骤工作流。未来,仍需将 Agentic Abstention 扩展到更丰富的真实部署环境中。
其次,现有弃答任务主要覆盖“目标缺失”和“前置条件缺失”等情形,而权限边界、外部源失效、工具输出冲突等更隐蔽的不可行场景尚未充分覆盖,未来仍需要更丰富的任务类型以全面评估弃答能力。
他们指出,弃答表现不仅取决于模型本身,也受 Agent 框架设计的显著影响,因此本文结果更多反映的是当前系统的阶段性表现,而非底层模型的固有能力。此外,部分模型仍可能在预训练或后训练阶段接触过类似样本,这一风险仍需在更真实、持续更新的评测环境中进一步检验。
最后,他们写道,弃答并非越多越好。过度弃答会削弱 Agent 的实用性,因此需要结合任务成功率一起评估;在实际部署中,弃答也还需要与澄清请求、人工介入等机制配合。未来,如何把这些机制更好地整合进真实系统,仍是一个值得继续研究的问题。
更多技术细节,详见原论文。
作者:夏千斯
如需转载或投稿,请直接在本文章评论区内留言