六月写过 Advisor 的实现和第一轮单发评测(Advisor-实现与评测-agent编排层只读审查)。那篇文章的数据留了一道缝:advisor 真被触发的题上有局部正向——DeepSeek 执行、Opus 顾问的 Carbon 那组,token 降 37%,成本降 35%——但触发本身靠运气,多数题里模型根本不开口,再好的建议都在空转。
现在回头看,那轮评测有个先天缺陷。模型只有一次调用机会,读题、写 patch、交卷,中间没有工具、没有迭代,压根不存在”要不要问一下 advisor”这个决定。而 Advisor 的设计假设,恰恰是 executor 会在高风险点主动求教。这个假设从来没被检验过——单发 setting 里,它连问的机会都没有。
所以把评测框架重写成 agent loop。executor 变成一个真正的编码 agent:四个工具,读文件、改代码、跑命令、ask_advisor,在真实仓库里最多迭代 15 轮。它得自己决定什么时候读、什么时候改、什么时候问。问不问 advisor,第一次成了模型自己的决定。
数据给的答案很干脆:它不问。
题目从 SWE-bench Verified 分层抽了 20 道:Easy 7、Medium 7、Hard 6,覆盖 11 个仓库,seed 固定。两组 executor,DeepSeek Flash 和 GLM Air,都是便宜模型;每组各跑 solo 和 advisor 两个版本,advisor 挂同厂更强的模型,DeepSeek 侧配 DeepSeek,GLM 侧配 GLM 5.1。四组对照,同题同 loop。
| 配置 | resolved | ask_advisor 调用 |
|---|---|---|
| DS Flash solo | 9/20 | — |
| DS Flash + DS advisor | 10/20 | 4 次 |
| GLM Air solo | 13/20 | — |
| GLM Air + GLM 5.1 advisor | 12/20 | 0 次 |
数字小,结论不小。
先看调用次数,这轮评测真正的主角在右边一列。GLM Air 的 20 道题里,ask_advisor 被调用了 0 次。DeepSeek 好一点,20 道题 4 次,平均一题 0.2 次。求教时机写得清清楚楚:修复面不清楚、反复报错、准备换方案。模型当没看见。
这跟 Anthropic 官方文档的预告对得上:没有强 steering,coding executor 会少调用 advisor,模型天然倾向自己扛。实测比”少”更极端,接近零。原因不难猜。agent 模型被训练出来的本能是行动,读文件、跑测试、改代码,每一步都有即时反馈;ask_advisor 要停下来,等一轮,换来一段可能用不上的建议。对一个以行动为本能的 loop,这是最亏的一步棋。
再看成绩单。DeepSeek 从 9 涨到 10,净涨的这 1 题跟在 4 次调用后面,算谨慎的正向,4 次调用的小样本只能当信号看。GLM 那边掉了一题,13 变 12,而 advisor 全程没出场。这 1 题的波动只能记在机制自己头上:挂上 advisor,system prompt 变长,工具列表多一项,模型行为就被这点扰动带偏了。advisor-mode 有入场费,哪怕顾问一句话都没说。
两轮评测放一起,故事完整了。六月说:advisor 真触发时有价值,问题是触发太少。这轮说:把触发权完整交给模型,它选择永不触发。价值窗口存在,模型的触发本能和这个窗口几乎不重叠。
中间还有段插曲。评测间隙试了一次规模化,用 glm-air-solo 把 SWE-bench Verified 全量 500 题的生成跑完:310 题产出 patch,62%,429 污染清零。卡在最后一步,云端评测要配 Modal 凭证,一直没落地,砍掉了。这条线没拿到 resolved 数字,但顺带验证了一件事:便宜模型跑全量生成,成本和时间都可控,真正贵的是评测基建。分辨率继续引用 20 题先导的 13/20。
有个数字值得单独拎出来:GLM Air solo,20 题解 13,65%,总花费 $0.09。九美分。这个成绩放在 2024 年是科幻,放在 2026 年 9 月只是随手一跑的 baseline。
它顺带解释了 advisor 为什么难做。executor 本来就解得出大多数题,advisor 的价值被压到模型真不确定的少数题上;而模型恰恰在能解的题上从不求助,在解不了的题上也未必开口。价值空间本身就这么窄。
下一步的方向,数据指得很清楚:把触发权从模型手里收回一部分。第一轮没调用就在下一轮注入 reminder,风险信号出现时强制问一次,官方文档里这些都是现成建议。但强制调用会撞上六月评测的老结论:强 executor 自解能力摆在那里,逼它问,问回来的多半是它已经想明白的事。advisor 要在模型真不确定的题上才有价值,怎么在它开口之前知道它确不确定,这个问题比 advisor 本身更难。
六月那篇文章用”低频风险触发”收尾。这轮数据把”低频”往下压了一层:交给模型自己触发,频率是零。Advisor 的能力一直都在,DeepSeek 那边净涨的 1 题就走在 4 次调用后面;缺的是那个”该问了”的信号。当初以为模型自己会搞定的问题,最后成了整个方案里唯一没解的题。