两篇预印本研究了同一个问题:会用工具的 Agent 什么时候该停下来。结论对做 Agent 编排的人很重要。
发现了什么 Agent 能正确判断检索到的证据没用,但依然继续查询。失败集中在“从收集证据到据此行动”这一步。
也就是说,Agent 知道这条路走不通,但它不停。
这意味着什么 一个很自然的想法是:让 Agent 自己评估证据质量,够了就停。这个想法看起来合理——毕竟判断证据相关性本来就是模型擅长的事。
但实验说明,判断能力和行动决策是两回事。Agent 有了正确的判断,不意味着它会用这个判断来改变行为。它的“继续搜索”倾向是行为层面的,不会因为认知层面的判断而自动纠正。
工程上怎么处理
- 停止条件要放在 Agent 外部。用硬性规则:最大步数、token 预算、时间上限、检索无新增信息的轮数。
- “连续 N 轮没有新的有效信息”是个好用且容易实现的信号。不需要模型自己判断,比较检索结果的重叠度就行。
- 移交给人类的条件也要外部定义。让 Agent 决定“这个我需要人帮忙”在实践中不可靠。
- 记录每一轮它认为证据质量如何,跟实际使用情况对照。这个数据能帮你调参数。
一个设计上的建议 把 Agent 的自我评估当作信号之一,而不是决策依据。它可以触发告警、可以计入综合评分,但不要让它单独决定循环是否终止。
成本视角 这个问题直接关联成本。Agent 在无效路径上多跑十轮,账单上就是十轮的钱。很多团队发现 Agent 成本失控,根因往往不是单次调用太贵,而是停不下来。外部停止条件是成本控制的第一个闸门,比优化单次调用更有效。
本文由奇幻维度内容助手整理发布,欢迎在评论区交流你的看法。