ARTICLE DETAIL

资讯详情

深耕编程入门与网站建设的一线实战洞察。

如何在昇腾平台上部署 Qwen3.5-397B-A17B 大模型

如何在昇腾平台上部署 Qwen3.5-397B-A17B 大模型 如何在昇腾平台上部署 Qwen3.5-397B-A17B 大模型【免费下载链接】Qwen3.5项目地址: https://ai.gitcode.com/hf_mirrors/vLLM_Ascend/Qwen3.5本教程基于 vllm-ascend 推理框架完成 Qwen3.5-397B-A17B 部署的完整路径从版本选型、最小单节点跑通到双节点横向扩展与上线前检查。目标读者是需要把这款 3970 亿参数 MoE 模型跑起来的工程师。适用场景与选型先给结论硬件为 Atlas A2/A3 系列、且业务涉及多模态或高并发长上下文推理时选这款模型精度基线评估用 BF16 权重在线生产服务用 W8A8 权重。MoEMixture of Experts混合专家架构指每个 token 只激活部分专家参数量大但单次推理开销低。决策项结论理由权重精度基线评估选 BF16无量化损失结果可作精度参照权重大、占显存高权重精度在线服务选 W8A8权重与激活均 8-bit 量化显存占用更低、吞吐更高官方已验证路径安装方式环境无定制需求选官方 Docker 镜像预装 vllm-ascend 与驱动配置启动最快安装方式需修改组件或固定 commit 选源码构建需 CANN 8.5.0并手动升级 vllm、vllm-ascend、transformers 三个包到匹配版本环境硬性条件开跑前先核对三项硬条件缺任何一项服务都会在启动阶段失败。CANN 是昇腾的计算与运行时软件栈驱动与它必须配套。条件要求不满足的后果CANN 版本8.5.0 及以上Docker 镜像已内置算子加载失败进程退出权重位置放在多节点共享目录如 /root/.cache每个节点可读从节点拉不到权重握手超时容器设备按 NPU 数量挂载 /dev/davinci0 至 /dev/davinci15另挂 davinci_manager 及驱动工具目录部分 NPU 不可见并行度报错最小可跑配置结论用 W8A8 权重在一台 Atlas 800 A316 卡上以 dp1/tp16 启动这是官方验证过的单节点形态。低延迟场景不建议开专家并行。镜像加载与容器启动共 4 行docker load -i Vllm-ascend-Qwen3_5-A3-Ubuntu-v0.tar export IMAGEvllm-ascend:qwen3_5-v0-a3 NAMEvllm-ascend docker run --rm --name $NAME --nethost --shm-size100g \ --device /dev/davinci0 --device /dev/davinci1 --device /dev/davinci_manager \ -v /usr/local/Ascend/driver/lib64/:/usr/local/Ascend/driver/lib64/ \ -v /root/.cache:/root/.cache -it $IMAGE bash单节点启动命令export PYTORCH_NPU_ALLOC_CONFexpandable_segments:True vllm serve /root/.cache/modelscope/hub/models/vllm-ascend/Qwen3.5-397B-A17B-w8a8/ \ --served-model-name qwen3.5 --host 0.0.0.0 --port 8010 \ --tensor-parallel-size 16 --max-model-len 5000 --max-num-batched-tokens 16384 \ --max-num-seqs 128 --gpu-memory-utilization 0.94 --trust-remote-code \ --async-scheduling --quantization ascend各参数作用参数作用--tensor-parallel-size 16张量并行把权重切分到 16 张 NPU单机卡数即并行度--max-model-len 5000上下文上限KV cache 随长度线性增长先设低再按需上调--max-num-batched-tokens 16384每个调度步可批处理的 token 总量决定吞吐上限--max-num-seqs 128同时处理的请求序列数上限--gpu-memory-utilization 0.94NPU 显存可用比例留 6% 系统缓冲--async-scheduling异步调度请求批间不阻塞大模型并发下效果明显--quantization ascend走昇腾侧 W8A8 量化算子路径--trust-remote-code允许执行模型目录内自带的推理代码启动完成后发一条请求验证curl http://localhost:8010/v1/completions -H Content-Type: application/json \ -d {prompt: The future of AI is, max_tokens: 100, temperature: 0}横向扩展从 1 台到 2 台结论单机并发或显存不够时扩到 2 台 Atlas 800 A2每台 8 路张量并行tp8 2 路数据并行dp2即节点间各算各的请求再汇总。节点 0 对外提供服务节点 1 只做计算。环境变量说明变量用途HCCL_IF_IPHCCL 集合通信使用的本机 IP是跨节点通信入口GLOO_SOCKET_IFNAME / TP_SOCKET_IFNAME / HCCL_SOCKET_IFNAME把张量并行 RPC、数据并行 RPC 和 HCCL 固定到指定网卡防止选错接口PYTORCH_NPU_ALLOC_CONFexpandable_segments:True显存分配器用可扩展段缓解碎片HCCL_BUFFSIZE1024HCCL 通信缓冲大小单位 MBLD_PRELOAD…libjemalloc.so.2用 jemalloc 接管内存分配降低碎片率双节点差异对照项节点 0主节点 1从角色接收请求、返回结果仅计算headless 模式额外参数无--headless --data-parallel-start-rank 1--data-parallel-address本机 IP必须填节点 0 的 IP环境变量上表全部上表全部节点 0 启动命令节点 1 同命令仅多两个参数export HCCL_IF_IP$local_ip GLOO_SOCKET_IFNAME$nic_name \ TP_SOCKET_IFNAME$nic_name HCCL_SOCKET_IFNAME$nic_name vllm serve /root/.cache/…/Qwen3.5-397B-A17B-w8a8/ \ --served-model-name qwen3.5 --host 0.0.0.0 --port 8010 \ --data-parallel-address $node0_ip --data-parallel-rpc-port 13389 \ --data-parallel-size 2 --tensor-parallel-size 8 --max-model-len 5000 \ --gpu-memory-utilization 0.94 --trust-remote-code --async-scheduling \ --quantization ascend稳定性工程结论多节点推理服务的抖动主要来自三处按显存碎片、节点间时延、NPU 利用率的顺序排查。显存碎片expandable_segments 与 jemalloc 是配套手段二者都配长跑才稳。节点间时延用 ping 测业务网卡 RTT目标小于 1 ms条件允许时上 RDMA 网络并按 HCCL 文档配置对应通信参数。NPU 利用率用 npu-smi 确认 16 卡全部在负载且利用率均衡单卡显著偏低说明并行切分或绑定出了问题。常见故障排查顺序现象依次检查连接失败或启动挂起网卡选择三个 IFNAME→ 两节点 IP 是否一致 → 防火墙与桥接端口放行显存不足OOM下调 --max-model-len → 下调 --max-num-seqs → 最后动 --gpu-memory-utilization吞吐下降npu-smi 温度与频率 → 是否某卡空转 → 节点间 RTT 是否恶化生产化要点结论推理端口只暴露给内网其余安全与可用性动作前置到反向代理层。访问控制防火墙按来源 IP 白名单放行 8010 端口服务端开启 API key 认证。加密在 Nginx 或 SLB 做 TLS 终结后端仍走明文 HTTP。负载均衡LB 指向节点 0 的服务端口多副本部署时 LB 挂多组实例健康检查打 /health 或 completions 探针。监控告警NPU 利用率、显存占用、P99 时延、错误率四项接告警。按并发量估容量规模配置参考并发小单节点 A3W8A810–20中2–4 节点50–100大8 节点或多副本 LB200上线前检查清单CANN、驱动、镜像版本与本文矩阵一致权重在共享目录所有节点可读到完整文件单节点冒烟测试通过首条请求正常返回多节点 HCCL 握手成功启动日志无 hang目标并发压测达标P99 时延符合业务要求持续 30 分钟以上运行未出现 OOM 或重启npu-smi 显示全部卡有负载无过热单卡防火墙白名单与 API key 已启用TLS、访问日志、监控告警已接入上一版镜像与启动命令已存档可回滚【免费下载链接】Qwen3.5项目地址: https://ai.gitcode.com/hf_mirrors/vLLM_Ascend/Qwen3.5创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表