来发一个dgx spark部署大模型的经验

2026-04-11 10:551阅读0评论SEO基础
  • 内容介绍
  • 文章标签
  • 相关推荐
问题描述:

最近公司要做一个本地部署大模型的项目,配了dgx spark,用了一周的时间去尝试了各种模型,踩了各种坑,现在给大家汇报DGX Spark 部署 Qwen3.5 / NVFP4 大模型实战记录

这篇文档记录的是我在 NVIDIA DGX Spark(GB10,128GB unified memory) 上部署 Qwen3.5 系列模型,尤其是 NVFP4 量化模型 的完整踩坑过程、结论和推荐方案。

我最想部署的模型就是qwen3.5-122b-a10b,总参数量够大,激发参数够小,模型最强,fp4量化以后正好能在spark上跑起来

用了一周的时间去尝试了各种模型,踩了各种坑,现在给大家汇报:

  • 哪些组合我真的跑起来了

  • 哪些组合虽然部署成功了但实际上会崩

  • 哪些镜像/框架最完美

  • 哪些可以跑起来

  • 哪些方案在 Spark 上跑不起来

我实际用过的镜像主要有:

  • vllm-node:latest

  • vllm-spark:dev210-final

  • vllm/vllm-openai:cu130-nightly

  • vllm/vllm-openai:v0.17.1-cu130

  • lmsysorg/sglang:dev-cu13

  • lmsysorg/sglang:spark

  • scitrera/dgx-spark-sglang:0.5.9-t5

  • avarok/dgx-vllm-nvfp4-kernel:latest

  • avarok/atlas-alpha2

2. 省流版

| 部署的模型 | 最终推荐 |

| 官方 Qwen3.5 / Qwen3 全量、FP8、GPTQ / AWQ | vllm-node:latest |

| SGLang 部署 | lmsysorg/sglang:dev-cu13 |

| 122B NVFP4 完整服务 | spark-vllm-122b 对应的 vllm-spark:dev210-final |

| NVFP4 纯文本高速服务 | avarok/atlas-alpha2 |

2.1 最推荐的模型

在 DGX Spark 上,当前真正“稳定跑起来、支持视觉、支持 reasoning 分离、支持工具调用、支持长上下文”的 NVFP4 方案,我最终跑通的是:

github.com

GitHub - jilycn/spark-vllm-122b: vLLM Qwen3.5-122B NVFP4 on DGX Spark (SM121) —...

vLLM Qwen3.5-122B NVFP4 on DGX Spark (SM121) — full Docker build with 15 patches

这个项目非常有用,对dgx spark跑qwen3.5-122b-a10b做了patch,提供了最好的支持

用**txn545/Qwen3.5-122B-A10B-NVFP4 + spark-vllm-122b**这套是我最终最认可、也最有分享价值的方案。


3. 我试过的主要模型

3.1 Qwen3.5 122B / NVFP4

  • txn545/Qwen3.5-122B-A10B-NVFP4

  • Sehyo/Qwen3.5-122B-A10B-NVFP4

  • RedHatAI/Qwen3.5-122B-A10B-NVFP4

3.2 Qwen3.5 27B / 35B

  • Qwen/Qwen3.5-27B

  • Qwen/Qwen3.5-27B-FP8

  • Qwen/Qwen3.5-27B-GPTQ-Int4

  • Qwen/Qwen3.5-35B-A3B

  • Qwen/Qwen3.5-35B-A3B-FP8

3.3 Qwen3-VL

  • Qwen/Qwen3-VL-32B-Thinking

  • Qwen/Qwen3-VL-32B-Thinking-FP8

  • Qwen/Qwen3-VL-32B-Thinking-GPTQ-Int4

3.4 其他 NVFP4 实验模型

  • txn545/Qwen3.5-27B-NVFP4

  • txn545/Qwen3.5-35B-A3B-NVFP4

  • mconcat/Qwen3.5-27B-Claude-4.6-Opus-Reasoning-Distilled-NVFP4

  • osoleve/Qwen3.5-27B-Text-NVFP4-MTP


4. 最大的困扰:nvfp4对spark兼容性不佳

网上很多人提到了做 DGX Spark 上,nvfp4兼容性不佳:

  • 内核不兼容

  • illegal memory access

  • DeepGEMM / CUDA graph 报错

  • tokenizer 类不兼容

  • rope config 不兼容

  • 启动能起来,但一请求就炸

Spark 不是普通显卡环境,对通用nvfp4不兼容


5. 我踩过的主要坑

5.1 通用 vLLM / SGLang 镜像,不等于 Spark 能稳跑

我最开始试过很多“看起来最标准”的方案:

  • vllm/vllm-openai:cu130-nightly

  • vllm/vllm-openai:v0.17.1-cu130

  • lmsysorg/sglang:dev-cu13

  • lmsysorg/sglang:spark

  • scitrera/dgx-spark-sglang:0.5.9-t5

结论:

  • 模型能加载,推理时炸

  • attention backend 不对

  • CUDA graph / DeepGEMM 失败

  • tokenizer / config parser 不兼容

  • 启动没问题,但多模态不工作

5.2 txn545 + SGLang 不是我最终能稳定用的路线

txn545/Qwen3.5-122B-A10B-NVFP4 的模型卡偏向 SGLang / modelopt_fp4,理论上很合理。

我实际试下来:

  • 通过 lmsysorg/sglang:dev-cu13

  • --attention-backend triton

  • 确实能把服务起起来

但问题是:

  • 真正发请求后,还是会触发底层 CUDA 非法内存访问

5.3 RedHatAI/Qwen3.5-122B-A10B-NVFP4 卡在 tokenizer 兼容

它模型卡写的是:

  • llm-compressor

  • vLLM main 兼容并测试过

但我在 Spark 上实际遇到的是:

  • Tokenizer class TokenizersBackend does not exist

所以我最后没有继续把它当主线。

5.4 spark-vllm-122b 不是通用 NVFP4 镜像,但对qwen3.5-122b-a10b-nvfp4做了完整适配

我后来找到并跑通了:

github.com

GitHub - jilycn/spark-vllm-122b: vLLM Qwen3.5-122B NVFP4 on DGX Spark (SM121) —...

vLLM Qwen3.5-122B NVFP4 on DGX Spark (SM121) — full Docker build with 15 patches

它确实很强,但它强在:

  • 针对 Qwen3.5-122B-A10B-NVFP4 做过一整套 patch

但我后面拿它直接套 27B35B 某些 NVFP4 模型时,依然会遇到:

  • rope parser 不兼容

  • config 不兼容

所以这套要明确定位:

122B 专用主力


6.2 我最终用这套跑通了什么

我最终验证这套做到了:

  • 122B NVFP4 启动成功

  • 视觉可用

  • reasoning 分离正常

  • tool calling 正常

  • 多请求稳定

  • 长上下文正常

他是一套配套的patch适配122b的启动方式


7. vllm-node:latest:我最后的官方模型主力

我自己还在网上找到了一个 Spark 优化版vllm vllm-node:latest

github.com

GitHub - eugr/spark-vllm-docker: Docker configuration for running VLLM on dual DGX...

Docker configuration for running VLLM on dual DGX Sparks

这套对我后来跑官方模型很重要,项目非常好用

7.1 我给它的定位

  • 官方 Qwen3.5 全量

  • 官方 Qwen3.5 FP8

  • 官方 Qwen3.5 GPTQ-Int4

  • 官方 Qwen3-VL-32B-Thinking 系列

7.2 它的优点

  • 明显更贴 Spark / GB10

  • 跑官方模型的成功率比我前面乱试通用镜像高很多

7.3 它的缺点

  • 这不是一个公开可复现的标准镜像名,要本地 build 的结果

  • 后续更新要自己 git pull + rebuild

7.4 我的结论

如果在spark上跑官方模型,那我会优先推荐:Spark 优化版 vLLM


8. lmsysorg/sglang:dev-cu13:SGLang 的主力实验线

之前试过lmsysorg/sglang:spark他对 Qwen3.5 这些新模型支持太久了

8.2 dev-cu13直接是主线,对spark兼容性很好,对 Qwen3.5 新模型兼容也很好

9. atlas-alpha2:非常快的nvfp4特化版,但不是我的主视觉服务

这是另一个很有价值的发现。avarok/atlas-alpha2 能做到同样是 122B NVFP4,单请求速度居然可以到40t。

9.1 它的优点

  • 启动快

  • 单请求文本速度明显快

  • NVFP4 纯文本体验很强

  • MTP 路线集成得比较激进

9.2 它的缺点

  • 我这边实测里,Sehyo 122B 跑起来更像 文本专用

  • 视觉不可用,而且不支持思考

  • KV cache 明显比 spark-vllm-122b

  • 更偏短文本/高吞吐/文本加速,而不是“全功能兼容”

9.3 我的最终定位

我最后把它定位成:小龙虾专用文本服务模型

10. 122B NVFP4 两条线,最后该怎么选,这是我最终最实用的经验。

10.1 如果你要完整服务,可以选:spark-vllm-122b

10.2 如果你要纯文本速度选**atlas-alpha2** docker hub里面可以直接下

11. 关于 MTP

tmd直接开

12. 关于思考模板和工具调用的参数

12.1 vLLM

  • 思考分离:

  • --reasoning-parser qwen3

  • 工具调用:

  • --reasoning-parser qwen3

  • --enable-auto-tool-choice

  • --tool-call-parser qwen3_coder

12.2 SGLang

  • 思考分离:

  • --reasoning-parser qwen3

  • 工具调用:

  • --reasoning-parser qwen3

  • --tool-call-parser qwen3_coder

13. 最后总结,我的搭配

13.1 主视觉 / 主服务是**spark-vllm-122b**,负责:

  • 视觉

  • 复杂 reasoning

  • 工具调用

  • 长上下文

  • 正式 API 服务

13.2 官方模型主力**vllm-node:latest**,负责:

  • 官方 Qwen3.5-27B

  • 官方 Qwen3.5-35B-A3B

  • 官方 FP8 / GPTQ / VL 模型

13.3 SGLang 实验线**lmsysorg/sglang:dev-cu13**,负责:

  • 新模型测试

  • SGLang 路线对照实验

13.4 NVFP4 文本高速,用**avarok/atlas-alpha2**,负责:

  • 纯文本高速服务

  • NVFP4 文本路线


新手第一篇文章,结合和ai的经验,最后也是让spark自己产出了这个文章,多多指教
后续在话题下面更新在spark上配122b开发agent的经验

网友解答:
--【壹】--:

实际使用效果如何,你这个分享很有价值,帮到我了解了一些信息,感谢。


--【贰】--:

这个效果可以啊。值的试试


--【叁】--:

支持,最近有可能帮别人在dgx spark部署一套大模型,先看看。谢!


--【肆】--:

122b和27b哪个好用啊 请教下大佬


--【伍】--:

可以可以,那到时候一起交流,看看什么模型最好


--【陆】--:

支持了!
想请教下佬 有尝试过直接在Spark的环境下不用docker跑vLLM之类的嘛


--【柒】--:

122b 单请求20,4个并发60,10个并发在100token/s左右吧


--【捌】--:

应该也是直接可以的,因为我想测不同方式所以在docker下面


--【玖】--:

佬分配了多大显存


--【拾】--:

直接设置的0.9


--【拾壹】--:

支持一下


--【拾贰】--:

支持支持


--【拾叁】--:

在这个小机器上绝对是122b,27b的输出太慢了


--【拾肆】--:

真详细啊,哈哈


--【拾伍】--:

一起进步


--【拾陆】--: BobbyZZY:

支持一下

支持一下


--【拾柒】--:

感谢分享


--【拾捌】--:

支持一下


--【拾玖】--:

支持一下