☰
如何在两台AMD设备上跑DeepSeek V4 Flash:Lucebox异构部署完整指南
2026/10/1 7:56:41 网站建设 项目流程

如何在两台AMD设备上跑DeepSeek V4 Flash:Lucebox异构部署完整指南

【免费下载链接】luceboxLLM speculative inference server for heterogeneous hardware & consumer GPUs项目地址: https://gitcode.com/gh_mirrors/lu/lucebox

Lucebox 是一个专为异构硬件与消费级 GPU 打造的 LLM 投机推理服务器(CUDA/HIP 混合后端)。本指南手把手教你用两台 AMD 设备(如 RX 7900 XT + Strix Halo)部署 DeepSeek V4 Flash 大模型,并附上 CUDA 3090 + Strix Halo 混合后端的完整配置方法,让你在家用显卡上跑出接近 48 tok/s 的解码速度。

为什么选 Lucebox 做 DeepSeek V4 Flash 异构部署

DeepSeek V4 Flash 是一个 43 层的 MoE 模型:每层含 256 个路由专家(top-6 激活)+ 1 个共享专家,并内置 KV 压缩器与多层级残差控制器(HC)。这么大的模型想塞进"两张非顶级 AMD 卡",靠的不是把模型切碎轮流跑,而是路由级专家并行(route-level expert parallelism):

  • 主卡(如 RX 7900 XT):负责注意力、KV 缓存、采样器和"热点专家";
  • 副卡(如 Strix Halo 集成显卡):承载其余的冷门专家 + DSpark 推测解码草稿器;
  • 每一步 MoE 层:两块 GPU 各自提交专家计算,再在片上合并结果,全程在同一个进程内完成,无需起第二个服务进程。

实测成绩(RX 7900 XT + Ryzen AI Max+ 395 双 AMD 配置):

指标实测
解码吞吐45.0 – 47.7 tok/s
128K 长文本 prefill111.2 tok/s

💡 想深入了解模型结构与执行路径,可阅读 server/docs/DS4.md,那里有逐层的 forward pass 说明。

硬件选型:哪两台 AMD 设备最合适

项目已验证的双卡组合(完整清单见 server/docs/RECOMMENDED_SETUPS.md):

组合说明
RX 7900 XT(gfx1100)+ Strix Halo(gfx1151)20 GiB 独显 + 128 GiB 统一内存,本指南的主角
R9700(gfx1201)+ Strix Halo(gfx1151)32 GB 独显 + Strix Halo,实测 86 tok/s 解码
RTX 3090(CUDA)+ Strix Halo(HIP)跨厂商混合后端,下文单独介绍

选型心法:Strix Halo 的 128 GiB 统一内存负责"装得下",独显负责"算得快"。主卡必须能放下 dense 权重 + KV 缓存 + 热点专家预算(默认约 10.2 GiB)。

一键部署:RX 7900 XT + Strix Halo 双 ROCm 完整步骤

第一步:交叉编译双架构 HIP 二进制

两块卡架构不同(gfx1100 与 gfx1151),需要一个二进制同时覆盖两种指令集,并开启仿射 ROCmFP2 支持:

cmake -S server -B server/build-hip-dual \ -DLUCE_GPU_BACKEND=hip \ -DLUCE_HIP_ARCHITECTURES='gfx1100;gfx1151' \ -DLUCE_ROCMFP2_AFFINE=ON \ -DCMAKE_BUILD_TYPE=Release cmake --build server/build-hip-dual -j

第二步:校准专家路由分布(关键!)

专家放在哪块卡,取决于你的真实流量会路由到哪些专家。官方做法是先用代表性请求跑一遍,把路由统计导出为 CSV,再喂给线上服务:

# 1) 收集阶段:跑代表性请求 LUCE_DS4_ROUTING_STATS_OUT=/tmp/ds4-routing.csv \ server/scripts/serve_ds4_dual_rocm_128k.sh \ /path/to/target.gguf /path/to/dspark.gguf # 2) 服务阶段:用同一份 CSV 校准放置 LUCE_DS4_HOTNESS_CSV=/tmp/ds4-routing.csv \ server/scripts/serve_ds4_dual_rocm_128k.sh \ /path/to/target.gguf /path/to/dspark.gguf

启动前先确认设备编号:luce_server --list-devices会打印每张卡的backend:N索引。脚本默认独显为hip:0、Strix Halo 为hip:1,反过来的话用DS4_MAIN_DEVICE/DS4_PEER_DEVICE环境变量覆盖。

第三步:理解脚本替你做了什么

serve_ds4_dual_rocm_128k.sh 已内置一整套经过验证的默认值,无需手工调 30 多个环境变量:

  • 135,168 token 上下文(128 KiB 提示 + 4 KiB 生成余量)
  • 10,200 MiB 独显专家预算(DS4_EXPERT_BUDGET_MB可调)
  • --ds4-prefill sparse批量稀疏 prefill + top-k 6 全专家(保真度优先)
  • DSpark 推测解码宽度 4、fused verify
  • 服务端口 8016,--peer-access打开卡间直连

所有设备、预算、上下文、端口等设置都可以通过脚本顶部的环境变量覆盖。

如果不想本地编译,官方也提供 Docker 镜像(AMD 用:rocm标签),模型放进server/models/即可直接docker run,适合快速体验。

进阶:CUDA/HIP 混合后端(3090 + Strix Halo 同进程部署)

如果你手上是一张 NVIDIA 3090 加一台 Strix Halo 主机,Lucebox 的混合厂商构建可以两者放进同一个进程:CUDA 与 HIP 的设备索引各自独立命名空间,cuda:0和hip:0是合法组合,跨厂商激活值经主机内存中转。

编译(注意-DLUCE_ENABLE_MIXED_CUDA_HIP=ON):

cmake -S server -B server/build-cuda-hip \ -DLUCE_GPU_BACKEND=hip \ -DLUCE_ENABLE_MIXED_CUDA_HIP=ON \ -DLUCE_CUDA_ARCHITECTURES=86 \ -DLUCE_HIP_ARCHITECTURES=gfx1151 \ -DCMAKE_BUILD_TYPE=Release cmake --build server/build-cuda-hip -j

启动时把 dense 工作放在 HIP 侧、专家并行放在 CUDA 侧,草稿器通过环境变量定位到 CUDA 卡:

export LUCE_EXPERT_BUDGET_MB=85000 # 从启动日志的显存报告调优 export LUCE_DS4_DRAFT_BACKEND=cuda export LUCE_DS4_DRAFT_GPU=0 ./server/build-cuda-hip/luce_server /path/to/deepseek4-target.gguf \ --target-device hip:0 \ --expert-device cuda:0 \ --draft /path/to/dspark-draft.gguf \ --ds4-prefill sparse

验证该路径的回归测试是ctest -R mixed_cuda_hip;更多边界说明见 server/docs/MIXED_BACKEND.md。

5 个最常见的坑与排查清单

  1. 解码慢得像自回归?DSpark 验证器是贪心专用的:temperature > 0、重复惩罚等都会静默回退到普通 AR 解码。请求里显式带上"temperature": 0.0。日志出现DSpark spec loaded but this request decodes AR就是在点名原因(详见 DS4.md 的 Silent AR fallback 一节)。
  2. 设备编号对不上:永远用luce_server --list-devices确认,别猜。
  3. 输出要逐字节精确?--ds4-prefill sparse是显式近似策略;对精确性有硬要求的场景改用--ds4-prefill exact并重新测速。
  4. 别乱降--ds4-expert-top-k:自适应(qtype-105/106)专家工件在 top-4 下精确复制保真度会从 95% 掉到 60%,保持模型默认的 6。
  5. 测速前先安静下来:Strix Halo 是统一内存带宽瓶颈,同机器上跑编译会把 tok/s 从 18 打到 3.8,容易被误判为模型回归。

最终自检清单

  • --list-devices确认独显为主设备
  • 启动日志出现DSpark spec-decode ENABLED
  • 请求带"temperature": 0且日志出现[ds4-spec]而非decode tokens=N steps=N-1
  • 用 server/scripts/bench_ds4_decode.py 跑官方确定性基准,确认输出字节一致

延伸阅读

资料路径
DeepSeek V4 完整技术文档(环境变量的百科全书)server/docs/DS4.md
CUDA/HIP 混合后端放置指南server/docs/MIXED_BACKEND.md
推荐硬件配置矩阵server/docs/RECOMMENDED_SETUPS.md
双 ROCm 部署脚本server/scripts/serve_ds4_dual_rocm_128k.sh
解码基准工具server/scripts/bench_ds4_decode.py

两台 AMD 设备 + 一个进程 + 一条命令,DeepSeek V4 Flash 就能以接近数据卡的效率在你桌上跑起来——这正是 Lucebox 异构部署的意义所在。🚀

【免费下载链接】luceboxLLM speculative inference server for heterogeneous hardware & consumer GPUs项目地址: https://gitcode.com/gh_mirrors/lu/lucebox

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询