TRACE 的本质是错误驱动 curriculum
训练环境不再来自人工直觉或通用数据池,而是来自当前 agent 在当前环境里的失败。它让“失败日志”变成 curriculum generator。
这份 HTML 报告把论文内容重构成一个工程化阅读视图:先看问题与核心贡献,再看 TRACE 四阶段闭环、GRPO 训练信号、实验结果与我的关键判断。重点不是“又一个 RL 算法”,而是“如何把 agent 失败日志变成可训练的能力课程”。
TRACE 面向的是真实 agentic environment:模型不只是回答问题,而是要多轮观察环境、调用工具、修改状态、遵守业务规则,并最终完成用户任务。论文的核心问题是:直接在完整目标环境上做 RL 或 SFT 时,训练信号无法告诉模型“到底缺哪个能力”。
tau^2-Bench 测客服工作流,包含 Airline 与 Retail;模型需要查用户、查订单、检查政策、执行修改/退款/取消,并正确沟通。
ToolSandBox 测状态化工具调用;模型需要处理设备设置、时间换算、提醒创建、权限错误恢复等多步工具问题。
直接 RL 的难点在于 credit assignment。一次客服任务失败,可能是模型没有读懂工具返回的结构化 JSON,可能是选对工具但参数传错,可能是只完成第一个子任务就停止,也可能是没检查 policy precondition 就执行了状态变更。最终 pass/fail reward 把这些失败原因混在一起,模型只能隐式猜测哪个动作应该被加强或削弱。
TRACE 的方法不是单点算法,而是一条端到端 pipeline:从目标环境轨迹中诊断能力缺口,再生成能力定向训练环境,分别训练 LoRA,推理时路由到对应能力模块。
让 base agent 在目标环境中跑出成功/失败轨迹,再由 LLM analysis agent 对比两类轨迹,发现高影响能力缺口。
为每个能力缺口生成一个小型、可验证、接口保真的训练环境,让 reward 主要反映该能力是否被展示。
基础模型冻结。每个 capability environment 上训练一个 LoRA adapter,用组内 reward variance 提供 RL 信号。
推理时 base model 根据任务和能力描述选择最相关 adapter;如果没有合适能力,则使用原始 base model。
TRACE 的输入是 base agent 在目标环境里的 rollout 数据:任务实例、完整轨迹、reward、成功/失败标签。分析器不是简单看失败样本,而是对比成功和失败轨迹,给每条轨迹和每个能力打三类标签。
该能力对当前任务不相关。例如时间换算能力不一定和订单退款任务相关。
能力相关,而且模型在轨迹里展示出来了。例如正确检查了退款必须回到原支付方式。
能力相关,但模型没有展示。例如工具返回 PermissionError 后直接告诉用户失败,没有诊断 blocker。
ER+(c) = P(LACKING | success, c relevant)
ER-(c) = P(LACKING | failure, c relevant)
Delta(c) = ER-(c) - ER+(c)
论文用 `Delta(c)` 判断能力是否真正区分成功与失败,用 `Coverage(c)` 判断能力覆盖多少失败样本。实验阈值是 `delta = 0.20`、`rho = 0.10`,并做 10 次独立 labeling,要求能力至少 8 次被选中。
模型不能稳定解析或交叉引用工具返回的结构化记录,例如嵌套价格数组、航班舱位、商品 variants。
模型知道要调用哪个工具,但传错参数,例如退款应回到原信用卡,却传入 gift card。
复合请求中只完成第一步就收尾,例如用户要求取消两个预订并修改第三个,模型只取消一个。
执行状态变更前没有检查政策条件,例如 basic economy 航班不满足取消条件却直接调用取消工具。
工具因设备状态冲突报错后,模型停止,而不是诊断低电量模式等 blocker 并修复后重试。
模型跳过时间戳转换工具,靠语言模型猜日期,导致提醒设置到错误日期或过去日期。
TRACE 最关键也最工程的部分,是把能力缺口转成一个可验证的 synthetic environment。这个环境要保留目标 benchmark 的工具接口和交互格式,但不要直接包原 simulator;它应该是更小、更可控、更奖励密集的训练场。
| 环境生成要求 | 为什么重要 |
|---|---|
| 同一 seed 确定性生成任务,不同 seed 有真实差异 | 避免模型记住固定样本,同时让 GRPO 可在同题多 rollout 中比较优劣。 |
| 工具名、参数名、返回 JSON 形状匹配目标环境 | 训练到的工具调用行为才能迁移回原 benchmark。 |
| reward 有多级部分分 | 区分“完全错”“动作对但沟通差”“完全正确”,提供更密集信号。 |
| base model 成功率最好在 30%-60% | 太容易全 1,太难全 0,都会导致组内 reward variance 不足。 |
对同一个 seed,synthetic environment 生成同一个任务。policy 用随机采样产生多条不同 rollout,每条 rollout 得到 reward。GRPO 不训练 value function,而是用同组 reward 的相对高低构造 advantage。
`A = (r - mean(r)) / (std(r) + epsilon)`。同一任务下 reward 高的轨迹得到正 advantage,reward 低的轨迹得到负 advantage。所有 action tokens 共享轨迹级 advantage。
这解释了为什么 TRACE 要强调 environment reward design。一个 group 如果所有 rollout 都同分,GRPO 就看不到“同题不同解谁更好”,训练信号消失。TRACE 的 synthetic environment 把 reward 的因果含义变窄:在这个环境里,高 reward 更明确表示目标 capability 被正确展示。
TRACE 为每个 capability 单独训练 LoRA。推理时,它没有把所有 adapter merge 成一个模型,而是让 base model 读当前任务、候选能力描述和成功轨迹示例,然后选择一个单 token label。若选中 base label,则不用 adapter;否则激活对应 capability adapter。
| 多能力组合方法 | tau^2 Overall | 相对效果 |
|---|---|---|
| Base Model | 32.9 | |
| Single Capability GRPO | 40.3 | |
| CORE-TSV merge | 39.6 | |
| On-Policy Distillation | 37.8 | |
| Multi Capability GRPO | 40.9 | |
| TRACE routing | 47.0 |
| 方法 | Airline | Retail | Overall | Overall Bar |
|---|---|---|---|---|
| Base Model | 24.0 | 36.8 | 32.9 | |
| GRPO on Target | 32.0 | 40.4 | 37.8 | |
| ADP | 28.0 | 34.2 | 32.3 | |
| AWM | 32.0 | 41.2 | 38.4 | |
| GEPA | 38.0 | 40.4 | 39.6 | |
| Single Capability GRPO | 34.0 | 43.0 | 40.3 | |
| TRACE | 44.0 | 48.2 | 47.0 |
| 方法 | Perfect Score | Mean Similarity | 解释 |
|---|---|---|---|
| Base | 19/129 | 0.411 | 基础工具使用能力。 |
| GRPO on Target | 22/129 | 0.519 | 直接目标环境 RL 已有明显收益。 |
| GEPA | 22/129 | 0.520 | 能力提示优化很强,但仍不如训练行为分布。 |
| TRACE | 26/129 | 0.552 | 多 7 个 perfect scores,mean similarity 比 base 高 0.141。 |
训练环境不再来自人工直觉或通用数据池,而是来自当前 agent 在当前环境里的失败。它让“失败日志”变成 curriculum generator。
论文里的 capability 更接近可验证动作模式,例如“先查 blocker 再重试工具”。这让方法实用,也限制了适用范围。
如果 LLM analysis agent 把表面症状误判为根因,后续 synthetic environment 会训偏。实践中需要抽样人工审计 selected capabilities。
合成环境必须接口保真、reward 可验证、难度适中、有组内方差。TRACE 的成功并不来自“让 LLM 随便写题”。
GEPA 说明 capability prompt 有用,但 RL adapter 更能改变长轨迹中的工具调用分布、参数选择和继续执行倾向。
多个 capability adapter 可能携带冲突的行为偏置。只激活一个 adapter 的简单 routing,反而比强行合并更稳。