Prhub

#20751 [NPU]Add a full test pipeline on NPU, resolve issues in the NPU test architecture

原始 PR 作者 cherryblo 合并时间 2026-04-01 19:56 文件变更 43 提交数 44 评论 5 代码增减 +673 / -106

执行摘要

新增 NPU 完整测试流水线,解决测试架构问题以支持版本发布前的全面测试。

根据PR body中的表述,动机是'According to the roadmap, add an NPU release pipeline to execute all NPU test cases before version release, supporting testing against the latest community code and daily build packages.',即基于issue 20079的规划,添加NPU发布流水线以实现版本发布前的全面测试。

建议NPU相关开发者和测试工程师精读此PR,重点关注.github/workflows/full-test-npu.yml中的流水线设计,学习如何通过参数化配置实现多环境测试。该PR展示了测试架构的优化模式,值得借鉴以实现其他硬件平台的无缝集成。

讨论亮点

Review评论为空,表明在代码审查中没有技术讨论或争议。Issue评论中只有bot指令(如'/tag-and-rerun-ci'),用于触发CI测试,未涉及技术讨论,因此没有可提炼的争议点或决策结论。

实现拆解

实现方案拆解如下:

1) CI/CD模块:新增.github/workflows/full-test-npu.yml文件,定义手动触发的完整测试流水线,支持输入参数image_a3skip_install_flag以灵活配置测试环境和安装选项;
2) 测试框架模块:修改现有工作流文件如.github/workflows/nightly-test-npu.yml.github/workflows/pr-test-npu.yml,调整测试套件命名(如将'per-commit-'改为'stage-b-test-')、更新定时任务(如夜间测试时间调整为凌晨2点)并添加镜像参数;
3) 测试用例模块:重命名多个测试文件(如将'test/srt/ascend/'下的文件移至'test/registered/ascend/'并更名为'npu'),更新register_npu_ci调用以注册到新测试套件(如'full-*'套件),并预下载GSM8K数据集以避免网络超时;
4) 依赖管理:修改python/pyproject_npu.toml添加'hf_transfer'和'huggingface_hub'依赖,增强模型下载能力。

文件 模块 状态 重要度
.github/workflows/full-test-npu.yml CI/CD added 8.0
.github/workflows/nightly-test-npu.yml CI/CD modified 6.0
test/run_suite.py 测试框架 modified 5.0

关键符号

register_npu_ci

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

评论区精华

无技术讨论 other

Review 评论为空,未进行技术讨论,Issue 评论中仅有 bot 指令用于触发 CI 测试。

结论:无争议或决策点。 · 已解决

风险与影响

技术风险具体包括:

1) 工作流配置风险:新文件.github/workflows/full-test-npu.yml中的输入参数逻辑(如skip_install_flag处理)可能引入语法错误或逻辑漏洞,导致CI运行失败;
2) 测试套件兼容性风险:重命名测试用例文件(如从'ascend'改为'npu')可能破坏现有测试套件识别,需确保test/run_suite.py中的套件列表更新正确;
3) 环境依赖风险:预下载数据集和镜像参数配置增加维护复杂性,如果缓存服务或镜像路径变更,可能引起测试超时或失败;
4) 集成风险:多次提交和合并(共44次)表明有频繁调整,可能隐含未完全测试的边缘情况。

影响范围:

1) 对用户:无直接影响,测试流水线改进不改变运行时功能;
2) 对系统:提升NPU测试的全面性和可靠性,确保版本发布前的质量保证,减少因测试遗漏导致的回归问题;
3) 对团队:优化CI资源消耗(如通过手动触发完整测试),提高测试效率,但需额外维护新工作流配置。影响程度为中等,主要局限于测试基础设施,不涉及核心模型或内核代码。

工作流配置风险 测试套件兼容性 环境依赖复杂性

关联 Issue

#20079 [Roadmap] SGLang CI Pipeline Planning for NPU

完整报告

参与讨论