VAGEN

Training VLM Agents with Multi-Turn Reinforcement Learning

原文链接:VAGEN github

简介

RICO的概念

针对 LLM agents 的强化学习框架取得了显著进展,其中包括 RAGEN、Search-R1、Agent-R1 和 OpenManus-RL 等。这些框架通常采用Reason-Interaction Chain Optimization (RICO) 方法来训练 LLM。
RICO 的核心思想是将多轮 agent 与环境的互动轨迹视为一个统一的token序列进行处理。它将完整的互动轨迹作为一个单一序列进行端到端训练,奖励会反向传播给所有 token,平等地对待每一个token。

RICO的局限性

尽管RICO对LLM agents是有效的,但在VLM agents的训练中效率很低。这可能是由于:

  • 分布偏移 (Distribution Shift):大多数 VLM 在预训练时并未训练生成图像 token。当RICO 引入多模态输出时(尽管此处主要指文本输出中的思考和行动 token,但 VLM agents 需要处理视觉输入),会造成分布偏移。
  • 状态冗余 (State Redundancy):视觉任务往往包含大量状态冗余,例如长上下文图像和过多的低级细节。这削弱了 RICO 的状态学习目标效率。

TRICO的提出

为了解决这些挑战,作者引入了VAGEN,即一个用于训练 VLM Agents 的多轮 RL 框架。其核心是Turn-aware Reason-Interaction Chain Optimization (TRICO) 算法。TRICO在RICO基础上增加了两个创新:

  1. 选择性Token 掩码 (Selective Token Masking):TRICO 引入两种掩码机制,将优化重点放在交互轮次中的行动关键 token (action-critical tokens) 上
  2. 跨轮次信用分配 (Cross-turn Credit Assignment):TRICO 使用不同的折扣因子计算跨轮次和轮次内的优势,并采用轮次级别的奖励,从而在多轮视觉 agentic 任务中实现更有效的信用分配
    image-29.png

方法

image-32.png

选择性Token掩码

TRICO引入了两种掩码机制,将优化重点放在交互轮次内 对动作至关重要的token上:

  • $M^{loss}$:损失掩码,用于识别在策略优化过程中需要更新的 token
  • $M^{adv}$:优势掩码,用于确定哪些 token 需要包含在优势函数的计算中
    对于 VLM agents 生成的每个 token,$M^{loss}$都设置为 1,而对于其他 token(例如视觉输入 token),则设置为 0。$M^{adv}$ 同理。
    简单点说就是只优化agent输出的token

跨轮次信用分配

RICO 采用的是轨迹级别的奖励,而 TRICO 引入了双层 GAE (bi-level GAE) 方法和轮次级别的奖励,为 RL 训练提供了更细粒度的奖励信号。
TRICO 引入了两个折扣因子用于双层 GAE 方法:

  • $\gamma_{turn}$:轮次间的折扣因子。
  • $\gamma_{token}$:同一轮次内的折扣因子。
    这种双层结构使得在多轮视觉交互中能够进行更精确的信用分配,帮助模型更好地将其行动与不同时间尺度下的结果联系起来。
    此外,轮次奖励在每个边界处应用,而不是仅在轨迹完成时应用,从而实现更细粒度的反馈信号。

举个例子说明。

  • 轮次级奖励:假设第一步为“向右推箱子”,当这步执行完时,agent的输出文本处于<eoa>,即轮次的边界,根据实验设置,每步通常有 -0.1 的惩罚,如果格式正确有 +0.5 的奖励。所以 R1 可能 = -0.1 + 0.5 = +0.4。这个奖励 R1 在本轮结束时就应用了。
  • 双层GAE:假设一个任务两步完成,即有两个轮次的输出与奖励(注意R2是轮次级奖励和最终奖励之和)。第二轮的token级奖励根据$\gamma_{token}$衰减,直到到达第一轮输出的<eoa>位置,而第一轮的奖励继续衰减则要在这个值的基础上先乘上$\gamma_{turn}$,然后再以$\gamma_{token}$衰减。

image-30.png

实验

实验设置

  • 环境: [推箱子](https://github.com/mpSchrader/gym - sokoban) 环境的视觉版本。
  • 奖励
    • 箱子推到目标位置:+1.0
    • 所有箱子放置到位:+10.0
    • 格式正确:+0.5
    • 如果在当前步骤未成功,每步会受到 - 0.1的惩罚
  • 评估指标
    • 得分:轨迹的累计奖励
    • 成功率
  • 模型配置:Qwen 2.5 VL - instruction 3B

训练设置

  • Rollout阶段
    • 采样概率(Top-p):0.95
    • 温度(Temperature):0.7
    • 最大轮数:3 # VLM智能体最多可以与环境进行3轮交互
    • 每轮最大动作数:3 # 虽然VLM智能体在当前轮次可能提出多个动作,但只会提取其提议中的前3个动作。
    • 最大响应token数:128
  • 更新阶段
    • $\gamma_{turn}$:0.95
    • $\gamma_{token}$:1.0

发现

作者设计了一个仅实现掩码机制(损失掩码和GAE掩码)的TRICO版本,称为 AICO(以动作为中心的交互链优化)。AICO屏蔽除动作之外的所有token,将优化纯粹集中在模型动作上。作者将AICO、TRICO以及与TRICO排除轮次奖励或双层GAE的变体进行了比较:

  • 移除轮次奖励会导致性能略有下降。
  • 移除双层GAE会导致模型在训练到一定程度后崩溃。
  • AICO 在整体性能上大幅优于 TRICO(这可能与 Sokoban 任务的规模有关),但TRICO在难题上表现更好,而AICO 在解决简单的单步和两步问题上更稳定。TRICO 可能增强了 agent 的探索能力。

局限性与展望

局限性:

  1. 训练不稳定
  2. 选择性token掩码和跨轮次信用分配的作用的进一步思考

未来的工作方向:

  1. 将评估扩展到更多样化的环境,包括 GUI agents 和具身 agents 等需要复杂视觉推理的真实世界应用。
  2. 适配更大的模型
  3. 迁移到纯文本环境
  4. 尝试与视觉处理机制有更强联系的算法
comments powered by Disqus
发表了21篇文章 · 总计4万5千字
使用 Hugo 构建
主题 StackJimmy 设计