执行摘要
本周(05/04-05/10)共合入34个PR,工具、奖励、rollout和Megatron四大模块均有重要改动。工具模块经历了大规模重构(移除废弃组件、引入函数式注册、集中化初始化);奖励模块统一配置并支持多输出异步评分;Rollout引擎新增TRTLLM异步RL、SGLang Prefill-Decode分解和在线策略蒸馏;Megatron修复了CP position_ids和CP+TP对齐等关键bug。CI与NPU支持持续增强,但测试覆盖不足和配置兼容性仍是主要风险点。
本周重点变化
-
工具系统大规模重构:PR #6302 移除课程采样器、动态数据集及多个废弃工具(BREAKING),PR #6300 将工具初始化移至AgentLoopWorker并废弃MCP,PR #6189 引入@function_tool装饰器,支持Python函数自动注册。工具架构从分散走向统一,降低了用户使用门槛。
-
奖励模块统一与扩展:PR #6265 统一RewardModelConfig字段(inference→rollout),修复world_size计算;PR #6228 支持多输出轨迹异步评分,扩展自定义reward manager接口;PR #6242 提取分数组装为类方法,方便覆写。奖励模块的可维护性和灵活性显著提升。
-
Rollout引擎异步化与多样化:PR #5631 为TRTLLM实现完整异步RL(含abort/resume);PR #6117 引入SGLang Prefill-Decode分解部署;PR #6056 集成多教师在线策略蒸馏。Rollout层在异步和异构部署上迈出关键步伐。
-
Megatron核心并行修复:PR #6267 修复CP场景position_ids计算错误;PR #6206 修正CP+TP序列对齐公式并适配新MTP API。这些修复直接影响大规模训练的数值正确性。
-
CI与NPU持续改进:新增GSPO Qwen3-30B NPU nightly CI(#6273);修复内存可视化NPU兼容性(#6216, #6248);精简TRTLLM CI(#6275)。基础设施保持活跃迭代。
模块与主题趋势
- 工具模块:正经历从混乱到有序的重构。移除MCP和旧工具减少了维护负担,function_tool降低了用户注册新工具的复杂度。但BREAKING变更需要下游适配,MCP移除影响相关用户。
- 奖励模块:围绕配置统一、多输出支持和接口扩展。配置字段不一致导致world_size计算反复(#6226→#6258→#6265),提醒模块间配置依赖需细粒度管理。
- Rollout:异步、分解、蒸馏是三大关键词。TRTLLM异步RL为大模型部署提供更灵活的中断/恢复能力,SGLang PD分解支持更优化的GPU布局,OPD扩展知识蒸馏场景。但TRTLLM Docker构建存在版本依赖风险。
- Megatron:并行机制的精准修复是重点。position_ids和对齐公式的修复直接影响训练稳定性,但缺少测试覆盖,需加强回归。
- CI/Infra:效率优化(任务合并、依赖精简)和硬件兼容(NPU, aarch64)双线推进。多处依赖升级和移除,需警惕对现有流水线的影响。
风险观察
- 测试覆盖不足:8个PR明确标记缺少测试覆盖,尤其#6267和#6206涉及核心路径,回归风险高。
- 配置兼容性断裂:#6302的BREAKING变更和#6300的MCP移除可能影响用户现有配置和工具使用。
- reward world_size计算反复:世界大小计算从#6226修复到#6258回滚再到#6265解决,暴露了配置字段缺失的问题,类似连锁反应可能重现。
- TRTLLM Docker构建风险:#6230中cupy和ray版本可能存在,若构建失败将阻塞CI和用户部署。
- 多output teacher logprobs缺失:#6228标记为TODO,影响使用KL惩罚的多输出蒸馏场景,需跟进实现。
重点 PR 速览
- #6302 [BREAKING]:移除废弃工具、课程采样器和动态数据集,进行大方清理。
- #6300:工具初始化集中化,移除MCP支持,统一工具注册表。
- #6189:新增
@function_tool装饰器,支持Python函数自动注册为工具。
- #6265:统一RewardModelConfig字段,修复reward world_size计算。
- #6228:支持多输出轨迹异步评分,扩展自定义reward manager。
- #5631:TRTLLM异步RL完整实现(abort/resume、KV cache清理、profile)。
- #6117:SGLang Prefill-Decode分解,非对称TP布局。
- #6056:在线策略蒸馏集成多教师,完全异步框架扩展。
- #6267:修复Megatron CP position_ids计算错误。
- #6206:修复CP+TP对齐并适配新MTP API。
- #6273:新增GSPO Qwen3-30B NPU nightly CI。
- #6248:内存快照采集后自动清除历史,提升调试效率。
- #6258:回滚reward world_size计算(临时,待#6265修复)。
- #6230:修复TRTLLM Docker和CI,但依赖版本存疑。
后续建议
- 对测试覆盖不足的核心修复(如#6267、#6206)尽快补充集成测试。
- 在release notes中说明#6302和#6300的BREAKING变更,提供迁移指南。
- 验证TRTLLM Docker构建,确保cupy和ray版本有效,或调整变通方案。
- 推进#6228遗留的teacher logprobs实现,完善多输出训练能力。
- 继续保持工具和奖励模块的文档更新(如#6287、#6272),改善新用户体验。
参与讨论