Prhub

#23742 docs(DeepSeek-V4): add h200|big verified recipes + tune H200 Pro parameters

原始 PR 作者 yushengsu-thu 合并时间 2026-04-26 12:44 文件变更 1 提交数 1 评论 4 代码增减 +22 / -8

执行摘要

H200 Pro 配方验证与参数调优

基于测试结果将 H200 Pro 的部署配方标记为已验证,并调优参数以提升性能。PR body 明确说明此次变更的目的是“Mark h200|big|low-latency, h200|big|balanced, h200|big|max-throughput as verified”和“Tune H200 Pro (big) parameters based on testing”。

此 PR 属于常规维护,适合快速浏览变更摘要。值得关注的是 review 中提出的两个潜在风险:mem-fraction-static 范围过宽可能影响其他已验证平台,以及注释过时问题。建议在后续 PR 中修复注释并缩小 mem-fraction-static 的改动范围。

讨论亮点

Review 评论由 Copilot 提出,主要关注注释与代码一致性:

  • 低延迟配方注释过时:H200 big low-latency 的注释仍提及旧的 cg=32 max-run=64,但代码已改为 cg=8 max-run=32,建议更新注释。
  • mem-fraction-static 改动范围过宽--mem-fraction-static 从 0.82 改为 0.88 应用于所有 isBig 模型,但 PR 描述暗示此调优仅针对 H200 Pro,建议限制条件以避免影响已验证的 B200/GB300 配方。
  • balanced 配方注释错误:balanced 的 H200 big 注释仍写 cg=128 max-run=128,但代码已改为 cg=8 max-run=32,建议更新注释。
    所有评论均未在本次 PR 中解决(无后续回复或代码修改),但 PR 最终被批准合并。

实现拆解

  1. 标记已验证配方:在文件 docs_new/src/snippets/autoregressive/deepseek-v4-deployment.jsxVERIFIED_RECIPES Set 中添加了 "h200|big|low-latency""h200|big|balanced""h200|big|max-throughput" 三个条目,使这些配方在交互式命令生成器中呈现为可运行的命令而非注释。
  2. 低延迟(low-latency)配方参数调优
    • --cuda-graph-max-bs 从 32 改为 8,--max-running-requests 从 64 改为 32。
    • --mem-fraction-static 从 0.82 改为 0.88(此变更最初对所有 big 模型生效,但 review 建议限缩至 H200 Pro,最终实现中保持为所有 big 模型统一调整)。
  3. balanced 配方参数调优
    • 为 H200 Pro (big) 添加专属的 --cuda-graph-max-bs 8--max-running-requests 32
    • --mem-fraction-static 设为 0.88(仅 H200 Pro big)。
    • 将 DeepEP dispatch-token 上限 SGLANG_DEEPEP_NUM_MAX_DISPATCH_TOKENS_PER_RANK 从 256 改为 128(仅 H200 Pro big)。
  4. max-throughput 配方参数调优:同样将 H200 Pro big 的 dispatch-token 上限从 256 改为 128。
  5. 配套注释更新:未更新相关注释,review 评论指出了注释与实际参数不一致的问题,但未在本次 PR 中修复。
文件 模块 状态 重要度
docs_new/src/snippets/autoregressive/deepseek-v4-deployment.jsx 部署脚本 modified 6.1

关键符号

VERIFIED_RECIPES Set buildLowLatencyCommand buildBalancedCommand buildMaxThroughputCommand

关键源码片段

docs_new/src/snippets/autoregressive/deepseek-v4-deployment.jsx core-logic

唯一的变更文件,包含了所有配方标记和参数调优逻辑,是整个 PR 的核心。

// 已验证配方集合:新增 H200 Pro (big) 的三种配方
const VERIFIED_RECIPES = new Set([
  // ... 原有条目省略
  "h200|big|low-latency", // 新增:H200 Pro low-latency 已验证
  "h200|big|balanced", // 新增:H200 Pro balanced 已验证
  "h200|big|max-throughput", // 新增:H200 Pro max-throughput 已验证
  "h200|big|pd-disagg", // 原有
  // ... 其余条目省略
]);// balanced 配方:为 H200 Pro (big) 设置专属参数
if (recipe === "balanced") {
  if (hardware === "h200") {
    recipeEnv.push(isBig
      ? "SGLANG_DEEPEP_NUM_MAX_DISPATCH_TOKENS_PER_RANK=128" // H200 Pro big 使用 128
      : "SGLANG_DEEPEP_NUM_MAX_DISPATCH_TOKENS_PER_RANK=256" // H200 small 使用 256
    );
  } else {
    // 其他硬件保持原有逻辑
  }
}// max-throughput 配方:类似 balanced 的调整
if (recipe === "max-throughput") {
  if (hardware === "h200") {
    recipeEnv.push(isBig
      ? "SGLANG_DEEPEP_NUM_MAX_DISPATCH_TOKENS_PER_RANK=128"
      : "SGLANG_DEEPEP_NUM_MAX_DISPATCH_TOKENS_PER_RANK=256"
    );
  } else {
    // 其他硬件保持原有逻辑
  }
}

评论区精华

低延迟配方注释与代码不一致 documentation

Copilot 指出 low-latency 配方的注释仍提及旧参数 `cg=32 max-run=64`,但代码已改为 `cg=8 max-run=32`,建议更新注释。

结论:未解决,PR 已合并但注释未更新。 · unresolved

mem-fraction-static 改动范围过宽 正确性

Copilot 评论指出 `--mem-fraction-static` 改为 0.88 应用于所有 `isBig`,但 PR 描述暗示仅针对 H200 Pro,建议限制条件以避免影响其他已验证平台。

结论:未解决,PR 已合并但改动范围保持原样。 · unresolved

balanced 配方注释错误 documentation

Copilot 指出 balanced 配方的注释仍写 `H200 big: cg=128 max-run=128`,但代码已改为 `cg=8 max-run=32`,建议更新注释。

结论:未解决,PR 已合并但注释未更新。 · unresolved

风险与影响

  1. 参数影响其他 big 模型--mem-fraction-static 0.88 在所有 big 配方的 low-latency 中统一应用,可能影响 B200/GB300 等已验证平台的显存分配,导致 OOM 或性能下降。虽然 review 已指出该风险,但未修复。
  2. 注释与代码不一致:low-latency 和 balanced 配方的注释未更新,可能导致用户或开发者在阅读代码时产生困惑,误以为实际使用的仍是旧参数。
  3. 未触发 CI 测试:PR 标签包含 'deepseek' 但未包含 'run-ci',且仅改动文档/配置相关的 JSX 文件,未执行自动化测试来验证参数变更是否引入回归。

用户影响:H200 Pro (big) 用户现在可直接复制已验证的命令行参数,部署体验提升;但若参数调优不佳(如 mem-fraction 过高导致 OOM),可能影响首次部署成功率。
系统影响:仅影响部署脚本生成逻辑,无运行时影响。
团队影响:低频维护,变更集中在单一文件。

mem-fraction-static 影响范围过大 注释与代码不一致 未触发 CI 测试

关联 Issue

未识别关联 Issue

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

完整报告

参与讨论