当前位置: 首页 > news >正文

Qwen3-VL-235B-A22B-Instruct-w8a8-QuaRot 单机部署

本文介绍了在昇腾单机服务器上部署Qwen3-VL-235B-A22B-Instruct-w8a8-QuaRot模型

适配:Ascend 910B,单节点 8 卡 = TP=8 镜像:quay.io/ascend/vllm-ascend:v0.18.0rc1


一、模型信息

属性信息
模型 IDEco-Tech/Qwen3-VL-235B-A22B-Instruct-w8a8-QuaRot
量化格式w8a8 QuaRot(INT8 权重 + INT8 激活)
权重数量56 个 safetensors(~222GB)
权重路径/root/.cache/modelscope/hub/models/Eco-Tech/Qwen3-VL-235B-A22B-Instruct-w8a8-QuaRot/
模型名qwen-vl
max_model_len262144(256k)

二、拉起容器

2.1 安装 Docker(如未安装)

yum install -y docker systemctl start docker systemctl enable docker

2.2 创建软链接

ln -s /root/.cache/modelscope/hub/models/Eco-Tech/Qwen3-VL-235B-A22B-Instruct-w8a8-QuaRot \ /root/Qwen3-VL-235B-A22B-Instruct-w8a8-QuaRot

2.3 拉起容器

docker run -d \ --name qwen3-vl-deploy \ --network host \ --shm-size=1200g \ --privileged=true \ --device=/dev/davinci_manager \ --device=/dev/hisi_hdc \ --device=/dev/devmm_svm \ -v /usr/local/dcmi:/usr/local/dcmi \ -v /usr/local/Ascend/driver:/usr/local/Ascend/driver \ -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/Qwen3-VL-235B-A22B-Instruct-w8a8-QuaRot:/model \ -v /root/.cache:/root/.cache \ quay.io/ascend/vllm-ascend:v0.18.0rc1 \ bash -c 'sleep infinity'

必须挂载/usr/lib64/libstdc++.so.6。如果启动失败,加入:

-v /usr/lib64/libstdc++.so.6:/usr/lib64/libstdc++.so.6

三、启动 vLLM

3.1 先停其他容器(释放显存)

gpu-memory-utilization=0.94 需要几乎全部显存,必须停掉其他容器。

docker stop $(docker ps -q)

3.2 启动 qwen3-vl-deploy 容器

docker start qwen3-vl-deploy

3.3 启动 vLLM

docker exec -d qwen3-vl-deploy bash -c 'vllm serve /root/.cache/modelscope/hub/models/Eco-Tech/Qwen3-VL-235B-A22B-Instruct-w8a8-QuaRot/ \ --served-model-name qwen-vl \ --host 0.0.0.0 --port 8800 \ --data-parallel-size 1 \ --tensor-parallel-size 8 \ --max-model-len 131072 \ --max-num-batched-tokens 16384 \ --max-num-seqs 128 \ --gpu-memory-utilization 0.94 \ --compilation-config "{\"cudagraph_mode\": \"FULL_DECODE_ONLY\"}" \ --trust-remote-code \ --dtype bfloat16 \ --enable-auto-tool-choice \ --tool-call-parser hermes \ --async-scheduling \ --allowed-local-media-path / \ --quantization ascend \ --additional-config "{\"enable_cpu_binding\":true}"'

四、验证

等待约 3-5 分钟后(vLLM 加载模型需要时间),执行:

curl http://localhost:8800/v1/models

应返回 `qwen-vl`。

对话测试:

curl --location "http://localhost:8800/v1/chat/completions" \ --header "Content-Type: application/json" \ --data '{"model":"qwen-vl","messages":[{"role":"user","content":"hello"}],"max_tokens":50}'

五、访问服务

服务启动后,通过容器所在机器的 8800 端口访问:

http://{机器IP}:8800

API 端点:

- `GET /v1/models` — 查看可用模型
- `POST /v1/chat/completions` — 对话
- `POST /v1/completions` — 文本补全


六、重启恢复

6.1 启动容器

docker start qwen3-vl-deploy

6.2 重新启动 vLLM

先停其他容器,再启动 vLLM:

docker stop $(docker ps -q) docker exec -d qwen3-vl-deploy bash -c 'vllm serve /root/.cache/modelscope/hub/models/Eco-Tech/Qwen3-VL-235B-A22B-Instruct-w8a8-QuaRot/ \ --served-model-name qwen-vl \ --host 0.0.0.0 --port 8800 \ --data-parallel-size 1 \ --tensor-parallel-size 8 \ --max-model-len 36864 \ --max-num-batched-tokens 16384 \ --max-num-seqs 128 \ --gpu-memory-utilization 0.94 \ --compilation-config "{\"cudagraph_mode\": \"FULL_DECODE_ONLY\"}" \ --trust-remote-code \ --dtype bfloat16 \ --enable-auto-tool-choice \ --tool-call-parser hermes \ --async-scheduling \ --allowed-local-media-path / \ --quantization ascend \ --additional-config "{\"enable_cpu_binding\":true}"'

6.3 确认进程运行

docker exec qwen3-vl-deploy bash -c "ps -ef | grep 'vllm serve' | grep -v grep"

七、常见问题排查

7.1 查看启动日志

docker logs -f qwen3-vl-deploy

7.2 确认端口在监听

docker exec qwen3-vl-deploy bash -c "netstat -tlnp | grep 8800"

7.3 确认 NPU 进程

docker exec qwen3-vl-deploy bash -c "npu-smi info | grep 'Process id'"

应该看到 8 个进程(TP=8)。

7.4 常见错误

显存不足:

ValueError: Free memory on device (4.6/60.96 GiB) ... less than desired GPU memory utilization (0.94)

docker stop $(docker ps -q)停掉其他容器

tool-call-parser 错误:

KeyError: 'invalid tool call parser: qwen2' 或 'qwen3_coder'

→ Qwen3-VL 用hermes,不是 qwen3_coder(qwen3_coder 是编程模型专用)

PyTorch OpenMP 错误:

pool INTERNAL ASSERT FAILED at ParallelOpenMP.cpp

→ 挂载主机的 libstdc++.so.6:/usr/lib64/libstdc++.so.6

vLLM 启动后立即退出→ 检查显存是否足够(需停其他容器);检查日志确认具体报错

curl 失败但 vLLM 正在运行→ vLLM 初始化约需 3-5 分钟,期间端口不监听是正常现象,等待即可

http://www.jsqmd.com/news/949831/

相关文章:

  • 不用写代码!4天搞定5711张人像分割标注:Supervisely数据集转换保姆级教程
  • ControlNet-v1-1 FP16模型完全指南:如何轻松掌握AI绘画控制技术
  • 银泰百货卡回收转让规则与5种认可方式 - 淘淘收小程序
  • 2026年6月成都闲置黄金变现攻略,无套路交易,当面称重结算 - 开心测评
  • Axure RP中文界面快速汉化设置指南:告别英文困扰,3分钟完成专业本地化
  • 7步快速精通Bambu Studio:3D打印切片软件的完整指南
  • Linux命令:usermod
  • Playnite终极指南:一站式管理所有游戏平台的免费开源神器
  • 基于Arduino Leonardo的智能存钱罐:从传感器到LED的嵌入式实践
  • 入手空调,怎么买最划算?别先凑单,先确认房间和安装 - 新闻快传
  • 如何快速搭建Uncle小说阅读器:免费高效的桌面端小说阅读解决方案
  • 申论对策题万能公式:掌握这5个维度,轻松解决推对策难题
  • 如何用歌词滚动姬快速制作专业级LRC歌词文件?
  • C# EntityFramework笔记
  • 终极解决方案:3分钟在Windows上安装Dlib预编译包,告别复杂编译环境
  • 2026上海诚信花卉冷库厂家合规甄选推荐平台 - 品牌2026
  • Logisim-evolution终极指南:从零开始掌握数字电路设计与仿真
  • 利用OpenWrt与Debian套娃方案,将旧路由器改造为本地IP摄像头NVR
  • pinyin-data开源项目深度解析:汉字拼音数据的核心价值与实战应用
  • 2026广州除四害公司口碑排名榜,选对靠谱不吃亏 - 资讯速览
  • 2026 西安黄金回收怎么选?盘点正规商家,避开行业隐形套路 - 奢侈品回收测评
  • 绍兴市GEO公司哪家好|2026绍兴优质GEO服务商TOP3权威榜单发布 - 浙江稻盛和夫
  • 登高峰租赁|江浙沪高空作业平台租赁行业盘点、竞品对比与租赁选购避坑全指南 - 国麟测评
  • 单电机驱动六足机器人:3D打印与机械联动设计实践
  • 查询引擎深度优化:检索策略与重排序提升答案精准度
  • 从一次网络故障排查说起:我是如何通过分析PPTP的GRE报文,定位到那个诡异的隧道断开问题的
  • Cline+DeepSeek-V4:终端原生AI工作流的工程化实践
  • 2026年自贡GEO选哪家?这份保障攻略请收好
  • FanControl实战指南:3步解决华硕主板传感器识别难题的高效方案
  • 徐州黄金回收实测六家门店流程与价格全解析 - 黄金上门回收