上级索引:vllm-ascend/README.md。
本页面向:已在昇腾机器上装好驱动与 Docker 的用户,用 官方容器镜像 跑通 Ling-2.6-Flash,尽量减少本地 Python 环境折腾。
按下面顺序执行后:在 Ling-2.6-flash(bf16): require 2 Atlas 800 A3 (128G) cards or 4 Atlas 800 A2 (64G) cards 上,用 vLLM Ascend 官方镜像 拉起在线推理服务,并用 curl 验证。
本页不解决:宿主机未装昇腾驱动、无对应机型、无 Docker——请先完成 昇腾环境准备 与 vLLM Ascend 安装说明 · Docker.
在宿主机执行(有正常输出即可进入下一步):
npu-smi info
docker --version/root/.cache/(与官方推荐一致),避免容器内重复下载失败。按机型二选一
| 机型 | 镜像(官方) | 国内镜像源 |
|---|---|---|
| Atlas 800 A2 | quay.io/ascend/vllm-ascend:v0.19.1rc1-openeuler | m.daocloud.io/quay.io/ascend/vllm-ascend:v0.19.1rc1-openeuler |
| Atlas 800 A3 | quay.io/ascend/vllm-ascend:v0.19.1rc1-a3-openeuler | m.daocloud.io/quay.io/ascend/vllm-ascend:v0.19.1rc1-a3-openeuler |
在宿主机执行(A3 示例):
export IMAGE=quay.io/ascend/vllm-ascend:v0.19.1rc1-a3-openeuler
export NAME=vllm-ascend-ling-2.6-flash
docker pull $IMAGE若你是 A2,请把 IMAGE 换成上表中 A2 镜像。
支持 BF16 ,权重来源以官方文档为准:
| 变体 | 说明 | ModelScope(示例) |
|---|---|---|
| BF16 | 全精度 | inclusionAI/Ling-2.6-Flash |
推荐:在宿主机将模型下载到即将挂载给容器的目录,例如:
mkdir -p /root/.cache/modelscope
# 使用 modelscope 或 git lfs 等按模型卡说明下载到本地后,在 docker run 时挂载到容器内 /root/.cacheA3 使用 davinci0–3
# Atlas A3:
export IMAGE=quay.io/ascend/vllm-ascend:v0.19.1rc1-a3-openeuler
docker run --rm \
--name vllm-ascend \
--shm-size=1g \
--net=host \
--device /dev/davinci0 \
--device /dev/davinci1 \
--device /dev/davinci2 \
--device /dev/davinci3 \
--device /dev/davinci_manager \
--device /dev/devmm_svm \
--device /dev/hisi_hdc \
-v /usr/local/dcmi:/usr/local/dcmi \
-v /usr/local/Ascend/driver/tools/hccn_tool:/usr/local/Ascend/driver/tools/hccn_tool \
-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 /root/.cache:/root/.cache \
-it $IMAGE bash#!/bin/sh
export VLLM_USE_V1=1
export VLLM_VERSION=0.19.1
#替换模型路径
export MODEL_PATH={your_path}/Ling-2.6-flash
nohup vllm serve $MODEL_PATH \
--port 8000 \
--served-model-name auto \
--tensor-parallel-size 4 \
--max-num-seqs 32 \
--max-num-batched-tokens 8192 \
--max-model-len 32768 \
--block-size 128 \
--gpu-memory-utilization 0.85 \
--async-scheduling \
--trust-remote-code \
--model-loader-extra-config '{"enable_multithread_load":true,"num_threads":8}' \
--compilation_config '{"cudagraph_mode": "FULL_DECODE_ONLY"}' > vllm.log 2>&1 & 看到服务监听 8000 且日志无报错后,另开终端(或宿主机再 docker exec)做下一步。
在能访问该节点 8000 端口的机器上执行:
curl http://0.0.0.0:8000/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "auto",
"messages": [ {"role":"user","content":"who are you"}],
"max_tokens": 100,
"temperature": 0
}'若返回 JSON 且含生成文本,即表示链路打通。