一名工程师把自己2018年读工程时接触的一道NP-hard光纤网络设计题,重新丢给了Claude Fable 5GPT-5.6 Sol,各跑三轮完整配对测试,外加双方各自的持久化执行模式/goal。当年他用C++手写代码,花了一周才解出这道题。

没有悬念的部分是:Fable 5三轮均分全面压过GPT-5.6 Sol。有悬念的部分是,/goal在六次配对里赢了四次,却把两个模型的平均成绩都拖低了。这个反差决定了一件事:/goal该不该在Claude Code、Codex这类工具里当默认开关。

Fable 5 三轮跑赢 Sol,赢在方差更小

测试题目叫KIRO,来自作者2018年的一门工程课:给定格勒诺布尔、尼斯、巴黎三座城市的有向距离矩阵,要求用环形和短链把配电中心与终端连起来,目标是总布线长度最短。仅巴黎一个实例,若限定用19个28节点的环覆盖全部532个终端,可行解数量下界就有10^1223个,穷举没有意义。

测试统一给了30分钟优化预算,每个模型开到最高推理档位,跑在Harbor 0.1.43容器里。作者先让Fable 5、Opus 4.8、Sonnet 5、GPT-5.6 Sol、Terra、Luna六个模型各跑一轮探路,再把Fable 5和GPT-5.6 Sol拉出来各重复三次完整配对。

指标Fable 5GPT-5.6 Sol
无 /goal 三轮均分32,38634,261
开 /goal 三轮均分33,145(+759,变差)35,129(+868,变差)
三轮波动区间319分1,958分
三轮最佳成绩31,934(该次开 /goal)

Fable无/goal均分32,386,比Sol的34,261低1,875分(分数越低说明布线越短,成绩越好)。更值得记的是波动:Fable三次成绩挤在319分的区间里,Sol的区间宽达1,958分,摇摆是Fable的六倍。

三轮无 /goal 均分对比 Fable 5 均分 32,386 波动区间仅319分 三轮结果最稳 Sol 均分 34,261 波动区间1,958分 成绩摇摆更大 Fable 领先分数 1,875 且更少大幅回退 更稳定 Fable 5 单次最佳 31,934 分(该次开启 /goal) 数据来自三轮完整配对测试,30分钟预算/最高推理档

作者当年手写C++花了一周才解出这道题,这段经历只能当背景参照,算不上正式对照分数。但模型在30分钟内跑出比手工调一周更紧凑的解,至少说明这不是随手刷榜级的基准。

赢面四比二,均分反而更差:/goal 是放大器不是纠错器

三轮配对下来,/goal让两个模型的均分都变差了:Fable从32,386掉到33,145,Sol从34,261掉到35,129。但只看单次胜负,/goal在六次配对里赢了四次。

矛盾出在分布形状上。/goal通常带来几百分的小幅提升,偶尔造成两千到五千多分的大幅回退。中位数往对的方向挪了一点,坏尾巴却往错的方向挪得远得多,均值就被拖下去了。作者没有公开逐次运行日志和具体失败案例,这个解释目前只能从分数分布倒推,还不能坐实是不是真的沿着错误策略跑得更久。

两种/goal的实现本身也不是同一回事。Claude Code的/goal靠一个独立评估器,默认用Haiku:每轮主模型作答后,这个小模型读对话记录判断目标是否达成,它拿不到工具、看不到文件,只能靠转录文本猜。Codex的/goal完全不同——目标被持久化进SQLite,工作模型自己拿到create_goalget_goalupdate_goal这几个生命周期工具,线程空闲时Codex自动注入续跑指令,评估者和执行者是同一个模型。

同名功能,两套控制逻辑 Claude Code 独立评估器(默认 Haiku) 只读对话记录判断 看不到文件与工具 输出:yes / no + 理由 别人来判分 Codex 目标持久化进SQLite 工作模型自带生命周期工具 线程空闲自动续跑 完成判断=自己给自己打分 自己来判分 同一个命令,两套系统,不能当同一功能横向比较

胜率四比二,均值却更差,说明赢局多不代表这个开关值得默认打开。它更像放大器:策略对了多赚一点,错了就错得更久。

这个结论能用在哪:单题测试的边界

这次测试只覆盖一道未公开的NP-hard题,只有Fable 5和GPT-5.6 Sol凑齐了三组干净的配对样本,Opus 4.8、Sonnet 5、Terra、Luna每个都只跑了一轮探路,样本量支撑不起横向排行。

测试容器给了8个CPU核心,任务元数据却只声明1个,这对偏爱并行搜索的策略天然占便宜。各轮测试还是顺着订阅制服务依次跑的,中间可能存在服务端漂移,不是严格隔离环境。

对用Claude Code或Codex跑长时间优化任务的开发者来说,更现实的做法是:先跑一次不开/goal的完整流程,看代理自己选的策略稳不稳、有没有中间验证。如果任务是一步走错就回不了头的搜索问题——比如布线、排班这类NP-hard优化——更该先看策略质量,而不是看胜率。

接下来该盯的是样本量。如果换成几十道题、几十次配对,/goal的均分是不是还会继续跑输;现在只有两个模型三组样本,这次的回退到底是策略问题还是运气差,还看不清。