使用 Docker 在昇腾 NPU 上运行 ROLL
最后更新:2026/06/23。
本指南介绍如何在华为昇腾 NPU 上获取、构建并运行 ROLL 镜像。推荐优先使用预构建镜像;如需自定义依赖,再使用 Dockerfile.A2 或 Dockerfile.A3 构建。Atlas 950 当前使用 ROLL x Ascend 中的手动安装配置。
硬件与软件要求
| 项目 | Dockerfile.A2 | Dockerfile.A3 |
|---|---|---|
| 硬件 | Atlas 900 A2 PODc(Ascend 910B1) | Atlas 900 A3 PODc(Ascend 910_9391) |
| 宿主机操作系统 | Ubuntu 22.04 | Ubuntu 22.04 |
| CANN | 9.0.0 | 9.0.0 |
| Python | 3.11 | 3.11 |
| Docker | >= 20.10 | >= 20.10 |
| 昇腾 NPU 驱动 | 已安装在宿主机上 | 已安装在宿主机上 |
本 Docker 指南覆盖 A2/A3 Dockerfile。Ascend 950 请使用手动安装配置:torch 2.10、vLLM v0.20.2、vLLM-Ascend main,并在构建 vLLM-Ascend 时设置 COMPILE_CUSTOM_KERNELS=1。
主要组件
两个 Dockerfile 安装的核心依赖版本相同:
| 组件 | 版本 |
|---|---|
| PyTorch | 2.9.0+cpu |
| vLLM | 0.18.0 |
| vLLM-Ascend | 0.18 |
| Transformers | 4.57.6 |
| triton-ascend | 3.2.1 |
Ascend 950 使用更新的手动安装版本组合:
| 组件 | Ascend 950 版本 / 设置 |
|---|---|
| PyTorch | 2.10 |
| vLLM | v0.20.2 |
| vLLM-Ascend | main 分支 |
| 必需构建变量 | COMPILE_CUSTOM_KERNELS=1 |
主要区别在于基础镜像和 SOC 版本:
| 项目 | Dockerfile.A2 | Dockerfile.A3 |
|---|---|---|
| 基础镜像 | quay.io/ascend/cann:9.0.0-910b-ubuntu22.04-py3.11 | quay.io/ascend/cann:9.0.0-a3-ubuntu22.04-py3.11 |
| SOC_VERSION | ascend910b1 | ascend910_9391 |