执行摘要
- 一句话:移除 torch_nightly 镜像标签,改用全量构建
- 推荐动作:建议精读 PR 说明中关于合并顺序的要求,确保 ci-infra#382 和 PR#47180 已部署后再合并。该变更是 CI 基础设施清理的一部分,值得运维和 CI 负责人关注。
功能与动机
PR 描述指出,torch_nightly 镜像标签用于选择部分步骤在 NIGHTLY=1 时组成“vLLM Against PyTorch Nightly”组,但已被 TORCH_NIGHTLY 构建模式取代——后者直接替换整个基础镜像,使全部流水线都在 nightly torch 上运行,不再需要手动维护的精选子集。
实现拆解
- 删除
test_areas/models_basic.yaml 中的标签和镜像块:移除 torch_nightly: true 字段和对应的 mirror: { torch_nightly: {} } 块,共 5 行。
- 删除
test_areas/models_language.yaml 中的镜像块:移除 3 个 torch_nightly: {} 镜像块(保留其他镜像块如 amd:),共 3 行。
- 删除
test-amd.yaml 中的标签和文档:移除头部注释中的 torch_nightly(bool) 文档行,以及 35 个步骤中的 torch_nightly: true 字段,共 36 行。同时移除因删除子键而变为空的 mirror: 块,但保留同级的 amd: 硬件镜像配置。
关键文件:
.buildkite/test-amd.yaml(模块 CI 配置;类别 config;类型 configuration): 删除最多:36 行,包括 35 个 torch_nightly: true 标签和头部文档行,是主要变更文件。
.buildkite/test_areas/models_basic.yaml(模块 CI 配置;类别 config;类型 configuration): 删除 5 行,移除 torch_nightly: true 和对应的 mirror: { torch_nightly: {} } 块。
.buildkite/test_areas/models_language.yaml(模块 CI 配置;类别 config;类型 configuration): 删除 3 行,移除 3 个 torch_nightly: {} 镜像块(保留其他镜像块)。
关键符号:未识别
关键源码片段
.buildkite/test-amd.yaml
删除最多:36 行,包括 35 个 torch_nightly: true 标签和头部文档行,是主要变更文件。
# Documentation
# label(str): the name of the test. emojis allowed.
# fast_check(bool): whether to run this on each commit on the fastcheck pipeline.
# torch_nightly(bool): whether to run this on vllm against the torch nightly pipeline. # 删除此行
# fast_check_only(bool): run this test on the fastcheck pipeline only
# optional(bool): never run this test by default (i.e. need to unblock manually) unless it's a scheduled nightly run.
# soft_fail(bool): allow this step to fail without failing the entire pipeline (useful for flaky or experimental tests).
# command(str): the single command to run for tests. incompatible with commands.
# commands(list): the list of commands to run for the test. incompatible with command.
# mirror_hardwares(list): the list of hardware to run the test on as well.
# num_gpus(int): override the number of GPUs for the test.
# num_nodes(int): whether to simulate multi-node setup by launching multiple containers on one host.
# timeout_in_minutes(int): sets a timeout for the step in minutes.
# parallelism(int): number of parallel jobs for test sharding.
# working_dir(str): specify the place where the command should execute, default to /vllm-workspace/tests
# source_file_dependencies(list): the list of prefixes to opt-in the test for, if empty, the test will always run.
(后续每个步骤中类似
torch_nightly: true 的行也被删除)
评论区精华
该 PR 无 review 评论。仅有一条来自 claude[bot] 的自动评论指出 fork 分支已禁用自动审查,以及一条来自 khluu 的批准。
风险与影响
- 风险:主要风险是合并时机:若在 ci-infra#382 和 PR#47180 上线前合并,会导致
NIGHTLY=1 不再生成 torch nightly 测试组,造成信号丢失。PR body 明确要求先合并前置 PR 再合并此 PR。技术风险较低,仅为配置清理,不涉及代码逻辑变更。
- 影响:对用户无影响;对 CI/CD 系统,流水线 YAML 配置将简化,不再需要维护
torch_nightly 标签,后续新增步骤时也无需考虑。对团队,删除了 44 行冗余配置,降低维护成本。
- 风险标记:合并顺序依赖
关联脉络
- PR #47180 [CI] Support TORCH_NIGHTLY env var and ready-torch-nightly label for full CI pipeline run against torch nightly: 提供替代方案,使整个 CI 流水线能运行在 PyTorch nightly 上,是此 PR 的前置条件。
参与讨论