Skip to content

v0.4.0

Latest

Choose a tag to compare

@gaow0007 gaow0007 released this 29 Sep 04:09

ROLL v0.4.0 Release Notes

大家好!感谢大家对 ROLL 的持续关注。ROLL 发布 v0.4.0 版本,新增 Diffusion RL/蒸馏全家桶(FlowGRPO、DiffNFT、DMD、ODE 蒸馏)、Agentic PPO/SAO、veomni / vllm_omni 后端;深化 mcore_adapter 能力(细粒度 MTP、Critic Megatron 后端、KimiK2.5);升级 NCCL offload(colocate 显存让位推理)并强化 RemoteBatch 传输;扩展 Qwen3-Next、torch2.11、PPU 硬件适配。本版本同时合入了开源社区的贡献(Ascend NPU、PPU等)。以下是更新梳理,欢迎加入 ROLL 社区。

🚀 亮点

  • 新增 Diffusion RL & 蒸馏 能力:FlowGRPO、DiffNFT、DMD 蒸馏与 ODE 蒸馏 Pipeline
  • 新增 Agentic PPO / SAO 训练范式,配套 Megatron Value Head 与 Critic 能力
  • 新增 veomni 训练后端 Strategy 与 vllm_omni 推理后端
  • 新增 细粒度 MTP 训练模式(standalone / joint / mtp_only)
  • 新增 Router Replay 扩展:支持 vLLM 端复用路由决策,并支持 VLM + sequence packing
  • NCCL offload 升级为原生 suspend/resume:colocate 场景下推理期将 NCCL 通信显存 offload 干净,把显存留给推理引擎(vLLM / SGLang),提升 GPU 利用率
  • 强化 RemoteBatch(TransferQueue) 跨 Worker 传输

🚀 主要新特性

Pipeline

  • 新增 Agentic PPO / SAO 训练:Megatron Value Head 支持与 Critic HF checkpoint 保存,示例
  • 新增 On-Policy Self-Distillation (OPSD),并在 VLM Pipeline 支持 MOPD,文档

Diffusion

Strategy 后端

  • 新增 veomni 训练后端(roll/distributed/strategy/veomni_strategy.py)
  • 新增 vllm_omni_strategy 支撑 Diffusion rollout
  • vLLM external DP 支持

mcore_adapter

  • 新增细粒度 MTP 训练模式(mtp_training_mode):standalone(梯度截断 / Detach)、joint(联合训练)、mtp_only(冻结主模型仅训 MTP),文档,支持 Qwen3.6 MTP stacked MoE
  • 新增 Critic Worker Megatron 后端(Value Head)
  • 新增 MoE 负载监控:hybrid optimizer patch 与专家负载均衡度指标(expert_distributed_std / max_token_per_expert)
  • Router Replay (R3/R2) 扩展:支持 packing、VLM,并对齐 vLLM/SGLang max_num_seqs,文档

性能优化

  • Offload 增强:新增 local / local_dedup offload store 后端(roll/distributed/store/local/)消除DP间冗余weights,降低host mem;
  • NCCL 优化:原生 NCCL offload、native suspend/resume(roll/utils/nccl_suspend.py),colocate 场景下 offload 通信显存、提升推理引擎(vLLM / SGLang)GPU 利用率
  • RemoteBatch / TransferQueue:统一切换所有 Worker 到 DP_MP_COMPUTE + TQ 预取,文档
  • Sequence Packing 默认开启,新增packing ratio相关metrics

Models

  • 新增 KimiK2.5 模型支持(mcore_adapter/src/mcore_adapter/models/kimi_k25/)

Docker & Hardware

  • 新增 torch2.11 + vLLM 0.23.0 镜像(docker/Dockerfile.torch2110)
  • 新增 PPU 适配:Dockerfile.torch2100.vllm.ppu 镜像与 requirements_torch2100_vllm_ppu.txt

🤝 社区贡献合入

本版本基于开源社区 main 分支构建,合入了以下社区贡献,感谢各位社区同学:

  • Ascend NPU:Docker 安装升级、NPU 文档更新、decord 依赖切换为 decord2
  • PPU:新增带 SAIL pypi 源的 ROLL PPU dockerfile
  • 修复:scheduler 在 get_batch_opt_level_0 下丢失 multi_modal_data;短响应跳过 advantage whitening;VisionTemplate 与 rope_parameters 集成;CI 稳定性修复

⚠️ 升级须知(Breaking Changes)

  • 移除 roll/utils/offload_nccl.py,NCCL offload 请使用原生 suspend/resume(roll/utils/nccl_suspend.py)

Deprecated

  • torch2.5.1 / torch2.6.0:移除 Dockerfile.torch251.*、Dockerfile.torch260.* 及 requirements_torch260_{diffsynth,sglang,vllm}.txt,同时移除 vllm<0.11.0(vllm_0_8_4 / vllm_0_10_2 / vllm_0_12_0 的 ray_distributed_executor patch)与 sglang 0.4.6(v046post4_patch)相关适配
  • 移除 torch280 AMD 镜像(Dockerfile.torch280.vllm.AMD)
  • 移除 DeepSpeed 残留代码、配置及相关测试(checkpoint / log_probs 对比)