Redis 作者 antirez 发布本地推理引擎 DwarfStar 4(ds4),两周获约 23k stars
The Redis Guy Wrote a Local LLM Engine That Refuses to Be General. That's Why It Works.
Redis 作者 Salvatore Sanfilippo(antirez)发布本地 C 推理引擎 DwarfStar 4(ds4),约两周在 GitHub 获约 23k stars,MIT 协议,只支持项目自产 GGUF 的 DeepSeek V4 / V4.1 Flash、GLM 5.x 和 Qwen 3.8 Flash Next,不做通用 GGUF runner。
文章梳理了 ds4 只支持固定模型列表换取性能的设计取舍和实测数据,读者可据此判断它是否适合本地长上下文 Agent 工作流。
Salvatore Sanfilippo(antirez,Redis 的作者)发布了一个本地推理引擎,名为 DwarfStar 4,即 ds4。它本周登上了 Hacker News 首页,仓库在大约两周后已获得约 2.3 万颗星。
其卖点就是 README 中的一句话:
代码是自包含的,并且刻意保持狭窄的定位,不是一个通用的 GGUF 运行器:你必须使用该项目生成的 GGUF 文件。
其他人都在竞相支持世界上所有的模型。antirez 却反其道而行之。而数据表明这是正确的选择。
它到底是什么
一个面向大内存 Mac(Metal)、CUDA 和 ROCm 机器的 C 语言推理引擎。它针对的模型列表很短:DeepSeek V4 / V4.1 Flash、GLM 5.x 和 Qwen 3.8 Flash Next。MIT 许可。
不是 Ollama。不是 llama.cpp。它不会加载你从 Hugging Face 随便下载的 Q4_K_M。你使用该项目构建的 GGUF,作为交换,模型加载、提示渲染、工具调用、KV 状态、HTTP 服务器和编码代理集成都是一起测试的,而不是作为碰巧大体能用的独立层。
Redis 精神:选定一个工作负载,对它毫不留情。
让它得以适配的技巧
非对称量化。 MoE 模型将每个 token 路由到少数几个专家,而这些专家持有大部分权重。ds4 将路由专家压缩到约 2 位,并将敏感部分(共享专家、投影、路由)保持更高精度。相比统一的 2 位压缩,你损失的质量要少得多,因为你只压缩了能承受压缩的部分。
尽可能让一切驻留磁盘。 压缩的 KV 缓存和快速的本地 SSD 使长上下文变得可行。Qwen 3.8 Flash 的大型 n-gram 表(约 95 GiB)从磁盘读取而非加载到 RAM,这就是为什么约 42 GiB 的权重集能在 64 GB 的 Mac 上运行。
持久化 KV 缓存。 长前缀会保存到 SSD,并通过提示哈希恢复。如果你曾看着一个代理第十次重新预填充 6 万个 token 的仓库上下文,你就知道这为什么重要。
数据
来自项目网站(快速变化的测试版,仅作快照参考):
| 机器 | 上下文 | 预填充(t/s) | 生成(t/s) |
|---|---|---|---|
| M5 Max 128GB | 2K | 790.2 | 39.4 |
| M5 Max 128GB | 65K | 398.5 | 27.6 |
| DGX Spark 128GB | 2K | 825.8 | 18.1 |
| DGX Spark 128GB | 65K | 823.0 | 13.8 |
看看 65K 那几行。在长上下文下,Mac 上的生成速度从 39 降到 27 t/s。这是在笔记本电脑上可用的代理循环,而不是演示。独立报道给出了类似的数量级(M5 Max 上大约 35 t/s,512 GB M3 Ultra 上巨大的 PRO 模型约 10 t/s),所以这些说法不只是营销。
试试看
git clone https://github.com/antirez/ds4
cd ds4 && ./download_model.sh ds4f-q2
make # macOS / Metal
# make cuda-spark # Linux / DGX Spark
./ds4 # interactive CLI
./ds4-server --ctx 100000 # OpenAI + Anthropic style API
该服务器暴露了 /v1/chat/completions、/v1/messages 和 /v1/responses,因此任何支持 OpenAI 或 Anthropic 通信格式的东西都可以指向它。README 列出了 Claude Code、Codex CLI、OpenCode 和 Pi 作为受支持的客户端。还有一个原生 ./ds4-agent,带有 /save、/list 和 /switch <sha>,用于存储在 ~/.ds4/kvcache 中的会话。
适合谁
- 你拥有 64 GB 以上的统一内存,或者一台 DGX Spark / Strix Halo 机器。 低于这个配置,你就处于 SSD 流式加载、“技术上能跑”的领域。
- 你运行长时间的代理会话,并且厌倦了 API 账单和重新预填充的延迟。
- 隐私或气隙要求,不允许将代码发送到托管 API。
谁应该跳过它:任何想每周在四十个模型之间切换的人。那仍然是 Ollama 的工作,而 Ollama 做得很好。
注意事项,因为确实存在
- 它处于测试阶段且变化很快。做好出问题的准备。
- README 里写得很直白:它是在 AI 编码代理的大量帮助下构建的,人类负责主导思路、测试和调试。我宁愿它把这一点说出来,而不是藏着掖着,但在用它处理任何敏感内容之前,请先读一读代码。
- 一位评测者报告称,CPU 推理可能会导致 macOS 内核崩溃。请坚持使用 GPU 路径。
- PRO 模型支持仍处于实验阶段,而且分布式模式(通过雷雳连接两台 Mac)没有加密或认证。不要把它接入不属于你的网络。
- 你被锁定在模型列表之内。如果你最喜欢的模型不受支持,那就只能等 antirez 了。
为什么这件事的意义不止于一个仓库
据报道,美国对“本地 LLM”的搜索兴趣在 2025 年 9 月至 2026 年 8 月间增长了十倍以上。迄今为止,工具层面的应对方案一直是宽泛的兼容层。ds4 押注的是,下一次跃升将来自相反的方向:一个引擎、一个模型家族,每一层都为其他层调优。
我认为这个赌注是对的。通用运行器永远会是安全的默认选择,但 2 倍的性能提升将来自那些愿意对 95% 的使用场景说“不”的人。这和当年让 Redis 变快的取舍是一样的。
克隆它,运行 Q2 模型,然后把你的编码代理指向 ./ds4-server。然后在评论区告诉我你的每秒 token 数是多少。
来源:Google AI:DEV 作者专属(RSS) · dev.to