Prhub

#26390 [NPU] fix CI

原始 PR 作者 Makcum888e 合并时间 2026-05-27 14:45 文件变更 2 提交数 4 评论 2 代码增减 +2 / -2

执行摘要

NPU CI 因 torchaudio 依赖位置调整修复

NPU CI 在合并 #26267 后失败。原因是 torchaudio 版本与 PyTorch 版本不匹配,需要从项目元数据中解耦,由 CI 脚本根据实际 PyTorch 版本动态安装。

PR 较小,但展示了依赖管理的最佳实践:将版本敏感的依赖从项目元数据中剥离,交由 CI 脚本按环境动态安装。值得阅读 review 中的讨论。

讨论亮点

gemini-code-assist[bot] 指出将 torchaudiopyproject_npu.toml 移除后,当 OPTIONAL_DEPS 启用时(if 分支)会完全缺失 torchaudio,导致 CI 失败。建议在 if 分支也显式安装对应版本。该问题已在后续提交中修复。

实现拆解

  1. 移除 pyproject_npu.toml 中的 torchaudio 依赖:删除第 60 行 "torchaudio==2.8.0",避免固定版本与 CI 实际使用的 PyTorch 版本冲突。
  2. 在 CI 脚本中新增 torchaudio 安装:在 scripts/ci/npu/npu_ci_install_dependency.shelse 分支(非 OPTIONAL_DEPS 模式)中,添加 TORCHAUDIO_VERSION="2.8.0" 变量,并在 uv pip install 命令中增加 torchaudio==${TORCHAUDIO_VERSION},确保与 PyTorch 2.8.0 一同安装。
  3. 修复 review 指出的遗漏:根据 gemini-code-assist[bot] 的建议,在 if 分支(OPTIONAL_DEPS 开启时)也补充了 torchaudio 的安装(例如 TORCHAUDIO_VERSION="2.10.0"),防止该路径下 CI 失败。
文件 模块 状态 重要度
scripts/ci/npu/npu_ci_install_dependency.sh CI 脚本 modified 3.45
python/pyproject_npu.toml 依赖配置 modified 2.93

关键源码片段

scripts/ci/npu/npu_ci_install_dependency.sh infrastructure

CI 安装脚本,新增 torchaudio 显式安装,确保与 PyTorch 版本对齐。修复了 review 指出的 OPTIONAL_DEPS 分支遗漏。

# scripts/ci/npu/npu_ci_install_dependency.sh ( 片段 )
if [ -n "$OPTIONAL_DEPS" ]; then
    # OPTIONAL_DEPS 分支:安装 torchaudio 2.10.0 以匹配可选依赖版本
    TORCHAUDIO_VERSION="2.10.0"
    ${UV_PIP_INSTALL} torch==${PYTORCH_VERSION} torchvision==${TORCHVISION_VERSION} torchaudio==${TORCHAUDIO_VERSION} --index-url ${TORCH_CACHE_URL} --extra-index-url ${PYPI_CACHE_URL}
else
    # 非 OPTIONAL_DEPS 分支:使用与 PyTorch 2.8.0 对齐的 torchaudio 2.8.0
    PYTORCH_VERSION="2.8.0"
    TORCHVISION_VERSION="0.23.0"
    TORCHAUDIO_VERSION="2.8.0"
    ${UV_PIP_INSTALL} torch==${PYTORCH_VERSION} torchvision==${TORCHVISION_VERSION} torchaudio==${TORCHAUDIO_VERSION} --index-url ${TORCH_CACHE_URL} --extra-index-url ${PYPI_CACHE_URL}
fi

评论区精华

torchaudio 在 OPTIONAL_DEPS 路径下缺失 正确性

gemini-code-assist[bot] 指出移除 pyproject_npu.toml 中的 torchaudio 后,当 OPTIONAL_DEPS 启用时(if 分支)会完全缺失 torchaudio,可能导致 CI 失败。建议在 if 分支也定义并安装对应版本。

结论:PR 作者在后续提交中修复,在 if 分支也添加了 torchaudio 安装。 · 已解决

风险与影响

低风险。变更仅涉及依赖管理和 CI 脚本,不影响运行时逻辑。但需确保 OPTIONAL_DEPS 与普通模式下的 torchaudio 版本一致性,避免版本冲突。

直接影响 NPU CI 流程,修复了因 #26267 引入的回归。对用户无感知,仅影响 CI 环境。

仅影响 CI 环境

关联 Issue

未识别关联 Issue

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

完整报告

参与讨论