Prhub

#1884 [docker] update megatron-bridge and add qwen3.6 tests

原始 PR 作者 zhuzilin 合并时间 2026-04-30 17:57 文件变更 13 提交数 3 评论 0 代码增减 +32 / -21

执行摘要

更新 Megatron-Bridge 并新增 Qwen3.6 测试

为适配新发布的 Qwen3.6-35B-A3B 模型,需要添加对应的 CI 测试用例;同时,Megatron-Bridge 的维护仓库已迁移,因此更新 Docker 安装源以保证后续兼容性。

建议关注 Bridge 版本切换后的集成测试结果,并验证 Qwen3.6 模型的训练收敛性。该 PR 的测试文件可作为模板,供开发者快速编写新模型的 PD Mooncake 测试。

讨论亮点

本 PR 无 review 讨论,由作者直接合入。

实现拆解

  1. 更新 Docker 依赖docker/Dockerfile):将 torch_memory_saver 的 git commit 从 dc6876905830430b5054325fa4211ff302169c6b 改为 d64a639;将 Megatron-Bridge 的安装源从 https://github.com/fzyzcjy/Megatron-Bridge.git@dev_rl 改为 https://github.com/radixark/Megatron-Bridge.git@bridge 并使用 --no-deps 标志。
  2. 新增 Qwen3.6 测试tests/test_qwen3.6_35B_A3B_pd_mooncake.py):将原 test_qwen3_30B_A3B_pd_mooncake.py 文件重命名为新模型名,并调整 MODEL_NAMEMODEL_TYPETORCH_DIST_CKPT 等常量。将 tensor-model-parallel-size 从 4 改为 2;在 sglang 参数字段中新增 --sglang-disaggregation-transfer-backend mooncake--sglang-speculative-algorithm EAGLE 及相关推测解码参数(num-steps、eagle-topk、num-draft-tokens、mamba-scheduler-strategy)。
  3. 增强 GLM4.7 测试tests/test_glm4.7_30B_A3B_pd_mooncake.py):在 sglang 参数字段中追加与 Qwen3.6 测试相同的 EAGLE 推测解码参数,保持 CI 测试一致性。
  4. 更新 CI 配置.github/workflows/pr-test.yml 及模板 .pr-test.yml.j2):将测试矩阵中原 test_qwen3_30B_A3B_pd_mooncake.py 替换为 test_qwen3.6_35B_A3B_pd_mooncake.py
  5. 同步文档:更新中英文 CI 文档、版本号及 README 中的测试列表,反映 CI 测试变更。
  6. 微调 Rollout 引擎slime/ray/rollout.py):删除 start_engines 方法中一处多余的空行,无逻辑影响。
文件 模块 状态 重要度
tests/test_qwen3.6_35B_A3B_pd_mooncake.py PD 测试 renamed 5.67
docker/Dockerfile Docker 构建 modified 2.96
tests/test_glm4.7_30B_A3B_pd_mooncake.py PD 测试 modified 3.83
.github/workflows/pr-test.yml CI 配置 modified 3.13
slime/ray/rollout.py Rollout 引擎 modified 3.38

关键符号

prepare execute

关键源码片段

tests/test_glm4.7_30B_A3B_pd_mooncake.py test-coverage

为 GLM4.7 测试添加 EAGLE 推测解码参数,保持一致性和增强测试覆盖。

# 在 sglang_args 中新增 EAGLE 推测解码四连参数
sglang_args = (
    "--rollout-num-gpus 8 "
    "--rollout-num-gpus-per-engine 4 "
    "--sglang-enable-dp-attention "
    "--sglang-dp-size 4 "
    "--sglang-enable-dp-lm-head "
    "--sglang-ep-size 4 "
    "--sglang-moe-dense-tp-size 1 "
    "--sglang-mem-fraction-static 0.45 "
    "--sglang-cuda-graph-max-bs 8 "
    "--sglang-max-running-requests 16 "
    "--sglang-disaggregation-transfer-backend mooncake "
    # 以下四行是本次新增的 EAGLE 推测解码参数
    "--sglang-speculative-algorithm EAGLE "
    "--sglang-speculative-num-steps 3 "
    "--sglang-speculative-eagle-topk 1 "
    "--sglang-speculative-num-draft-tokens 4 "
    "--sglang-watchdog-timeout 1200 "
    "--sglang-router-request-timeout-secs 1200 "
    "--sglang-enable-metrics "
    f"--sglang-config {sglang_config} "
)

评论区精华

没有提炼出高价值讨论线程

当前评论区没有形成足够清晰的争议点或结论,后续有更多讨论时会体现在这里。

风险与影响

  1. 依赖源变更风险:Megatron-Bridge 从 fzyzcjy 仓库切换到 radixark 仓库,版本不一致可能导致集成问题,需在真实训练场景中验证。
  2. 新增测试不稳定风险:Qwen3.6 为新模型,并行配置(TP=2, EP=8, CP=2, DP=4)可能与预期不符,EAGLE 推测解码参数可能影响 rollout 正确性与性能。
  3. CI 覆盖缺失风险:原 Qwen3-30B 测试被替换,旧模型在 CI 中不再有专门的 PD Mooncake 测试,若后续回归可能无法及时发现。
  4. 文档不同步风险:文档中修改了测试列表但未涉及其他配置说明,可能对开发者造成困惑。

影响范围:Docker 镜像构建(Bridge 与 memory saver 版本)、CI 测试矩阵(新增 Qwen3.6 测试替换 QWen3-30B)、GLM4.7 测试配置、中英文文档及版本号。
影响程度:中等。对用户无直接影响,但后续 CI 将验证新模型,Bridge 更新可能影响训练稳定性。

依赖源变更 新增测试不稳定 并行参数调整

关联 Issue

未识别关联 Issue

当前没有检测到明确关联的 Issue 链接,后续同步到相关引用后会出现在这里。

完整报告

参与讨论