Anton(Redis 作者)开源了 DwarfStar:一个小型原生推理引擎,专为 DeepSeek V4 Flash 和 PRO 优化,支持 Mac Metal、NVIDIA CUDA 和 ROCm 三端。
在 MacBook M5 Max 上跑 DeepSeek V4 Flash,不需要云 API——这就是 DwarfStar 的承诺。
这个项目解决什么问题?
DeepSeek V4 系列模型虽然强大,但在消费级硬件上运行需要大量工程投入。llama.cpp 虽然通用,但 DeepSeek V4 的 MoE 架构、KV 缓存和激进的量化方案有特殊需求——通用推理引擎无法充分利用这些特性。
DwarfStar 是一个故意狭隘的推理引擎:只为 DeepSeek V4 Flash/PRO 和 GLM 5.2 优化,不追求成为通用的 GGUF 加载器。模型加载、prompt 渲染、工具调用、KV 状态、HTTP 服务器和 coding agent 是一体化构建和测试的。
核心亮点
三端原生支持:Metal(Mac)、CUDA(NVIDIA)、ROCm(AMD Strix Halo),覆盖当前所有主流本地 AI 硬件。Anton 自己用的是 MacBook M5 Max,但这个项目从第一天就不是"Mac-only"。
激进的 MoE 量化:专为 DeepSeek V4 的 routed-expert 设计 2bit 非对称量化——只对路由专家量化到 IQ2_XXS,共享专家和投影层保持原精度。这种不对称设计在质量和体积间找到了最优平衡,使得 96GB 的 MacBook 也能运行 DeepSeek V4 Flash。
SSD 流式加载:内存不足时,利用本地高速 SSD 进行模型流式加载,让 96GB 以下的机器也能运行大模型。这是消费级硬件跑大模型的实用解法。
多机协作:两台 MacBook 通过 RDMA 实现张量并行,支持 4bit DeepSeek Flash 分布式推理;流水线并行可串联多台机器汇总显存运行更大模型。这不是实验室 Demo,是真实可用的分布式推理方案。
老旧 GPU 翻新:8×L40S(Ada Lovelace 架构)在 vLLM 上已不被支持,但 DwarfStar 的 micro-batching 解码让这台服务器跑出 120 t/s 聚合生成速度和 2000 t/s prefill。旧显卡突然有了新用途。
内置 coding agent:模型加载、prompt 渲染、工具调用、KV 状态、HTTP 服务器和 coding agent 是一体化构建的。不是一个推理库,是一个可以跑 coding agent 的完整服务。
开发透明:项目坦诚说明使用了 GPT 5.5/5.6 和 Claude Fable 辅助开发,同时明确依赖 llama.cpp/GGML 的开路工作。“如果你不喜欢 AI 开发的代码,这个软件不适合你”——这种坦诚在当前 AI 工程圈很罕见。
快速上手
# 下载模型(96/128GB RAM 机器,imatrix 调优的 q2 量化)./download_model.sh q2-imatrix# 或更高内存机器./download_model.sh q4-imatrix# 512GB 机器跑 PRO./download_model.sh pro-q2-imatrix支持 Metal、CUDA、ROCm 三种后端自动检测,编译即用。
技术细节
为什么不做通用 GGUF 加载器?
Anton 的选择有深意:DeepSeek V4 的 GGUF 包含了特定张量布局、量化混合和可选 MTP 状态,任意 GGUF 文件不会满足引擎的期望。与其做成"能跑所有 GGUF 但都不快"的通用引擎,不如做成"只为一个模型做到极致"的专用引擎。
2bit 不对称量化
2bit 量化通常被视为"不可用"的极限压缩。但 DwarfStar 的 2bit 只量化路由专家——这些专家是模型中最大的参数块,也是最容易量化的部分。共享专家、投影和路由逻辑保持原精度,保证了质量底线。
MXFP4 原生支持
项目保留了 DeepSeek 发布的 MXFP4 路由专家权重,不做重新量化。在 Blackwell CUDA 设备上使用原生 FP4 矩阵指令和 FP4 激活;其他 CUDA 设备使用 Q8 激活。这意味着新硬件不需要降级,旧硬件不会被排除。
我的评价
DwarfStar 不是又一个"通用 GGUF 推理引擎"——它走了一条不同路线:为一个具体模型做到极致,而不是为所有模型做到够用。
对 Mac 用户来说,这是目前运行 DeepSeek V4 最轻量的本地方案。相比 llama.cpp,DwarfStar 专门为 MoE 的量化和 KV 缓存做了针对性优化。对服务器场景,老旧 Ada 架构 GPU 终于有了利用价值。
不过项目坦诚标为 beta,API 仍在快速变化。Anton 自己也说了:"软件变化非常快。"如果你正在构建本地 DeepSeek 应用,值得持续关注,但不建议在生产环境依赖它。
横向对比
| 方案 | 通用性 | DeepSeek V4 优化 | 易用性 | 多 GPU | 适合谁 |
|---|---|---|---|---|---|
| llama.cpp | 极高 | 中等 | 极高 | 有限 | 所有人 |
| vLLM | 高 | 高 | 中等 | 支持 | 服务器场景 |
| DwarfStar | 低 | 极高 | 中等 | 支持 | DeepSeek 用户 |
| Ollama | 高 | 低 | 极高 | 低 | 快速实验 |
DwarfStar 在 DeepSeek V4 场景下是最优选择,但通用场景仍推荐 llama.cpp。它是一个"专用工具",不是"万能钥匙"。