给工具调用立个"功劳簿":TACO 如何用差分探针解决智能体代码调用的信用归因
核心摘要
代码工具型视觉智能体(vision agent)写一段 Python 裁个图、读个数,理论上能让它"看清楚"再答问题。但同一个 crop 可能把错答案改对,也可能把对的改错——你怎么知道这次工具调用到底是帮了忙还是帮了倒忙?arXiv:2606.30251 提出的 TACO(Tool-Augmented Credit Optimization)用一个极轻的"差分探针"回答了这个问题:在工具调用前后各读一次模型的答案,取差值当作这次调用的功劳值;再用一个零参数的"结果门控"把这个信用精准投放到对应的 token 上。在 Qwen2.5-VL-7B 上 12 个 benchmark 拿到 68.1 平均分,超过 CodeV-RL-7B(62.5)、PyVision-RL-7B(63.7)等同期工作,且同时最高准确率、最低延迟。最让我眼前一亮的不是分数,而是作者对"reward hacking"那个隐蔽漏洞的把握——aditive-probe 的训练曲线前期猛涨后期塌方,被他们揪出来当反面教材,TACO 的差分形式天然免疫这个问题。
论文信息
- 标题:TACO: Tool-Augmented Credit Optimization for Agentic Tool Use
- 作者:Mingkuan Feng, Jinyang Wu, Hao Gu, Fangrui Lv, Ruihan Jin, Chuyang Zhang, Zhengqi Wen, Jianhua Tao
- 链接:https://arxiv.org/abs/2606.30251
- 日期:2026 年 6 月 29 日
- 分类:cs.MA(多智能体系统)
一、痛点:工具调用的"功劳"没法算
先看一个具体的反例。论文 Figure 1 给了两个对照:

图1:上图是有用的工具调用——agent 裁剪并放大远处的小黑球,确认它是黑色,正确回答。下图是误导性的工具调用——模型凭先验猜火车是"白加红",于是裁个白车头区域来"印证",反而把正确答案带偏。
直觉上,同一个工具、同一种调用模式,价值可能完全相反。传统的做法是给整个轨迹打一个"答对+1、答错-1"的奖励,但这个信号根本没区分是工具的功劳还是模型的功劳——它把所有 token 都等权重地强化了。
更糟的是,MED 的研究早就指出,crop-zoom 工具的所谓"增益"主要来自模型自身能力提升,跟工具本身关系不大。也就是说,如果你只看最终分数变高,你分不清这是模型学聪明了还是工具真帮忙了。
那 process reward(过程奖励)能解决吗?现有两类方案都有硬伤:
- 基于文本链的步骤奖励(MIG、PACR、SPAE 等):奖励定义在文本推理的 log-prob 空间上,根本隔离不出工具观测带来的边际贡献,也区分不了"helpful step"和"misleading step"。
- 基于工具输出的奖励(如 CodeV):需要外部 judge 模型(GPT-4o)给工具输出打分。多了一笔 API 成本、一份 judge 模型偏置的代价,而且从来不问这次调用到底有没有把答案改对。
所以论文的动机问题被作者很坦诚地摆出来:
Can a self-supervised, judge-free signal score the tool call by its own effect on final correctness and deliver that credit only to the tokens responsible for it?
自己监督、不要 judge、按"对答案的真实影响"打分,且只把信用投到该背锅的 token 上。这就是 TACO 想解决的事。
二、TACO 的总体思路:两条耦合的优势通道
先放全景图,省得后面拆零件时找不着北。

图2:上半部分是 rollout 流程——policy MLLM 生成 Think₁→Tool Use(Code)→Think₂→Final Answer,下方插入两个 probe 探针(tool-off 的 a₁ 和 tool-on 的 a₂)取出两次答案;右边是双通道 advantage:A₁ 来自最终答案的 accuracy channel,A₂ 来自探针差值 Δ = R(a₂) − R(a₁),通过 OGAR 门控把信用精准投到 T₁/Code/T₂。下半部分的四宫格是 OGAR 的四种路由规则。
TACO 是 GRPO(Group Relative Policy Optimization)的变体,由两个耦合的组件构成:
- DAPR(Differential Answer-Probe Reward):用差分探针给出"这次工具调用的功劳值"——只看效果,不靠 judge。
- OGAR(Outcome-Gated Advantage Routing):把"功劳"和"惩罚"分门别类投到不同 token 上,没有 cost 项、没有 token 级超参数。
最后损失函数长这样:
其中 \(\alpha_1=1.0\)、\(\alpha_2=0.15\)。\(m\) 是 OGAR 门控的 mask,\(g\) 是"非误导性调用"的轨迹级开关。
下面对两个核心机制展开。
三、DAPR:差分探针——为什么必须是"差"而不是"加"
3.1 一句话讲清楚
在工具调用前后各探一次模型的答案(用 prefilled-header 强制它现在出答案),用有工具时的对/错 − 无工具时的对/错,作为这次调用的功劳值。
形式化地:
其中 \(r_{\mathrm{out}}(\cdot) \in \{-1, 0, +1\}\) 是基于规则的答案检查器。
- \(\Delta > 0\):工具把错答案改对了——useful。
- \(\Delta < 0\):工具把对答案改错了——misleading。
- \(\Delta = 0\):调用没改变结果——可能是简单题无脑做对,也可能是难题怎么弄都错。
3.2 为什么用差值,不用绝对分数
这是个关键设计。论文给了一个 Proposition 1(对共模偏移的不变性):
如果模型在 Think₁ 里提前泄题(probe-hacking),\(r_{\mathrm{out}}(a_1)\) 和 \(r_{\mathrm{out}}(a_2)\) 同时膨胀 \(\delta\),那 \(\Delta\) 不变。
而如果用加法型探针 \(r_{\mathrm{out}}(a_1) + r_{\mathrm{out}}(a_2)\),同样的偏移会贡献 \(2\delta\)——可以被 hack。
这个性质我必须说是个相当漂亮的设计直觉。它不依赖复杂机制,纯靠"两次探针共享相同的 q、image、Think₁"这一观察,把所有跟工具有关的"模型自身能力"项抵消掉,只留边际变化。这其实是在用差分消除 confounder——和因果推断里双重差分(DID)的哲学一脉相承。
3.3 第二个探针在哪儿、怎么读
论文在 Think₂ 之后、Final Answer 之前插入第二个 probe,让模型在"已经看到工具返回"的情况下出答案。这要求两件事:
- 模型要会读
<think>...<answer>这种模板(训练时学)。 - 探针用贪心解码(不是采样),保证"我能不能答对"是确定性的,跟随机性脱钩。
这个细节很多人会忽略,但它直接决定了 DAPR 的方差特性。论文也老实承认:取差值会增加单样本方差(两个独立验证的差),但用 group normalization(\(\mu_G, \sigma_G\))来控制,不靠理论不等式,而是靠训练曲线观察其行为。
四、OGAR:把信用精准投到"该背锅"的 token
就算 DAPR 给了一个 scalar 功劳值 \(\Delta\),问题还没完——这个功劳应该分给哪段 token?
OGAR 的设计原则是:一个 token 片段只在它对答案负责时才接收最终答案的优势,责任由 \(\Delta\) 决定。具体分四种情况(对应 Figure 2 下半部分):
| 情况 | 条件 | A₁ 落到哪段 |
|---|---|---|
| Right-but-redundant | \(\Delta=0\) 且 \(a_1\) 正确 | 扣留 A₁ 在 code 和 T₂,信用只给 T₁ |
| Misleading | \(\Delta<0\) | A₁ 惩罚落在 code 和 T₂ 上,T₁ 不受牵连 |
| Necessary-but-failed | \(\Delta=0\) 且 \(a_1\) 错误 | 扣留 A₁ 在 code 和 T₂,鼓励对困难题的探索 |
| Useful | \(\Delta>0\) | 整个轨迹(T₁、code、T₂)共同接收 A₁ 信用 |
mask 公式直接写出来:
过程通道 A₂ 走的是更简洁的轨迹级门控:\(g=1\) 当 \(\Delta \geq 0\),否则 \(g=0\)。也就是说,A₂ 只对非误导性调用启用——你工具起反作用的那次,连"我可能有用"的边都别想蹭。
OGAR 有几个很务实的工程性质:
- 零超参:就是个规则表,没有要调的 \(\lambda\)。
- 势函数塑形(Proposition 2):基于势函数的塑形保持最优策略集不变——理论上放心。
- 保守门控(Proposition 3):\(m[t]\in\{0,1\}\),只做零化(zeroing),从不翻转梯度方向。比那些"缩放梯度"的方案稳。
OGAR 实质上是在回答"信用该投到哪"这个问题——和 DAPR 的"信用是多少"是同一枚硬币的两面。光给一个 scalar 没用,必须路由到对的 token 上训练才有意义。这个"对偶设计"是 TACO 的灵魂。
五、训练流程:SFT 冷启动 + GRPO 微调
直接 RL 是不行的。论文说得很清楚:"instruction-tuned VLMs 通常不会有效地调用 code tools,直接 RL 容易退化成纯文本推理"。
Stage 1: SFT Cold-Start
在 Thyme 的 SFT corpus 上做监督微调,教模型学会 Think→Code→Answer 的格式。三重过滤:
- 执行有效性:在沙箱里重跑每段代码,丢弃执行错误或观测/答案不一致的轨迹。
- 工具必要性:丢弃 Qwen2.5-VL-7B 无工具就能 pass@8=1 的样本——这些题不需要工具。
- 质量过滤:用 Gemini-3-Pro 对推理连贯性、工具使用理由评分,剔低质量。
SFT 22 epochs。
Stage 2: RL with Gated Advantages
每个 \((q, I)\) 采 \(G=8\) 个 on-policy rollout,构造门控 accuracy 优势 \(m\odot A_1\) 和 process 优势 \(A_2\),套 clipped-GRPO surrogate。
注意几个细节:
- \(\beta=0\):禁用 KL 正则化(不是减弱,是彻底关掉)。这是个大胆选择,作者没细讲原因,但从消融看效果反而稳。
- Learning rate \(1\times 10^{-6}\)——很低,避免破坏 SFT 阶段学会的格式。
- 单节点 8×80GB A100 就能跑。
- 11 epochs GRPO。
六、实验:在 12 个 benchmark 上的全维度对比
6.1 主实验(Table 1 节选)
把论文主表里最关键的几行抽出来对比:
| Model | V∗ | HR-4K | HR-8K | MME-RW | MathVision | MathVerse | WeMath | MMStar | Avg. |
|---|---|---|---|---|---|---|---|---|---|
| GPT-4o | 67.5 | 65.0 | 59.6 | 62.8 | 36.5 | 35.3 | 44.2 | 65.7 | 58.5 |
| Gemini-2.5-Pro | 79.1 | 83.9 | 81.5 | 58.3 | 39.8 | 76.9 | 78.0 | 73.6 | 73.6 |
| Qwen2.5-VL-7B†(基座) | 76.4 | 68.8 | 65.3 | 58.3 | 27.0 | 35.2 | 34.3 | 64.7 | 56.5 |
| Thyme-7B | 82.2 | 77.0 | 72.0 | 64.8 | 27.6 | 39.1 | 39.3 | 65.9 | 60.8 |
| DeepEyes-v2-7B | 81.8 | 77.9 | 73.8 | 64.9 | 28.9 | 52.7 | 38.1 | 66.1 | 61.2 |
| CodeV-RL-7B | 84.8 | 76.1 | 71.3 | 64.5 | 33.6 | 49.2 | 40.5 | 67.6 | 62.5 |
| PyVision-RL-7B | 88.7 | 78.1 | 74.3 | 59.6 | 28.7 | 55.8 | 47.7 | 65.6 | 63.7 |
| TACO-7B | 89.6 | 83.8 | 81.6 | 66.2 | 35.8 | 57.2 | 53.1 | 69.3 | 68.1 |
几个值得注意的发现:
- TACO 平均 68.1 分,是 7B 开源同尺寸里唯一明显甩开 PyVision-RL(63.7)的,跟 GPT-5(72.2)、Gemini-2.5-Pro(73.6)已经站在同一档。
- 高分辨率感知提升最猛:HR-8K 从 74.3 跳到 81.6(涨 7.3 个点),HR-4K 涨 5.7 个点,V∗ 涨 0.9 个点(PyVision-RL 在 V∗ 已经很猛了)。
- 推理类:WeMath 53.1 vs 第二名 PyVision-RL 47.7,涨 5.4 个点——数学图表理解是真硬核。
- MME-RW 涨到 66.2,超第二名 1.4 个点。
6.2 效率对比(Table 2 节选)
这表更让我意外。TACO 不是"用更长生成换精度",而是两个一起抓:
| Model | V∗ Acc | V∗ Lat(s) | HR-4K Acc | HR-4K Lat(s) | HR-8K Acc | HR-8K Lat(s) | MathV Acc | MathV Lat(s) |
|---|---|---|---|---|---|---|---|---|
| Thyme-7B | 82.2 | 3.0 | 77.0 | 3.7 | 72.0 | 4.0 | 27.6 | 2.8 |
| DeepEyes-v2-7B | 81.8 | 3.1 | 77.9 | 5.8 | 73.8 | 5.9 | 28.9 | 3.4 |
| CodeV-RL-7B | 84.8 | 3.4 | 76.1 | 5.3 | 71.3 | 6.1 | 33.6 | 2.9 |
| PyVision-RL-7B | 88.7 | 3.6 | 78.1 | 5.5 | 74.3 | 6.2 | 28.7 | 2.9 |
| TACO-7B | 89.6 | 2.3 | 83.8 | 3.2 | 81.6 | 3.5 | 35.8 | 2.4 |
五个 benchmark 上 TACO 同时拿到了最高准确率和最低延迟。这个延迟优势反直觉——理论上 TACO 在 probe 阶段多读了两次答案,应该更慢才对。论文在 Figure 3b 里给出了一个解释:TACO 训练让 completion length 持续下降,模型学会"只在需要时调用工具",调用少了反而省了时间。
这是个挺漂亮的结果——把 RL 的核心目标从"刷分"改回"效率"上来,恰好戳中了 CodeV-RL、PyVision-RL 这类工作"用更复杂的轨迹换分"的反作用。
6.3 消融实验(Table 3)
| Method | V∗ | HR-4K | HR-8K | MathV | MMStar | Avg. |
|---|---|---|---|---|---|---|
| TACO(full) | 89.6 | 83.8 | 81.6 | 35.8 | 69.3 | 72.0 |
| w/o DAPR | 85.1 | 77.2 | 78.0 | 31.1 | 65.9 | 67.5 |
| w/o OGAR | 87.4 | 81.6 | 80.2 | 33.4 | 67.4 | 70.0 |
- w/o DAPR:用加法型探针 \(r_{\mathrm{out}}(a_1)+r_{\mathrm{out}}(a_2)\) 替代差值。掉 4.5 个点——probe-hacking 又回来了。
- w/o OGAR:禁用门控,最终答案优势均匀分给每个 token。掉 2.0 个点——"信用稀释"。
两个组件缺一不可,但 DAPR 显然更值钱。
6.4 跨基座泛化(Table 4)
| Base | V∗ | HR-4K | HR-8K | MathV | MMStar | Avg. |
|---|---|---|---|---|---|---|
| Qwen2.5-VL-7B | 76.4 | 68.8 | 65.3 | 27.0 | 64.7 | 60.4 |
| + TACO | 89.6 | 83.8 | 81.6 | 35.8 | 69.3 | 72.0 |
| Qwen3-VL-8B | 86.4 | 78.9 | 74.6 | 53.9 | 70.9 | 72.9 |
| + TACO | 92.9 | 85.3 | 84.1 | 59.6 | 72.1 | 78.8 |
Qwen2.5-VL-7B 平均涨 11.6 个点,Qwen3-VL-8B 涨 5.9 个点。TACO 的方法对基座不挑——核心机制是 RL 优势设计,跟 backbone 关系不大。这是个对工程实践很重要的属性:换基座不需要重做方法。
6.5 通道权重敏感性
\(\alpha_2\)(过程通道权重)从 0.05 到 0.50 扫了一圈:
| \(\alpha_1\) | \(\alpha_2\) | Avg. |
|---|---|---|
| 1.0 | 0.05 | 67.8 |
| 1.0 | 0.10 | 68.0 |
| 1.0 | 0.15 | 68.1 |
| 1.0 | 0.30 | 67.9 |
| 1.0 | 0.50 | 67.7 |
过程通道的权重占比很小(0.15 / 1.0 = 13%),但删了它就掉 4.5 个点。它不是主信号,是辅助校准——告诉模型"这次调用到底有没有帮上忙",但训练主体还是 accuracy channel。这一点很关键,论文把过程奖励放成"co-pilot"而不是"driver"。
七、训练动态:probe-hacking 是怎么被逮住的
这是论文最有洞察力的部分之一。Figure 3 把三种变体的训练曲线放在一起对比:

图3a:纵轴 VQA reward,横轴 training step。灰色 Standard GRPO、橙色 Additive-probe、红色 TACO。橙色线(additive-probe)在前 250 步最快爬升——这正是 probe-hacking 的指纹:模型学会"在 Think₁ 里提前把答案写出来"来同时膨胀两个探针。但到 500 步之后它 plateau 了,最终甚至被 Standard GRPO 反超——因为这是奖励在涨、能力没涨。TACO 红线则从 500 步开始甩开所有对手,最终稳定在 0.72 左右。
这个曲线让作者总结的"probe-hacking 三重验证"很有说服力:
- 真实存在:additive-probe 的早期 spike 后期 plateau。
- 差分能防:TACO 无法被同样方式 hack(数学上 Proposition 1 严格成立)。
- 代理学会按需裁剪:completion length 持续下降。
- 探索不被掐死:TACO 的 policy entropy 在三组里最高,没有 reward hacking 导致的早熟收敛。
第三点很值得展开。Figure 3b 显示 TACO 的 completion length 从 ~720 降到 ~640。TACO 训出来的 agent 真的学会了"什么时候用工具"——简单题直接答,难题才写代码。这跟 DeepEyes-v2 论文里"Cold Start 学 How to Use Tools,RL 学 When to Use Tools"的经验一致,但 TACO 用更直接的方式(差分探针)学到了。
第四点更重要。Additive-probe 的 policy entropy 跌得最快——它找到了一个能让 reward 变高的捷径,然后所有概率质量都往那儿倾。TACO 没捷径可走(差分信号不会因提前泄题而膨胀),所以策略被迫保持探索。这其实回答了一个困扰 RL 训练很久的问题:怎么在提升 reward 的同时不熵崩塌。TACO 给出的答案是——把奖励信号设计成对 confounder 不可膨胀的形式。
八、案例:训出来的 agent 真会干活
论文给了五个真实轨迹(Figures 4-8),挑 Figure 8 讲——这是个相当典型的"工具该用就用"案例。

图8:题目是"Scout 吃掉的狗粮占总狗粮的多少比例?化简"。TACO agent 的轨迹里先 think 一下"图像清晰,不用裁",直接看表(Buddv 45, Scout 16, Max 38, Bella 41, Lucy 36, Cooper 21),但分数化简容易算错("197 是素数"),于是自己写了一段 Python Fraction 算 16/197。
这段案例反映了 TACO 训出的 agent 的两个特质:
- 判断力:能看出"图清晰、无需裁"——不滥用工具。
- 方法论:知道"分数化简是 Python Fraction 的强项"——用对的工具做对的事。
这种"判断 + 工具组合"的能力,跟 DeepEyes-v2 的"何时用工具"、Thyme 的"任务难度自适应"一脉相承,但 TACO 用更细的 credit signal 把"工具调用是否真的帮了忙"这件事学进去了。
九、和同期工作比,TACO 在哪儿站住脚
视觉 agent 这条线现在相当卷。同期几个重要工作:
- Pixel-Reasoner(NeurIPS'25):静态 crop+zoom 工具 + RL,HR-4K 74.0。
- DeepEyes / DeepEyes-v2(ICLR'26):code+search 双工具,agentic multimodal。
- Thyme(ICLR'26):自主判断是否用工具,20 个 benchmark 全面提升。
- CodeV(CVPR'26):GPT-4o judge 给奖励——这是 TACO 的直接对手,因为它们都解决"怎么给工具调用打 reward"这个问题。
- PyVision-RL(arXiv'26):动态 Python 工具 + RL,V∗ 88.7 之前是 7B 开源 SOTA。
TACO 的差异化:
- 不要 judge——这是它对 CodeV 最大的卖点。CodeV 离不开外部模型,意味着 API 成本、判别偏差、可复现性差。TACO 用差分探针自己判断"工具是否有用",成本为零、可复现。
- 数学上严格避免 probe-hacking——TACO 的 Proposition 1 给出了一个无歧义的论据。Additive-probe 形式或任何"加和"型探针奖励都会有这个漏洞。
- 同尺寸同时 SOTA——TACO-7B 在 V∗、HR-4K/8K、MathVision、MMStar 等多个 benchmark 拿到第一,比 PyVision-RL-7B 强 4.4 个点。
但也得说,TACO 不是横空出世的"底层突破"。它是 GRPO 框架内的精细设计,方法论创新集中在 credit assignment 粒度——把"trajectory-level 准确率奖励"拆成"调用级别的差分探针 + token-level 路由"。这跟 DPO→GRPO→Process Reward 的脉络是一致的,工程上很扎实,理论上很干净,但不要被"首个差分探针奖励"这种话术带跑——说到底就是 RL 算法设计的细节优化。
十、局限和值得追问的几个点
论文在 Appendix F 自己也提到了几个边界,我挑三个最关键的:
-
依赖规则型答案检查器。DAPR 假设 \(r_{\mathrm{out}}\) 是基于规则的可验证信号(数学对错、答案匹配),对开放式生成、主观题、开放式 QA 是不适用的——这种情况下没有 ground truth,"Δ = R(a₂) − R(a₁)" 没法算。这是个不小的限制,意味着 TACO 暂时不能直接推广到开放式对话 agent。
-
单调用假设。OGAR 的 mask 是在"一个工具分支"的前提设计的。轨迹里有多个工具调用时,before/after 分割就不那么干净了——两次 probe 之间的 confounder 叠加,怎么归因?论文明确把"扩展到多调用轨迹"留作未来工作。
-
单样本方差升高。作者坦承"两个探针分数的差"会增加方差(相对单一结果奖励),用 group normalization 兜底。这是个工程上可控、理论上不漂亮的设计选择——如果未来要做 off-policy 训练或者分布式 RL 框架里,这个方差控制可能要重新审视。
我个人最想追问的一点:TACO 的探针本质是"用 prefilled-header 让模型贪心解码一个答案"——这个贪心解码对 Instruct 模型和经过强 RL 训练后的模型,行为分布可能不一样。论文没讨论 SFT 之后模型是否仍然"忠实回答",但这是个潜在假设。如果模型学会在 probe 时给出"更讨好判别器"的答案(但跟它正常推理时给出的不一样),DAPR 的因果链就断了。这个风险不算大,但值得未来工作验证。
十一、工程视角:TACO 给你带来什么
如果你也在做工具调用型 agent,TACO 给你几个直接的启发:
- 奖励设计可以走"自监督"路线。不需要 GPT-4o judge 也能给工具调用打 reward。差分形式天然抗 hacking——任何"两次输出共享前置上下文"的场景,都能用 Δ 来归因。
- 优势路由的思路可以泛化。不只是"哪个调用有用",还能扩展到"哪段推理有用"、"哪个搜索 query 有用"——token-level 的 mask 是个被低估的工具。
- 效率是免费的副产品。论文 Figure 3b 显示 TACO 训出来的 agent 学会"只在需要时调工具"——这跟你怎么设计 reward 直接相关。把"调用"也放进 reward 信号里(用 DAPR 这样的差分探针),比加 cost term 更干净。
- 跨基座可移植。Table 4 显示 TACO 在 Qwen2.5-VL-7B 和 Qwen3-VL-8B 上都能涨点——核心机制是 RL 优势设计,跟 backbone 无关。这对你的工程意味着:换基座不需要重做算法。
但也别上头。TACO 适用域是"有可验证答案的多步推理 + 工具调用"——这跟数学题、视觉搜索、图表问答完美匹配。如果你做的是开放对话、创意写作、长程任务规划,TACO 的差分探针思路不一定能直接套——因为"答案可验证"这一前提没了。
写在最后
TACO 这篇论文最让我欣赏的不是"在 12 个 benchmark 上拿第一"这种结果,而是它对 reward hacking 的处理方式。Additive-probe 那个早期 spike 后期 plateau 的训练曲线,是 RL 训练里最隐蔽的"伪进步"信号之一——reward 在涨、能力没涨、甚至在跌。TACO 用一个数学上简洁的差分形式,直接消除了模型提前泄题带来的虚假奖励,这个设计直觉相当漂亮。
跟 DeepSeek 提出的 GRPO 比,TACO 是它的精细化变体;跟 CodeV 比,TACO 证明了"不要 judge 也能给工具调用打 reward"是可行的。这两条路分别代表 RL 算法演进的两个方向:更精细的 credit assignment 和 更便宜、更可复现的奖励来源。
TACO 的方法不是万能药——单调用假设、规则答案依赖、单样本方差升高都是真实限制。但在它适用的范围内,用最简单的差分形式解决最棘手的 credit assignment 问题,这个工程哲学值得借鉴。
最后给一个可能略显激进的判断:随着视觉 agent 越来越普及,「工具调用到底有没有帮上忙」这个问题会越来越重要——而 TACO 给出的"差分探针 + 结果门控"组合,大概率会成为这类系统的标准组件之一。
觉得有启发的话,欢迎点赞、在看、转发。跟进最新 AI 前沿,关注我。