Skip to content

AppWorld 合成数据相关

📅 发表于 2026/03/18
🔄 更新于 2026/08/05
👁️ — 次访问
📝 3286 字
11 分钟
Appworld-Data
#CoEvolve
#CuES
#Agent-Data Mutual Evolution

(2605) (通义) CoEvolve: Training LLM Agents via Agent-Data Mutual Evolution

🌺 论文摘要

CoEvolve 论文摘要

参考链接

核心方法

  • 核心想法:训练数据不能一次合成完就固定,而要跟着当前Policy的弱点一起变化。
  • 从RL Rollout中提取三类Weakness Signal
    • Forgetting:以前会做、现在又失败。
    • Boundary:同一任务有时成功、有时失败。
    • Rare Pattern:某些Action Pattern几乎没有探索。
  • 用这些信号让外部LLM重新进入环境做定向探索,而不是继续随机生成任务。
  • 将探索轨迹抽象成Task-Solution Pair,经过真实环境验证后,再加入下一轮GRPO训练。
  • 整体形成:Agent训练 -> 发现弱点 -> 生成针对性数据 -> 继续训练

模型效果

  • Qwen2.5-7B:跨AppWorld/BFCL平均分从3.08提升到22.51,绝对提升19.43
  • Qwen3-4B:从11.72提升到27.30,绝对提升15.58
  • Qwen3-30B-A3B:从22.64提升到40.78,绝对提升18.14
  • Qwen3-30B-A3B在AppWorld Test-N:TGC/SGC 54.76/33.93;Test-C:31.65/16.55

重要结论

  • 静态Synthetic Data对冷启动很有效,但Policy变强后,原来的数据会逐渐跟不上当前弱点。
  • Random Exploration也有用,但读取当前Policy失败信号的定向探索更有效。
  • Forgetting Signal最重要:训练中的能力回退不只是噪声,也可以直接变成新的训练任务。
  • CoEvolve并没有替代GRPO,而是在GRPO外再加一层训练数据分布更新

关键贡献

  • 提出Agent与Training Data相互演化的闭环训练范式。
  • 将Policy Rollout中的不稳定、遗忘和欠覆盖模式转成可执行合成任务。
  • 用环境验证控制Synthetic Task的可执行性,并量化额外反馈成本与性能收益。

问题背景(静态数据跟不上Agent能力变化)

问题背景

Offline Synthetic Data仍然是Static Snapshot

人工数据的问题

  • 人工收集长程交互轨迹成本高,难覆盖环境中大量长尾状态与交互组合。
  • 固定Expert Trajectory只代表某个时刻的任务分布,Agent训练后出现的新弱点无法被覆盖。

普通合成数据的问题

  • 外部LLM通常根据环境说明做随机或World-knowledge驱动探索。
  • 探索不读取当前Policy的真实表现,因此无法重点修复当前Agent正在遗忘、摇摆或从未探索的区域。
  • 数据一次生成后固定,仍属于Open-loop Training。

CoEvolve观点

  • Agent训练会改变失败分布,新的失败分布又应该决定下一批训练数据。
  • 因此不是简单扩大静态语料,而是交替做:Agent Evolving <-> Data Evolving

核心方法(CoEvolve三阶段闭环)

📕核心方法

Stage 1: Training and Signal Extraction

基础训练

  • 初始Synthetic Task Set D0由大模型无引导探索环境获得。
  • 在每个Iteration t,Policy在当前Task Set Dt上用GRPO训练。

Forgetting Signal

  • 为每类任务维护最近 W 次Score。
  • 如果历史窗口中曾经成功 (si0.5),当前却失败 (snow<0.5),标记为遗忘。
  • 直觉:模型已经学会又忘掉的能力,应该优先补数据,而不是等它继续退化。

Boundary Signal

  • 同一Task Group的 K 个Rollout中同时出现成功和失败结果,说明Policy接近Decision Boundary。
  • 该组所有Trajectory作为不稳定行为证据。
  • 直觉:成功率在0和1之间摇摆的任务,通常最有学习价值。

Rare Signal

  • 统计Action Pattern累计出现频率。
  • 达到最小观测规模后,出现率低于阈值但不为0的Pattern被标记为欠探索模式。
  • 直觉:不是只盯着失败,也要主动补足几乎没见过的工具组合
Stage 2: Signal-Guided Environment Re-exploration

Signal-conditioned Context

  • 将Weakness Trajectory的任务、Action和环境Feedback交给LLM反思。
  • LLM总结失败原因或不稳定区域,构造定向Exploration Context。

双维度探索

  • Multi-round:从同一Context启动多个独立探索,增加行为多样性。
  • Multi-step:每个探索根据中间Observation连续修正Action。
  • 输出带Rollout ID的Step-level (action, observation) Triplet。
Stage 3: Task Abstraction and Validation
  • 按Task Context聚合多个探索Rollout的Triplet。
  • LLM不直接复制交互,而是抽取用户意图,生成简洁Query和可执行Action Sequence。
  • 新Task-Solution Pair在真实环境中由Agent执行验证:
    • 成功完成任务则保留。
    • 即使未完全完成,但环境返回Positive Reward也保留。
    • 两者都失败则丢弃。
  • 通过验证的任务加入 Dt,得到下一轮训练分布 Dt+1

实验设置

✍️实验设置

实验设置

基础模型

  • Qwen2.5-7B-Instruct
  • Qwen3-4B-Instruct
  • Qwen3-30B-A3B-Instruct

训练环境

  • AppWorld与BFCL-v3 Multi-Turn Base。
  • 基于veRL实现,GRPO Group Size 8,Learning Rate 106,KL系数 103
  • Rollout Temperature 0.9,最大30个环境Step。
  • 7B/4B使用单节点8张H20;30B-A3B使用16张H20。

评测

  • AppWorld Test-Normal与Test-Challenge,报告TGC/SGC。
  • BFCL-v3报告Multi-turn Success。

比较

  • Zero-shot Backbone。
  • 静态Synthetic Data + 标准GRPO。
  • Random Exploration更新数据。
  • 完整Feedback-guided CoEvolve。

关键结果

🍑关键结果

主结果
BackboneAppWorld Test-N TGC / SGCAppWorld Test-C TGC / SGCBFCLAvg.
Qwen2.5-7B1.19 / 0.000.72 / 0.0013.503.08
+ CoEvolve27.98 / 12.508.39 / 2.1661.5022.51
Qwen3-4B16.67 / 5.367.91 / 2.1626.5011.72
+ CoEvolve35.71 / 14.2817.03 / 6.4763.0027.30
Qwen3-30B-A3B31.55 / 12.5019.90 / 5.7643.5022.64
+ CoEvolve54.76 / 33.9331.65 / 16.5567.0040.78

相对标准GRPO

  • Qwen3-4B AppWorld Test-N:GRPO 28.57 -> CoEvolve 35.71
  • Qwen3-30B-A3B:GRPO 48.81 -> CoEvolve 54.76
  • 说明提升不只是来自基础RL,Closed-loop Data Evolution与GRPO确实互补。
消融与数据分析

阶段消融 (Qwen3-4B, AppWorld/BFCL平均)

  • Zero-shot:21.59
    • Static Synthetic Data:43.29
    • Random Exploration:45.43
    • Feedback-guided CoEvolve:49.36

Signal消融

  • Full:AppWorld/BFCL 35.71/63.00
  • 去掉Forgetting:30.36/60.00,影响最大。
  • 去掉Rare:33.92/60.50
  • 去掉Boundary:33.33/61.00

Signal分布

  • Boundary占AppWorld 51.4%、BFCL 45.5%,说明大量任务位于Policy成功/失败边界。
  • 训练中Weakness Signal从269降到204,Signal-driven Task通过率从0.71提高到0.85后稳定在0.80。

多样性与跨域

  • 合成任务与验证任务余弦相似度大多在0.4-0.7,不是简单复制。
  • AppWorld训练使BFCL Zero-shot从26.50提升到45.00;BFCL训练使AppWorld从16.67提升到19.04

成本

  • Feedback环节约增加AppWorld 9.67%、BFCL 12.76%训练时间。
  • 对应AppWorld TGC从28.57提升到约35,相对增益约22.9%

未来方向

⛳未来方向

未来展望
  • 当前只有Forgetting、Boundary、Rare三类Signal,可进一步加入错误类型、状态覆盖、工具组合与Safety Signal。
  • 早期Policy很弱时,其自身Trajectory产生的Signal可能噪声大或不完整,需要更稳健的冷启动与置信度估计。
  • 自动改变Training Distribution可能放大偏差或生成危险任务,真实部署需要Policy Constraint、Safety Filter和Risk-triggered Review。
  • 需要区分“修复当前Policy弱点”与“过拟合当前Policy”,并评测更长训练周期中的遗忘与分布循环。
  • 可研究与CuES的结合:CuES解决无Seed Goal的环境探索,CoEvolve解决训练过程中数据如何随Policy动态更新。

(2512) (通义) CuES: A Curiosity-driven and Environment-grounded Synthesis Framework for Agentic RL

🌺 论文摘要

CuES 论文摘要

参考链接

核心方法

  • CuES 框架:好奇心驱动(Curiosity-driven) + 环境落地(Environment-grounded) 的任务合成框架。
  • 解决核心问题Task Scarcity(任务稀缺)。在没有预定义任务的环境中,如何让Agent自主生成任务并学习。
  • 5阶段流程
    • 需求确认:提取环境概念和原则。
    • 好奇探索:基于环境记忆(Memory)的自底向上探索,生成轨迹。
    • 任务抽象:将轨迹抽象为Guideline可执行目标
    • 质量控制:自我验证(Self-Verification),确保任务可执行性
    • 目标重写:通过Hint调整任务难度,生成课程数据。
  • 数据来源:完全自主生成,无需人工种子目标外部语料库

模型效果 (Qwen2.5-14B + CuES)

  • AppWorld (Test Normal, TGC):达45.24%,远超基座模型(14.29%),甚至超过Qwen3-32B (32.12%)。
  • WebShop:达64.10%,相比基座(23.74%)提升显著。
  • BFCL v3:达44.15%,在此指标上超过DeepSeek-V3 (43.5%)。

重要结论

  • 自主生成的任务在多样性和可执行性上匹配甚至超过人工构建数据集
  • 好奇心驱动 + 环境感知 可以有效替代昂贵的人工任务设计。
  • 解决了Agentic RL中"不仅学怎么做(How),还要学做什么(What)"的问题。

关键贡献

  • 形式化了Agentic RL的任务生成问题
  • 提出了CuES框架,结合自底向上探索自顶向下指导,实现高质量训练任务合成。

问题背景(任务稀缺)

问题背景

现有Agentic RL的瓶颈

现实困境

  • LLM Agent部署在复杂环境(如AppWorld, OS, Web),但缺乏结构化的训练任务
  • Agent可以交互,但不知做什么任务提升自己

现有方法局限

  • 依赖预定义任务:依赖预定任务+RL训练,但这在未知环境不存在
  • 人工设计昂贵手动构建 多样可执行任务非常困难
  • 合成数据局限:现有合成方法通常依赖人工种子目标外部数据无法做到完全自主

核心问题

  • 没有预定义任务,如何让Agent利用环境,自主生成 多样+可解+有意义训练任务

核心方法(CuES框架, 探索-抽象-验证)

5阶段生成流程

1. 需求确认 (Requirement Confirmation)

  • 输入环境描述 (Tdes),可选的用户需求/种子目标
  • 输出概念池 (C~) 和 行动原则 (P)。
  • 作用:建立对环境实体、动作和约束的结构化理解,作为自顶向下的指导

2. 好奇探索 (Curious Exploration)

  • 核心Explorer Agent 基于环境记忆树 进行自底向上的交互
  • 策略优先尝试当前环境状态下未执行过的动作避免冗余探索
  • 产出:带有环境反馈原始交互轨迹

3. 任务抽象 (Task Abstraction)

  • 目标:将低级交互轨迹(z) 提升为可重用的任务Schema
  • 输出
    • Guideline (zi:j):有效的动作序列
    • Executable Goal (gi:j):自然语言描述的目标
  • 置信度过滤LLM Judge 评估轨迹的一致性清晰度

4. 质量控制 (Quality Control / Self-Verification)

  • 机制:Agent 尝试解决生成的任务 (gi:j)。
  • 目的:确保生成任务 合理+可执行。仅保留通过验证的任务。

5. 目标重写 (Goal Rewrite)

  • 难例挖掘隐藏Guideline细节,利用Rewrite Hints (参数/前提条件) 调整目标描述
  • 课程生成:生成不同难度层级 (L) 的目标,从简单指令抽象意图,构建多样化训练集
核心设计原则

F_task 映射的三要素

  • Executability (可执行性)合法+能通过验证,避免噪声监督。
  • Diversity (多样性):覆盖不同的实体动作约束,防止坍缩到简单模板。
  • Relevance (相关性):任务语义和难度应与目标评估环境相关,避免跑题。

AppWorld 合成625个任务

实验设置

✍️实验设置

实验设置

基础模型

  • Qwen2.5-14B-Instruct (主要实验模型)
  • 对比模型:Qwen2.5 (3B, 7B, 32B), Qwen3-32B, GPT-4o, DeepSeek-V3

训练任务/数据

  • 数据来源CuES 框架自主生成,无人工种子任务。
    • AppWorld:模拟手机操作环境,生成API调用任务。
    • WebShop:模拟电商购物,生成搜索与购买任务。
    • BFCL v3:函数调用任务。
  • 数据规模
    • 生成大量(Task, Trajectory)对。
    • 强调多样性可执行性 (Executability)。

评测任务/数据

  • AppWorldTGC , 未评估 SGCTest Normal未评估 Test Challenge
  • WebShopScore (平均得分), SR (Success Rate)
  • BFCL v3AST Accuracy, Executable Accuracy

算法/策略

  • CuES 5阶段合成任务方法
  • SFT:基于阶段3高质量成功轨迹做微调 (Behavior Cloning)。
  • Agentic RL 训练:利用可执行任务作为环境做训练,解决任务稀疏问题

超参

关键结果

🍑关键结果

模型效果

AppWorld (Test Normal - TGC指标)

  • CuES (14B): 45.24% (Greedy), 45.54% (avg@8)
  • 超过Baseline: Qwen2.5-14B 14分,Qwen3-32B 32分。

WebShop (Score)

  • CuES (14B): 64.10%,超过Baseline: Qwen2.5-14B 23分,Qwen3-32B 36分。

BFCL v3 (Multi-Turn Base)

  • CuES (14B): 44.15%
  • 超越Qwen-2.5-14B 31分,DeepSeek-V3 43分GPT-4o-mini 43分
数据质量分析

多样性与分布 (t-SNE & Metrics)

  • AppWorld: CuES数据覆盖原始数据分布,且漂移很小,保证了相关性。
  • WebShop: CuES数据分布比原始数据更广自冗余度更低,说明生成了多样化购物意图
  • 可执行性: 经过质量控制,任务的可执行性显著提升 (如在AppWorld上从0.61->0.72)。

未来方向

未来方向

未来展望

On-Policy Synthesis

  • 目前CuES是离线生成数据
  • 未来可探索在线合成策略,训练时根据当前能力 动态生成适合自己的任务

环境特定的奖励模型

  • 利用生成的轨迹和结果,训练专门的Reward Model,解决稀疏奖励问题

跨域适应

  • 验证该框架在更开放非结构化环境(如通用OS操作)中的有效性
总访客数:— · 总访问量:—
PLM's Blog @ 2016 - 2026