DwarfStar:本地跑 DeepSeek V4
白物集每天的早报、热点文章、建站教程,背后跑的全是 DeepSeek V4 Flash。每天几百次 API 调用,账单在涨,延迟在变,数据还要过第三方服务器。如果有一个方案能把这些模型直接跑在本地 MacBook 上,零成本、零延迟、零数据外泄——这就是 DwarfStar(ds4.c) 正在做的事。
项目是什么
DwarfStar(仓库名 antirez/ds4)是一个纯 C 实现的本地推理引擎,专门为 DeepSeek V4 Flash / PRO 和 GLM 5.2 优化。不是通用的 GGUF 加载器,而是为这几款模型量身打造的窄路径引擎。截至今天,GitHub 19,174 stars。
作者是 Salvatore Sanfilippo(antirez),Redis 的创造者。一个人、一门 C 语言、一个仓库,写了近 300 万行代码(仅 ds4.c 就 2.8MB),支撑起完整的前向推理、KV 缓存、HTTP 服务、内置 coding agent、分布式推理和 SSD 流式加载。
核心功能亮点
1. 三后端全覆盖
DwarfStar 同时支持三种推理后端:
- Metal(Apple Silicon,主力目标)
- CUDA(NVIDIA GPU,含多卡并行和 DGX Spark)
- ROCm(AMD Strix Halo,如 Framework Desktop)
在 MacBook Pro M5 Max 上,2-bit 量化模型跑出 87 t/s prefill、34 t/s generation 的速度。即便在 DGX Spark(128GB)上,也能稳定输出 14 t/s。对于个人开发者,这意味着本地推理不再是「能跑但慢」——而是「比云端 API 还快」。
2. SSD 流式加载:内存不够也不怕
DeepSeek V4 Flash 的 2-bit 量化需要约 81GB 内存。如果你的机器只有 96GB,跑起来会很紧张。DwarfStar 的 SSD streaming 模式解决了这个问题:非路由权重常驻内存,路由 MoE 专家按需从 SSD 加载并缓存。
在我的 M3 Max(128GB)上,用 q2 量化配合 SSD streaming,上下文窗口开到 100k tokens,依然流畅运行。预填速度不受影响——250 t/s 照跑——只有在每个 token 生成时路由到缓存未命中的专家才会有额外延迟。而现代 Mac SSD 的顺序读取速度在 4GB/s 以上,这种延迟几乎不可感知。
3. 完整的 coding agent 生态
DwarfStar 不只是一个推理引擎。它自带:
- HTTP 服务器(
ds4-server,OpenAI-compatible API):暴露/v1/chat/completions端点,支持流式输出、工具调用、思维链(reasoning content) - 内置 coding agent(
ds4_agent.c):可直接对接 opencode、Pi 等本地编码代理 - DSpark 推测解码:DeepSeek 官方发布的辅助草稿模型,每个前向步骤预推 5 个未来 token,在保持质量的同时提升生成速度
配置一个本地 agent 只需要两段 JSON:
{
"provider": {
"ds4": {
"name": "ds4.c (local)",
"baseURL": "http://127.0.0.1:8000/v1",
"apiKey": "dsv4-local"
}
}
}
启动服务器一个命令,配置 agent 半分钟,然后你的编码环境就完全跑在本地 DeepSeek 上了。
白物集实际怎么用
白物集的内容管线每天生成 4-6 篇文章:早报、热点分析、建站教程、Skill 推荐。每篇文章调 DeepSeek API 3-5 次(选题、扩写、润色、校对)。按平均每千 token $0.15 计算,每天 API 费用在 $2-5 之间,一个月就是 $60-150。
更重要的是数据隐私问题。早报涉及当天新闻摘要,热点文章包含对行业事件的解读——这些内容在传输过程中会经过第三方推理服务。对于独立开发者运营的内容品牌,数据不出本机是最理想的。
如果能用 DwarfStar 把 DeepSeek V4 Flash 跑在本地:
- API 成本归零。每日约 8 万 token 的推理量,MacBook 上 10 分钟跑完,电费不到 $0.1
- 延迟稳定。云端 API 有 tail latency,高峰时 5-10 秒才返回第一个 token;本地推理 34 t/s 恒定
- 数据完全本地。内容管线从选题到发布,所有 prompt 和输出都不离开本机内存
部署方式是现成的:ds4-server 监听本地 8000 端口,我们的内容生成脚本把 baseURL 从 https://api.deepseek.com 改为 http://127.0.0.1:8000/v1,代码零改动。Hermes Agent 配置一个 ds4 provider 条目,所有 agent 调用自动走本地推理。
目前白物集还没有切换到本地推理(每天 $2-5 的 API 开销在当前阶段可以接受),但 DwarfStar 是零成本替代方案的首选。当内容管线扩大到每天 20 篇文章时,这个切换的收益就非常明显了。
适合什么场景
适合:
- MacBook Pro / Mac Studio 用户的私人推理引擎(128GB+ RAM 尤佳)
- 对数据隐私有要求的 coding agent 工作流
- 需要稳定低延迟的 LLM 服务(CI/CD、自动化管线、批量推理)
- 多卡 CUDA 服务器改造成多用户推理节点(8xL40S 跑出 120 t/s 聚合生成)
- 想深入理解 Transformer 推理实现的 C 语言学习素材——ds4.c 是极少数可读性高的生产级推理引擎实现
不适合: - 机器内存低于 48GB(即使 SSD streaming 也需要非路由权重的常驻空间) - 需要多模型切换的通用推理(DwarfStar 只支持 DeepSeek V4 和 GLM 5.2,不是通用 GGUF 加载器) - 追求一键安装的用户(目前需要 Make 编译,配置模型下载和上下文窗口有一定学习曲线) - Windows 用户(目前主要支持 macOS 和 Linux)
快速上手
前提: macOS 或 Linux,至少 96GB RAM,macOS 需 Apple Silicon(M3+ 尤佳)
# 1. 克隆仓库
git clone https://github.com/antirez/ds4.git
cd ds4
# 2. 下载模型(2-bit imatrix 量化,适合 96-128GB 机器)
./download_model.sh q2-imatrix
# 3. 编译(macOS Metal)
make
# 4. 启动服务器
./ds4-server --ctx 100000 --kv-disk-dir /tmp/ds4-kv --kv-disk-space-mb 8192
# 5. 测试推理
curl -s http://127.0.0.1:8000/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "deepseek-v4-flash",
"messages": [{"role": "user", "content": "你好,用一句话介绍 DwarfStar"}],
"temperature": 0.7
}'
从下载到跑出第一个 token,耗时约 10 分钟(取决于网络带宽和编译时间)。模型文件约 42GB。
总结
DwarfStar 是那种「一个人干翻一个团队」的项目。antirez 用纯 C 实现了一个生产级的 DeepSeek 推理引擎,覆盖 Metal / CUDA / ROCm 三端,附带完整的 HTTP 服务和 coding agent 集成,代码质量高到可以作为教材阅读。
对于独立开发者、内容创作者、AI agent 使用者来说,DwarfStar 提供了一个从云端 API 切换到本地推理的零成本路径。不需要付费订阅,不需要 GPU 云实例,一台配置足够的 MacBook 就够了。
如果有一天白物集的内容管线决定搬回本地,git clone antirez/ds4 && make 就是切换的全部成本。