Skip to content

【Task.38】VAGEN-Lite:Sokoban 多轮视觉 RL 复现进度 #235

Description

@yuki-younai

任务信息

  • 任务:Task 38 VAGEN-lite(高级,论文复现类,NeurIPS 2025,arXiv:2510.16907
  • 目标:在 Relax 中复现 Sokoban/FrozenLake 多轮视觉交互 RL,支持 PPO/GRPO 与 concat/non-concat 两种训练模式,效果与官方 Lite 实现一致(成功率差 ≤3–5pp)。
  • 参考实现Relax-Task/VAGEN(基线 commit 2936322
  • 分支feat/vagen-lite-sokoban(基于 task38-baseline

当前进度

✅ 已完成

阶段 内容 验证
Phase 1 环境移植 Sokoban/FrozenLake env 迁入 examples/vagen_lite/parse_response/prompt/seeding/patch_sokoban_env 逐字保留,仅改周边接线:async→sync、reward 走 infobuild_env 派发) 12 单测通过:同 seed 同地图、同动作序列同 state/reward/done
Phase 1.5 多轮 harness 框架外隔离验证整条链路(env reset→VLM 生成→parse→step→下一 obs) Qwen2.5-VL-3B 实跑,wm 模式 2 轮解出 Sokoban(reward=1.2)
Phase 2 Relax concat rollout 多轮循环搬进 generate(args,sample,sampling_params)->Sample 契约;env-driven 初始 prompt、reward=Σinfo["reward"];复用 deepeyes helpers 隔离 smoke + 全 pipeline:Megatron 加载 + SGLang + rollout 实跑通(64 sample,含 success)
冷启动优化 /dev/shm warmup + --warm-hf-checkpoint-page-cache Actor 加载 17min→35s,SGLang shard 11min hang→1s

🔧 train step 闭环(刚定位的两个 blocker)

rollout 已通,但 train forward 连续踩两个坑,均已定位修复,待重跑确认:

  1. batch 整除约束global-batch-size 8data.pymini_rollout_batch_size must be divisible by dp_size。改为 32(32/8=4,4%4=0;同时对齐 VAGEN-Lite train_batch_size=32)。
  2. VL 多模态透传(根因):actor forward 算 mrope 时 image_grid_thw=Noneget_rope_index 崩。定位到 relax/utils/training/data_fields.py:18——multimodal_train_inputs 仅在 --multimodal-keys 非空时才透传到 actor。VAGEN 图来自 env(非数据集列)故未设此 flag。对齐 deepeyes_r3 加 --multimodal-keys '{"image":"images"}':数据集无此列时 data.get("images") or [] 安全返回空,env-driven generate 会覆盖为真实 per-turn grids。

待办

  • 重跑确认 train step 闭环(rollout→convert→advantage→forward/backward)
  • Phase 3 non-concat 模式 + no_concat_gae advantage(需改 core:relax/components/advantages.py 新增分支 + turn 索引透传,按 CLAUDE.md「Ask First」征询)
  • Phase 4-5 reward_variance 低方差 filter、FrozenLake、评测、401 步训练、与原版 Lite 成功率对比(验收 4)、docs/Issue/PR

验收对照

验收标准 状态
同 seed 同地图;同动作序列同 state/reward/done
concat/non-concat 逐轮回放对齐 concat ✅ / non-concat 待 Phase 3
PPO+GRPO 各完成训练+评测无 hang/泄漏 GRPO concat train 待重跑确认;PPO 待 Phase 3
与原版 Lite 成功率差 ≤3–5pp 待 401 步对比

关联

  • 详细规划:task-38-plan.md
  • 进度记录:Relax/TASK38_PROGRESS.md
  • 认领人:@yuki-younai

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions