单台 Mac Studio M5U 512G 可以完整运行 dsf v4.1 ,而且能跑权重与官方完全一致的版本。最佳组合是:oMLX 0.7.3 + oQ4e-ngram-mtp(常驻约 288 GiB ,Engram 表放 SSD 按需读取),打开 DSpark 投机解码、CED prefill 和前缀缓存。
| 项目 | 选择 | 理由 |
|---|---|---|
| 推理引擎 | oMLX 0.7.3 或更新(固定版本) | 完整支持 V4.1 的 Engram 、CSA2 、DSpark ; prefill 已用上 M5 的 GPU 张量单元 |
| 模型 | mlx-community/DeepSeek-V4.1-Flash-1017-oQ4e-ngram-mtp | 专家、主干和 Engram 都保持官方原生精度,没有额外量化;包含 DSpark 权重 |
| Engram 表 | 放内置 SSD ,按需读取 | 每个 token 每张表只读一行,几乎不影响 decode ;省下约 189 GiB 内存 |
| 投机解码 | DSpark ,每轮草拟 5 个 token | 单机最大的提速手段 |
| Prefill | CED prefill + INT8 Activation Prefill | 1M 上下文时 prefill 时间是主要瓶颈 |
| 缓存 | 前缀缓存 + SSD 快照 | agent 多轮对话不用每次重算整段上下文 |
上下文按 1M token 规划。内存余量约 180 GiB ,完全够用;冷启动 prefill 约需 6–8 分钟,配置和用法见第 6 节。
预期性能如下。prefill 和并发数据来自 oMLX 0.7.3 在 M5 Ultra 上的实测(发布说明未注明量化版本);单路 decode 仍是推算值,拿到机器后用第 8 节的流程替换成实测值。
| 指标 | 数值 | 依据 |
|---|---|---|
| decode ,不开 DSpark | 约 55–60 tok/s (推算) | M5 Ultra 实测:3.0bpw 版本 67–72 tok/s ( mlx-serve ); 4-bit 每 token 多读约 20% 权重 |
| decode ,开 DSpark | 约 80–110 tok/s (推算,代码偏高) | 同一实测:3.0bpw 版本开 DSpark 96–126 tok/s |
| prefill ,128K | 2,390 tok/s (实测) | oMLX 0.7.3 ,开 Engram 预取 |
| prefill ,64K / 195K | 3,507 / 3,200 tok/s (实测) | oMLX 0.7.3 ,开 INT8 Activation Prefill |
| 冷启动 TTFT ,8K / 128K / 1M | 约 3 秒 / 45–55 秒 / 6–8 分钟 | 由上两行推算 |
| 12 个并发请求合计 decode | 125.7 tok/s (实测) | oMLX 0.7.3 |
| 峰值功耗 | 约 300 W | Apple 论文实测 |
模型特点与内存预算
oQ4e-ngram-mtp 共 476.8 GiB ,其中 Engram 表 188.8 GiB 留在 SSD 上按需读取,常驻内存约 288 GiB 。把 GPU 可用内存上限调到约 469 GiB 后,还剩约 180 GiB 给 KV cache 、prefill 缓冲、并发会话和 MLX 缓存。
| 组件 | 存储大小 | 位置 | 说明 |
|---|---|---|---|
| 语言主干 | 279.5 GiB | 内存 | 路由专家 MXFP4 ,注意力和稠密层 MXFP8 ,都是官方原生精度 |
| DSpark 头 | 7.5 GiB | 内存 | 投机解码要用 |
| 视觉编码器 | 0.9 GiB | 内存 | 图片输入要用 |
| Engram 表 | 188.8 GiB | 内置 SSD | 保持官方 FP8 ( E4M3 + 每 32 通道一个 E8M0 scale ),无损 |
| 合计 | 476.8 GiB | 常驻约 288 GiB | 下载大小 512 GB |
和部署方式直接相关的几个架构特点:
- MoE:552B 主干参数,每层 384 个路由专家激活 6 个,另有 1 个共享专家。decode 时每个 token 激活 16B ,速度主要受内存带宽限制。
- Causal Encoder-Decoder ( CED ):40 层分成 20 层 encoder 和 20 层 decoder 。decoder 的全局 KV 由 encoder 最后一层投影得到,所以 prefill 只需激活 8B 。这就是 CED prefill 优化的前提。
- CSA2 稀疏注意力:只有 4 层计算自己的 KV ,其余层共用。KV cache 只有 890 字节/token ,1M 上下文的全局 KV 也只有约 0.83 GiB 。上下文长度几乎不受内存限制,受的是 prefill 时间限制。
- Engram n-gram 记忆:第 1 层和第 14 层各有一张约 3.84 亿行 × 256 维的哈希表。每个 token 只查几行,可以放在 SSD 上按需读取。
- Hyper-Connections:残差流有 4 路副本,每个子层做 20 次 Sinkhorn 迭代。小算子很多,所以引擎有没有做算子融合对速度影响很大。
- DSpark:共 3 级,每级 128 个专家激活 3 个,读主模型第 37–39 层的输入,每轮草拟 5 个 token 。它和主模型绑在一起,必须在同一台机器上跑。