# PR #21118 完整报告

- 仓库：`sgl-project/sglang`
- 标题：ci: remove IS_BLACKWELL env var; auto-detect Blackwell
- 合并时间：2026-03-23 14:44
- 原文链接：http://prhub.com.cn/sgl-project/sglang/pull/21118

---

# 执行摘要
本 PR 移除了显式的 IS_BLACKWELL 环境变量，改为通过 CUDA SM 版本和工具包自动检测 Blackwell 系统，简化了 CI 配置，减少了手动错误风险，对开发团队的影响较小。

# 功能与动机
PR 旨在自动检测 Blackwell 硬件，避免在 CI 流程中硬编码环境变量。PR body 中提到："Remove envs.IS_BLACKWELL from Envs and route is_blackwell_system() through sglang.srt.utils.is_blackwell()"，目的是提升配置的自动化程度，减少维护负担。

# 实现拆解
- **CI 工作流文件**：更新了 `.github/workflows/pr-test.yml`、`.github/workflows/nightly-test-nvidia.yml` 和 `.github/workflows/rerun-ut.yml`，删除所有 `IS_BLACKWELL=1` 的设置，依赖脚本自动检测。
- **环境配置**：从 `python/sglang/srt/environ.py` 的 `Envs` 类中移除 `IS_BLACKWELL` 变量，减少硬编码依赖。
- **测试工具**：修改 `python/sglang/test/test_utils.py` 中的 `is_blackwell_system()` 函数，使其调用 `sglang.srt.utils.is_blackwell()` 进行自动检测。

# 评论区精华
仅有一条来自 gemini-code-assist[bot] 的评论，关注 docstring 的可读性：
> "The updated docstring is less informative as it refers to another function's implementation details rather than describing its own purpose."
建议恢复原 docstring，但未在 PR 中采纳，docstring 保持指向另一个函数的实现细节。

# 风险与影响
- **风险**：自动检测逻辑的准确性是关键；如果检测失败，可能影响 CI 测试的正确执行。但脚本 `ci_install_dependency.sh` 已支持备用 shell 环境变量覆盖，风险较低。
- **影响**：对用户无直接影响，主要简化开发团队的 CI 维护工作，提升配置一致性，可能轻微提升 CI 的健壮性。

# 关联脉络
与 PR #21187 "ci: unify PR test suite naming" 相关，两者都聚焦于 CI 配置的改进和标准化，反映了仓库在优化测试流程方面的持续努力。