华为昇腾系列——使用vllm
背景
华为昇腾有推出自己的推理引擎——MindIE(Mind Inference Engine)。同时也在持续维护“vllm-ascend”项目,用于在昇腾NPU上运行vllm。详见:欢迎使用 vLLM Ascend 插件 — vllm-ascend
本文主要记录对“vllm-ascend”的一个入门使用。
下载镜像及模型文件
# docker pull quay.io/ascend/vllm-ascend:v0.18.0 # /root/.venv/bin/modelscope download Qwen/Qwen3-0.6B --local_dir /root/models/Qwen3-0.6B查看npu卡情况
以便后续启动推理时,选择一张空闲的卡。
运行推理服务
# 编辑镜像启动文件 # vim run_vllm.sh # 1. 设置要使用的NPU设备 export DEVICE=/dev/davinci2 # 2. 使用一个较新的稳定镜像 export IMAGE=quay.io/ascend/vllm-ascend:v0.18.0 # 3. 指定模型文件位置 export MODELPATH=/xxx/models # 4. 运行容器,并进入 bash 交互环境 docker run --rm \ --name vllm-ascend \ --shm-size=1g \ --device $DEVICE \ --device /dev/davinci_manager \ --device /dev/devmm_svm \ --device /dev/hisi_hdc \ -v /usr/local/dcmi:/usr/local/dcmi \ -v /usr/local/bin/npu-smi:/usr/local/bin/npu-smi \ -v /usr/local/Ascend/driver/lib64/:/usr/local/Ascend/driver/lib64/ \ -v /usr/local/Ascend/driver/version.info:/usr/local/Ascend/driver/version.info \ -v /etc/ascend_install.info:/etc/ascend_install.info \ -v $MODELPATH:/workspace/models \ -p 8001:8000 \ -it $IMAGE bash# 容器内运行, 日志打印到“Application startup complete” 即为服务就绪 vllm serve models/Qwen/Qwen3-0.6B/验证
curl "http://127.0.0.1:8001/v1/chat/completions" -H "Content-Type: application/json" -X POST -d '{ "model": "models/Qwen/Qwen3-0.6B/", "messages": [{ "role": "user", "content": " 9.9和9.11谁大,详细解释" }], "stream": false }'