Prhub

#45294 Update hidden states extraction integration test triggers

原始 PR 作者 fynnsu 合并时间 2026-06-12 16:05 文件变更 1 提交数 1 评论 1 代码增减 +15 / -0

执行摘要

扩展现有 hidden states 集成测试触发条件

根据 PR body,example_hidden_states_connector.py 被 hidden states 提取系统大量使用,但修改该文件不会触发集成测试;同时 #43805 添加了需要 TP=2 的测试,但未添加对应的 CI job。此次变更旨在填补这些 CI 触发缺失。

建议精读。此 PR 展示了维护大型项目中 CI 测试触发策略的典型实践——当有新功能测试文件或关键依赖文件引入时,需要同步更新 CI 触发规则。值得关注的决策是将 example_hidden_states_connector.py 显式加入依赖(而非笼统依赖目录),以及为多 GPU 测试单独设立 job,避免与单 GPU 测试混淆。

讨论亮点

无 review 评论;PR 由 mgoin 直接批准,无争议。

实现拆解

  1. 修改 extract-hidden-states-integration job 的 source_file_dependencies:在 .buildkite/test_areas/misc.yaml 中,向现有 hidden states 集成测试 job 的依赖列表添加 vllm/distributed/kv_transfer/kv_connector/v1/example_hidden_states_connector.py,使得该文件变更时自动触发该 job。
  2. 新增 Extract Hidden States Integration (2 GPUs) job:在同一个 YAML 文件中,添加一个新 job,其 key 为 extract-hidden-states-integration-2-gpus,使用 2 个 GPU(num_devices: 2),依赖与第一个 job 相同,但运行命令增加了 -m 'distributed' 标记,仅执行分布式相关的测试用例。新 job 在第一个 job 之后定义(位于 Regression job 之前)。
  3. 确保两个 job 共享相同的 timeout(20 分钟)和设备(h200_18gb),使用 spawn 模式启动 worker,保持一致性。
文件 模块 状态 重要度
.buildkite/test_areas/misc.yaml CI 配置 modified 4.45

分析完成后,这里会展示 LLM 生成的相对完整源码片段和详细注释。

评论区精华

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

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

风险与影响

低风险。变更仅涉及 CI 配置文件,不会影响任何业务代码。新增 job 在原有硬件资源上运行,需注意 2 GPU job 可能增加 CI 资源消耗,但 timeout 和 device 配置与现有 job 类似,不会额外抢占总线。实际运行结果(PR 作者确认)显示新 job 成功通过。

  • CI 系统:增加了一个需要 2 GPU 的并行 job,但整体 CI pipeline 时间可能略微增加(约 20 分钟),因为新 job 与现有 job 并行运行。资源消耗增加,但对于 h200_18gb 队列影响有限。
  • 开发团队:今后修改 example_hidden_states_connector.pytests/v1/kv_connector/extract_hidden_states_integration 下的测试会自动触发集成测试,提高回归覆盖。分布式测试不再被遗漏。
  • 下游用户:无直接影响。
CI 资源增加 无业务风险

关联 Issue

未识别关联 Issue

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

完整报告

参与讨论