Prhub

#28731 [cookbook] drop redundant serve flags (GLM-5.2) + fix M3 page-size note

原始 PR 作者 JustinTong0323 合并时间 2026-06-29 13:34 文件变更 5 提交数 5 评论 2 代码增减 +64 / -193

执行摘要

删除冗余 serve flags,更新 GLM-5.2/M3 部署配置

Per Lianmin's feedback (2026-06-19): make the default arguments just work — drop hand-set serve flags where the runtime default is correct or better, instead of overriding in the cookbook. 同时,上游PR#28976的实现使得MiniMax-M3的--page-size 128显式设置不再必要,需要更新文档。

值得精读PR body中的flag决策逻辑,尤其是关于何时信任运行时默认值、何时必须显式设置(如DeepEP env)的权衡。对于维护其他cookbook配置的开发者,这是很好的参考。

讨论亮点

无实质性review讨论。zijiexia直接批准了变更,机器人评论未提出建设性意见。

实现拆解

  1. 清理GLM-5.2 serve flags:在glm-5.2.jsx中,删除所有cell中的--cuda-graph-max-bs-decode标志,低延迟和高吞吐策略不再显式设置--max-running-requests,平衡策略提升至256。为GB300高吞吐配置添加SGLANG_DEEPEP_NUM_MAX_DISPATCH_TOKENS_PER_RANK=512环境变量。向GLM-5.2.mdx添加benchmark方法论注释。
  2. 修复MiniMax-M3 page-size注释:在minimax-m3.jsx中删除所有Blackwell cell的--page-size 128,并在MiniMax-M3.mdx中修正说明,指出--attention-backend fa4已自动强制page_size为128。
  3. 更新benchmark数据:在glm-5.2-benchmarks.jsx中,用main @ 09ca4fc上真实权重的测量结果替换旧数据。H200标记为待重新测量,B200和GB300填入新结果。
文件 模块 状态 重要度
docs_new/src/snippets/configs/zai-org/glm-5.2.jsx 部署配置 modified 6.18
docs_new/src/snippets/configs/zai-org/glm-5.2-benchmarks.jsx 性能基准 modified 6.37
docs_new/src/snippets/configs/MiniMaxAI/minimax-m3.jsx 部署配置 modified 4.5
docs_new/cookbook/autoregressive/MiniMax/MiniMax-M3.mdx 文档 modified 2.72
docs_new/cookbook/autoregressive/GLM/GLM-5.2.mdx 文档 modified 2.72

关键源码片段

docs_new/src/snippets/configs/zai-org/glm-5.2.jsx core-logic

核心 serve flags 清理:删除冗余的 --cuda-graph-max-bs-decode,调整 --max-running-requests,为 GB300 HT 添加 env SGLANG_DEEPEP_NUM_MAX_DISPATCH_TOKENS_PER_RANK=512

// GLM-5.2 balanced cell (H200 FP8): 去掉 --cuda-graph-max-bs-decode 128,
// 同时将 --max-running-requests 从 80 提升到 256,避免人为限流。
{
  match: { hw: "h200", variant: "default", quant: "fp8", strategy: "balanced", nodes: "single" },
  verified: true,
  env: [],
  flags: [
    "--model-path {{MODEL_NAME}}",
    "--tp 8",
    "--dp 8",
    "--enable-dp-attention",
    "--moe-a2a-backend deepep",
    "--speculative-algorithm EAGLE",
    "--speculative-num-steps 1",
    "--speculative-eagle-topk 1",
    "--speculative-num-draft-tokens 2",
    "--mem-fraction-static 0.85",
    // 大 chunked-prefill 是 balanced 策略的主要杠杆;
    // max-running 跟踪 KV 容量(H200 上约 60-80 个 8K+1K 请求)。
    "--chunked-prefill-size 32768",
    "--max-running-requests 256",
    "--host {{HOST_IP}}",
    "--port {{PORT}}",
  ],
}
docs_new/src/snippets/configs/zai-org/glm-5.2-benchmarks.jsx core-logic

核心 benchmark 数据更新,用真实权重重新测量 B200/GB300,标记 H200 为 pending

// B200 low-latency 策略的新 benchmark 条目
// 测量条件:8×B200, TP8, 真实权重 , --random-range-ratio 1.0, 每次运行 --flush-cache
// env SGLANG_SIMULATE_ACC_LEN=3.5 固定 EAGLE 接受长度(50% 接受 3/50% 接受 4)
{
  match: { hw: "b200", variant: "default", quant: "fp8", strategy: "low-latency", nodes: "single" },
  sglang_version: "main @ 09ca4fc",
  speed: [
    { workload: { dataset: "random", isl: 8192, osl: 1024, max_concurrency: 1 },
      ttft_ms: 757, tpot_ms: 3.22, tokens_per_sec_per_gpu: 32 },
    { workload: { dataset: "random", isl: 8192, osl: 1024, max_concurrency: 16 },
      ttft_ms: 3188, tpot_ms: 9.12, tokens_per_sec_per_gpu: 164 },
  ],
}

评论区精华

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

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

风险与影响

风险较低。删除的flags如果用户依赖显式设置的不同值可能受影响,但PR已通过重新测量验证性能达标;GB300高吞吐配置的env变量是必需的,如果用户忽略则可能导致DeepEP断言失败;benchmark数据变更可能使用户对比旧版本时产生困惑,但已注明测量条件。

对使用cookbook的用户:命令更简洁,不再需要手动添加多余flags。对维护者:配置列表更紧凑,减少维护负担。对系统本身:无运行时影响,仅文档更新。

配置依赖运行时默认值 依赖上游 #28976 benchmark 数据更新

关联 Issue

未识别关联 Issue

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

完整报告

参与讨论