开发者Anemll公开了DeepSeek DSpark在M5 Max上的实现结果。对比常规解码,DS4 IQ2_Q2版本的推理速度提升了5tps(每秒生成令牌数,数值越高AI生成内容的速度越快),批量注意力的主要瓶颈来自验证器,但目前的接受率表现较好。相关代码目前处于开发中,已上传至GitHub的ds4-ssd仓库dspark-attn分支,模型采用原始FP8/FP4格式,运行需要MPP 4.1,建议使用macOS 27系统,边车版本的运行速度比GUFF模式更快。
ds4-ssd是什么
ds4-ssd是antirez开发的DwarfStar 4(ds4)DeepSeek V4 Flash推理引擎的alpha分支,保留了DS4轻量化、自包含的运行时,专门为Apple Silicon设备增加了SSD流式路由MoE(混合专家架构,大模型主流架构之一,推理时仅激活部分参数)边车路径,解决大模型完全加载到内存不现实的问题。
核心功能包括:
-
SSD流式加载:稠密张量存在普通GGUF(当前主流的大模型量化存储格式,体积小、加载速度快)文件,路由专家存在边车目录,通过槽位银行缓存分页加载。高内存设备仍可使用全GGUF常驻模式。针对Apple Silicon做了专属优化,包括M5系列硬件Metal使用的苹果神经加速器支持的matmul2d路径NAX,以及实测ANE性能更优场景下的苹果神经引擎路由MLP预填充路径。 -
精简分支范围:该分支比研究分支更精简,保留了运行时、Metal着色器、GGUF工具、正确性测试、边车测试和核心文档,移除了性能分析脚本、交接笔记、会话导出和仅用于基准测试的ANE探针。
构建方法
macOS下直接运行make命令即可,会生成5个可执行文件:
-
./ds4:CLI运行器 -
./ds4-server:兼容OpenAI/Anthropic接口的本地服务器 -
./ds4-bench:吞吐量测试工具 -
./ds4-eval:评估辅助工具 -
./ds4-agent:本地编码代理前端
metal目录是必须的构建输入,不能删除。CUDA源码继承自上游DS4,但alpha版本的验证重点是Apple Silicon的SSD流式功能。
运行模式
1. SSD边车模式(适合低内存设备)
这是最适合普通苹果用户的模式,不需要大内存就能运行DeepSeek V4:
-
下载预构建的边车包:运行 ./download_model.sh sidecar,也可以选择下载约156GB的原生MXFP4包。 -
设置环境变量: export DS4_SIDECAR_DIR="$PWD/models/dsv4-iq2xxs-expert-major",路径指向包含manifest.json和dense/model-dense.gguf的边车包根目录。 -
直接运行命令启动:
./ds4 \
-m "$DS4_SIDECAR_DIR" \
--moe-slot-bank 8 \
--ctx 8192 \
-p "Hello"
启动时看到applied sidecar tuning profile、Flash-MoE sidecar loaded、Flash-MoE slot banks allocated这几行日志,就说明SSD流式已激活。
建议初始设置--moe-slot-bank 8,确认有内存余量后再调高,数值越大,占用内存越多,SSD读取次数越少。也可以用--ssd-cache参数直接设置缓存大小,auto模式会自动根据剩余内存调整。
2. 常驻边车模式(适合高内存Apple Silicon设备)
给ds4命令加--resident参数,即可把边车包完全加载到内存,避免解码时的SSD读取延迟。对应的本地服务器也支持该模式,启动后通过GET /v1/models接口可以看到模型名为deepseek-v4-flash。
3. DSpark模式(提速专用)
DSpark是DeepSeek推出的推测解码技术,能显著提升推理速度:
-
下载预导出的Flash DSpark草稿包: DS4_DSPARK_DRAFT_DIR="$DS4_DSPARK_DRAFT" ./download_model.sh dspark -
先跑一次常驻边车模式的基线测试,再加上 --draft dspark等参数运行DSpark模式:
DS4_AGENT_ALLOW_BACKEND_STATS=1 DS4_DSPARK_PERF=1 ./ds4 \
-m "$DS4_SIDECAR_DIR" \
--resident \
--draft dspark \
--draft-path "$DS4_DSPARK_DRAFT" \
--draft-verify 4 \
--draft-scheduler static \
--temp 0 \
--nothink \
-n 1000 \
-c 4096 \
-p "Make a game of Space Invader in Pygame"
目前DSpark仅支持贪婪解码,需要设置--temp 0,非零温度会禁用草稿验证器。测试时建议设置--draft-verify 4,避免最慢的第五个草稿位置。实测在M5 Max上,DS4 IQ2_Q2版本比常规解码提升5tps。
4. 常驻GGUF模式
高内存设备可以下载全量GGUF模型直接运行,比如Huihui提供的IQ2_XXS量化版可以在96GB的M3 Ultra上运行,但内存余量紧张,需要关闭其他应用。
项目归属
ds4-ssd基于antirez的DwarfStar 4开发,同时参考了llama.cpp、GGML的量化和内核工作,SSD流式方向得益于苹果的《LLM in a flash》论文和danveloper的flash-moe项目,苹果神经引擎路径参考了Liu Liu的GPU int8反量化工作和maderix公开的私有ANE API文档,二次分发需要保留仓库LICENSE和相关作者的归属信息。
项目地址:https://github.com/Anemll/ds4-ssd/tree/dspark-attn
关注公众号回复“进群”入群讨论

