# PR #26267 完整报告

- 仓库：`sgl-project/sglang`
- 标题：[NPU] Add torchaudio dependency for NPU platform
- 合并时间：2026-05-25 16:30
- 原文链接：http://prhub.com.cn/sgl-project/sglang/pull/26267

---

# 执行摘要

- 一句话：NPU 平台依赖补齐 torchaudio
- 推荐动作：建议阅读，NPU 平台维护者可了解依赖补齐的标准模式。不过，建议后续补充 check_env.py 的更新以完善诊断能力。

# 功能与动机

NPU 平台需要 torchaudio 作为依赖以支持音频相关模型处理。当前 NPU Docker 镜像和 pyproject 配置缺少该包，在使用音频功能时会导致运行时 import 错误。

# 实现拆解

1. **修改 Dockerfile (docker/npu.Dockerfile)**：新增 ARG TORCHAUDIO_VERSION="2.8.0" 并在 PyTorch 安装命令中追加 torchaudio==${TORCHAUDIO_VERSION}，确保 NPU 镜像构建时安装该依赖。
2. **修改项目依赖文件 (python/pyproject_npu.toml)**：在 dependencies 列表中插入 "torchaudio==2.8.0"，使通过 pip 安装 NPU 依赖时自动引入 torchaudio。

关键文件：
- `docker/npu.Dockerfile`（模块 部署脚本；类别 infra；类型 infrastructure）: NPU Docker 镜像构建入口，新增 TORCHAUDIO_VERSION 参数并修改 PyTorch 安装命令，确保镜像中包含 torchaudio。
- `python/pyproject_npu.toml`（模块 项目配置；类别 config；类型 configuration）: NPU 平台的 Python 依赖清单，新增 torchaudio==2.8.0 确保 pip 安装时自动拉取。

关键符号：未识别

## 关键源码片段

### `docker/npu.Dockerfile`

NPU Docker 镜像构建入口，新增 TORCHAUDIO_VERSION 参数并修改 PyTorch 安装命令，确保镜像中包含 torchaudio。

```dockerfile
# docker/npu.Dockerfile (partial)
ARG TORCHAUDIO_VERSION="2.8.0"  # 新增：定义 torchaudio 版本

# 修改后的 PyTorch 安装命令
RUN . /etc/environment_new && \
    (${PIP_INSTALL} torch==${PYTORCH_VERSION} torchvision==${TORCHVISION_VERSION} torchaudio==${TORCHAUDIO_VERSION} --index-url https://download.pytorch.org/whl/cpu) \
    && (${PIP_INSTALL} ${PTA_URL})

```

### `python/pyproject_npu.toml`

NPU 平台的 Python 依赖清单，新增 torchaudio==2.8.0 确保 pip 安装时自动拉取。

```toml
# python/pyproject_npu.toml (partial)
dependencies = [
    ...
    "torchao==0.9.0",
    "torchaudio==2.8.0",  # 新增：音频处理依赖
    "tqdm",
    ...
]

```

# 评论区精华

review 中 gemini-code-assist[bot] 建议同时更新 python/sglang/check_env.py，将 torchaudio 加入 PACKAGE_LIST 或 NPUEnv.EXTRA_PACKAGE_LIST，以便环境诊断时能正确报告版本，辅助调试 NPU 上的音频问题。但该建议未被采纳，PR 已直接合并。

- 建议更新 check_env.py 以包含 torchaudio 版本诊断 (other): PR 作者未采纳该建议，PR 直接合并。该建议无害但非必需，依赖补全本身即可满足功能需求。

# 风险与影响

- 风险：风险极低。仅新增依赖项，不涉及任何模型逻辑或核心代码变更。torchaudio 版本固定为 2.8.0，与 PyTorch 2.8.0 配合，版本兼容性风险小。未更新 check_env.py 可能导致环境诊断遗漏 torchaudio 版本信息，但不会影响运行。
- 影响：影响范围窄，仅作用于 NPU 平台的 Docker 镜像和 pip 安装，确保音频功能可用。对其他平台无影响。
- 风险标记：环境诊断遗漏

# 关联脉络

- PR #25989 chore: bump mooncake version to 0.3.11.post1: 同为依赖 / 基础设施变更，修改了 Dockerfile 和 pyproject 文件，展示了 NPU 平台依赖管理的典型模式。