blazux/qwen3.8-Flash-DGX
recipe for running Qwen3.8-Flash-Next on a single DGX Spark
解决的问题
该项目使 Qwen3.8-Flash-Next 模型(约 176B 参数)能够在单台 NVIDIA DGX Spark / ASUS GX10 系统上部署。它特别解决了内存限制问题:当模型的 NVFP4 检查点(约 125 GiB)与必要的 KV 缓存结合时,会超出可用的 128 GB 统一内存池。同时,还修复了 vLLM 中与前缀缓存和 GB10 硬件上非确定性解码相关的关键缺陷。
工作原理
- 通过 NVMe mmap 加载权重:为节省内存,项目对 vLLM 进行了修改,将大型 n-gram 嵌入(PLE)表从 NVMe 通过
mmap提供,而非保留在 RAM 中,使常驻权重从约 125 GiB 降至约 75 GiB。 - 自定义补丁:对官方 vLLM 镜像应用了 12 个以上的补丁,修复了前缀缓存(Mamba 状态错误)、稀疏注意力中的非确定性 top-k 以及工具调用解析错误。
- 混合检查点:提供可选的混合布局(NVFP4 专家 + fp8 侧层),可将解码速度提升约 20%。
- 优化的部署:使用
flashCLI 工具管理 Docker 构建、权重下载(通过 Xet)和部署配置(如speed、context、default)。
适用人群
- 使用 NVIDIA DGX Spark 或 ASUS GX10 硬件,希望在单台机器上以高达 500k–1M 令牌的上下文运行大型 Qwen 模型的开发者和研究人员。
主要亮点
- 内存高效:将权重占用降至约 75 GiB,为大型 KV 缓存(约 680k 令牌)腾出空间。
- 高性能:在 GX10 上实现约 34 tok/s 的单流解码速度,预填充速度达约 2,500–2,800 tok/s。
- 确定性输出:包含自定义的确定性内核,确保一致的贪婪解码,且不牺牲预填充速度。
- 可靠的工具解析:实现防护机制,防止模型在代码块内文档化语法时意外触发工具调用。
- 简易部署:提供简化的
./flash命令,用于快速设置、健康检查和运行服务。
相关
- 项目
- 项目
- 项目
- 项目