MindIE-LLM

English | 中文

快速参考


MindIE-LLM

MindIE LLM是昇腾的大语言模型推理加速套件,旨在通过深度优化的模型库和推理优化器,专门提升大模型在昇腾硬件上的推理性能和易用性。MindIE LLM基于昇腾硬件,提供业界通用大模型推理能力,多并发请求的调度,包含Continuous Batching、PagedAttention、FlashDecoding等加速特性,使能用户高性能推理需求。

MindIE-LLM Docker

提供自动化构建脚本和多阶段 Dockerfile,支持从编译包构建 MindIE-LLM 推理服务镜像。构建流程涵盖 Python 编译、CANN 工具链安装、PyTorch/torch_npu(PTA)部署、以及 MindIE-LLM 服务安装,并支持 6 路并行下载加速。


文件说明

文件 说明
build.sh 主入口脚本,负责参数解析、校验、下载编排与构建调用
Dockerfile 多阶段 Docker 构建文件(7 个阶段)
modules/config.sh 集中配置:URL 模板、日志、校验、架构检测、Chip/OS 元数据
modules/download.sh 下载层:6 路并行下载 PTA / Python / CANN / MindIE-LLM 包
modules/build_image.sh 构建编排层:镜像 Tag 计算、Docker 构建、镜像导出

支持的 Tag 及 Dockerfile 链接

Tag 规范

Tag 遵循以下格式:

mindie-llm:<MindIE-LLM版本>-<产品系列>-<python版本>-<操作系统>-<架构类型>
字段 示例值 说明
MindIE-LLM版本 3.0.0 MindIE-LLM 版本号
产品系列 800I-A2800I-A3300I-Duo 目标昇腾产品系列
python版本 py3.11 Python 版本
操作系统 ubuntu24.04openeuler 基础操作系统
架构类型 x86_64aarch64 CPU 架构类型

镜像仓库地址

MindIE-LLM 镜像支持通过镜像仓库加速拉取基础镜像:

swr.cn-north-4.myhuaweicloud.com/inference

完整镜像示例:

mindie-llm:3.0.0-800I-A2-py3.11-ubuntu24.04-x86_64

产品系列映射

Chip 参数 产品系列 说明
310 300I-Duo Atlas 300I Pro / 300V Pro
910 800I-A2 Atlas 800T A2 / 900 A2 PoD
A3 800I-A3 Atlas 800T A3

构建参数

构建脚本通过命令行参数传递,以下为参数说明:

参数 说明 是否必填 默认值 示例值
--os 服务器操作系统 ubuntu / openeuler
--chip 昇腾设备型号 310 / 910 / A3
--arch 系统架构 x86_64 / aarch64
--mindie-llm MindIE-LLM 版本号 3.0.0
--cann CANN 版本号 9.0.0
--pta-tag PTA 发布 Tag v26.0.0-pytorch2.9.0
--type 包类型 whl whl / run
--python Python 版本 3.11.10 3.11.6
--dry-run 仅校验参数并展示配置 false

注意:

  1. cann 版本号参见昇腾社区

  2. pta-tag 参见 Pytorch-NPU 社区

  3. mindie-llm 版本号参见 MindIE-LLM 社区


快速开始

前置要求

  • 宿主机上需要安装 Docker(版本 ≥ 24.x.x)
  • 构建目录需要有足够的磁盘空间(下载包 + 构建缓存约 50GB+)
  • 可以访问昇腾 OBS 镜像源和华为云 PyPI 镜像

构建 MindIE-LLM 镜像

docker 目录下执行构建脚本:

# 完整参数示例(whl 包,默认 Python 3.11.10)
bash build.sh \
    --os=ubuntu \
    --chip=910 \
    --arch=x86_64 \
    --mindie-llm=3.0.0 \
    --cann=9.0.0 \
    --pta-tag=v26.0.0-pytorch2.9.0

# 使用 run 包 + 自定义 Python 版本
bash build.sh \
    --os=openeuler \
    --chip=310 \
    --arch=aarch64 \
    --mindie-llm=3.0.0 \
    --cann=9.0.0 \
    --pta-tag=v26.0.0-pytorch2.9.0 \
    --type=run \
    --python=3.11.6

# 仅校验参数,不执行构建
bash build.sh \
    --os=ubuntu \
    --chip=910 \
    --arch=x86_64 \
    --mindie-llm=3.0.0 \
    --cann=9.0.0 \
    --pta-tag=v26.0.0-pytorch2.9.0 \
    --dry-run

构建流程

构建过程依次完成以下步骤:

  1. 参数解析与校验build.sh 解析命令行参数,调用 config.sh 校验 OS/Chip/Arch/Type 合法性。
  2. 并行下载(6 路)download.sh 并行下载以下组件:
    • PTA(torch_npu wheel)
    • Python 源码包(仅 Ubuntu,openEuler 跳过)
    • CANN Toolkit
    • CANN NNAL
    • CANN Kernels(芯片相关算子包)
    • MindIE-LLM 包(whl 或 run)
  3. Docker 多阶段构建build_image.sh 调用 Dockerfile 执行 7 阶段构建:
    • Stage 1a (base-ubuntu): Ubuntu 24.04 + 从源码编译 Python
    • Stage 1b (base-openeuler): OpenEuler 24.03 + 预装 Python
    • Stage 2 (base): 动态 OS 选择,导入所有下载包
    • Stage 3 (cann): 安装 CANN Toolkit + Kernels + NNAL
    • Stage 4 (pta): 安装 PyTorch + torch_npu
    • Stage 4.5 (mindstudio): 安装开发工具(git, cmake, gcc, ffmpeg 等)
    • Stage 5 (mindie): 安装 MindIE-LLM 服务
  4. 镜像导出 — 将构建产物保存为 output/ 目录下的 .tar.gz 文件。

Dockerfile 多阶段构建图

base-ubuntu ──┐
              ├──> base ──> cann ──> pta ──> mindstudio ──> mindie
base-openeuler┘

下载源

组件 下载源
MindIE-LLM https://gitcode.com/Ascend/MindIE-LLM/releases/download
PTA (torch_npu) https://gitcode.com/Ascend/pytorch/releases/download
CANN https://ascend-repo.obs.cn-east-2.myhuaweicloud.com/CANN/CANN
Python 源码 https://mirrors.huaweicloud.com/python

支持的硬件

芯片系列 产品示例 架构
昇腾 910 Atlas 800T A2、Atlas 900 A2 PoD ARM64 / x86_64
昇腾 A3 Atlas 800T A3 ARM64 / x86_64
昇腾 310 Atlas 300I Pro、Atlas 300V Pro ARM64 / x86_64

环境变量(容器内)

构建过程中 Dockerfile 会设置以下关键环境变量:

变量 说明
ASCEND_TOOLKIT_HOME CANN 工具链安装路径
MINDIE_LLM_HOME_PATH MindIE-LLM 服务安装路径
ATB_SPEED_HOME_PATH ATB-LLM 加速库路径
MINDIE_LLM_CONTINUOUS_BATCHING 连续批处理开关(默认 1)
ASCEND_GLOBAL_LOG_LEVEL 全局日志级别(默认 3)

许可证

查看 MindIE-LLM 的许可证信息

与所有容器镜像一样,预装软件包(Python、系统库等)可能受其自身许可证约束。