Skip to content

Agent-Interaction-RL 笔记

📅 发表于 2025/05/30
🔄 更新于 2025/05/30
👁️ 次访问
📝 0 字
0 分钟
Agent-Interaction-RL
#StarPo
#RAGEN
#GiGPO

环境交互-论文阅读

(2505)GiGPO:Group-in-Group Policy Optimization for LLM Agent Training

GiGPO 摘要
  • 📎GiGPO paper, 📗我们开源了GiGPO,📙verl-agent改造的1万个小细节
  • ⭐在agent长序列场景中,提出GiGPO算法,聚合状态相同但结局不一样的序列针对action构建细粒度reward,并结合轨迹级粗粒度reward构建group-in-group reward,且细粒度reward无需额外计算开销
  • 🤖在ALFWorld、WebShop等场景验证,相比GRPO提升9%-12%

❓问题背景

GiGPO 问题背景
  • GRPO 算法缺点
    • 只在trajectory级别做比较,缺乏step-level的细粒度奖励分配。
    • 在单轮推理有效,但在长序列(long horizon) agent训练中仍然受限
  • 长序列信用分配问题
    • Agent场景任务是多轮的,环境交互会跨越多个step。
    • 奖励是稀疏或延迟的,通常只在最后给
    • 单个动作和最终奖励直接关系很复杂,许多中间步骤没有直接反馈。跨步骤信用分配具有挑战。
名称关键点缺点
Trajectory-Level (Vanialla GRPO)执行完整个任务后,算整体的评价advantage粒度太粗
比如agent 50步,无法知道哪一步关键、哪一步多余。
Step-Level
(按状态额外rollout)
在轨迹中的某个状态(如s4),额外rollout,尝试所有动作(a4,a4,a4,...)。成本太高
每个状态都需要LLM模拟不同动作,这几乎不能实现。
GiGPO(本文)- 先像GRPO一样,收集多条完整的轨迹
- 再从多轨迹中,收集相同环境状态s^对应的不同动作a,a,a,...进行比较
- 通过源自相同状态但后续发展不同的序列,来判断哪个动作更好
巧妙利用已有轨迹下同状态不同动作的序列比较,实现细粒度信用分配,但无需高额计算开销

📕核心方法

GiGPO 核心方法
  • 1个观察:LLM agent在策略不成熟时会重复访问相同的状态(比如重复进同一网页,回到同一房间)等。

  • GiGPO 算法

    • Episode Relative Advantages(Global,粗粒度)与GRPO算法一致,rollout多个轨迹分组,计算advantage

      AE(τi)=R(τi)mean({R(τj)}j=1N)Fnorm({R(τj)}j=1N)
    • Step Relative Advantages(local,细粒度)聚合状态(env)相同但输出(action)不同的序列,计算细粒度的step-level advantage

      • step-level groups

        GS(s~)={(at(i),Rt(i)) | st(i)=s~,1iN,1tT}
      • step-relative advanteges

        AS(at(i))=Rt(i)mean(Rt(j) | (at(j),Rt(j))GS(s~))Fnorm(Rt(j) | (at(j),Rt(j))GS(s~))
    • 最终 group-in-group advantages: A(at(i))=AE(τi)+wAS(at(i))

    • 这个过程几乎没有额外计算开销

✍️实验配置

GiGPO 实验配置
  • 模型:qwen1.5b, verl-agent框架
  • 算法:GiGPO
  • 实验环境:
    • ALFWorld:文本环境,模拟家庭活动,操作任务
    • WebShop:在线购物环境,搜索结果浏览产品页面

🍑关键结果

GiGPO 关键结果
  • 发明了GiGPO算法及verl-agent框架
  • 与GRPO基线相比,ALFWorld 提升12%,WebShopt提升9%
  • 效果提升9%-12%

(2504) RAGEN Training Agents by Reinforcing Reasoning

RAGEN 摘要
  • 🖇️paperragen-aigithub, doc, 📗知乎RAGEN vs VAGEN...,📗RAGEN解密...
  • 发现并针对多轮RL训练问题(回声陷阱等),设计了StarPO框架,基于其构建专注于多轮Agent交互、轨迹级学习系统(RAGEN)。
  • 基于Qwen-0.5B,在三个游戏环境中进行验证

❓问题背景

AgentRL/多轮RL/交互式Agent 训练挑战
  • 梯度稳定性是多轮RL稳定训练的关键
    • 常出现echo trap(回声陷阱)不稳定模式,agent过拟合局部奖励推理模式。
      • 早期agent以多样化符号推理作为回应,但在训练后会坍缩成确定性、重复性模板,模型收敛至固定表达模式。
    • 回声陷阱特征奖励方差崩溃(模型行为变得单一)熵下降(探索性下降)梯度尖峰(更新幅度过大)。提出StarPO-S来解决。
  • 如何通过经验(rollout)学习和自主进化
    • LLM通过自己和环境交互产生的经验数据(rollout)来学习,数据质量影响效果
    • 简单通过rule-reward训练agent难以在多轮交互中实现自我进化和有效推理
    • 关键因素:
      • 多样化的初始情况和多种尝试:即rollout来自多样的prompt任务,每个prompt有多个response(不同行为序列)。让agent见多识广
      • 增加单轮交互深度:每轮执行多个action,能探索更长远,改善交互horizon(范围?)
      • 及时反馈保持较高rollout频率,用新交互数据来更新模型,确保模型学习是基于当前行为水平的反馈,而非过时信息。确保反馈反应最新策略,
  • 需要细致的、精心设计的奖励
    • 背景:如果思考过程不能带来好处(更高的reward),模型可能会偷懒不思考;如果只看最终结果成功,可能会编造幻觉思考。
    • 解决:看任务是否成功、过程是否合理、是否与环境状态一致
  • 目前缺乏对多轮RL训练关键因素的深入理解,不知如何让自我进化的agent有效稳定地学习。

📕核心方法

StarPO+RAGEN 核心方法
  • 设计StarPO(State-Thinking-Actions Reward Policy Optimization),并基于其构建RAGEN系统
    • StarPOAgent与环境交互k次,基于轨迹学习,最大化轨迹期望奖励
      • PPO/GRPO优化单轮Jstep(θ)=ExD,yπθ(|x)[R(x,y)]
      • StarPO优化整个轨迹的总回报JStarPO(θ)=EM,τπθ[R(τ)]
      • Rollout和更新交错执行,rollout可以基于策略生成、也可以从old重放缓冲区采样。
    • RAGEN系统:实现了StarPO框架,支持k轮rollout、可定制的奖励函数、能与多轮随机环境集成(适用于各种环境)、监控分析工具等。
  • 提出StarPO-S解决多轮RL训练不稳定(回声陷阱)问题
    • 基于方差的轨迹过滤(保留高不确定性prompt)
    • 去除KL散度惩罚(鼓励模型探索)
    • 采用非对称裁剪(允许从高奖励滚动中积极学习)
  • 明确关键训练因素:确保多样化的初始状态合适的交互粒度较高采样频率等。
  • 奖励信号:提出细致推理感知奖励信号

RAGEN通过StarPO框架专注于动态任务

StarPO 框架流程图

  • 左图:K轮rollout通过让 LLM 与环境交互来生成轨迹。
  • 右图:基于多个轨迹的优势估计来更新 LLM。

✍️实验配置

RAGEN 实验配置
  • 模型:Qwen2.5-0.5B,

  • 算法:PPO/GRPO,verl框架

    • 在H100上训练200次滚动更新迭代,每次8个prompt,每个prompt16次rollout。
  • 任务:3个简单可控的游戏符号环境

    • Bandit(单轮、随机):多臂老虎机问题,测随机反馈下的风险敏感符号推理
    • Sokoban(多轮、确定性):益智游戏,要求在确定性环境中进行不可逆多步规划
    • Frozen Lake(多轮、随机性任务):网络世界导航问题,避免掉入洞中,结合规划和概率转移

🍑关键结果

RAGEN 关键结果
  • 专门为多轮agent交互设计的轨迹级RL框架
  • 识别回声陷阱现象以及通过 StarPO-S 缓解它的方法。
  • 证据表明,如果得到适当的奖励,显式推理结构可以提高代理的性能和泛化能力。
  • 深入了解了推广多样性、奖励信号设计和训练稳定性对于成功进行代理学习的重要性。
总访客数:   ·   总访问量:
PLM's Blog @ 2016 - 2025