Redis 作者 antirez 又写了一个很反潮流的东西:ds4.c

它只面向 DeepSeek V4 Flash,只跑 Apple Metal。CPU 路径主要用于正确性检查,不是实际推理路线。它也不是通用 GGUF 播放器,更不是给 llama.cpp 套一层壳。

最有意思的地方就在这里:过去本地大模型工具都在拼“多”。多模型、多格式、多硬件。ds4.c 反着来,少支持一点,把一个模型做深一点。

这对本地大模型玩家和高端 Mac 用户很直接:如果你手里没有高内存 Mac,这件事更多是观察信号;如果你有 128GB 级别机器,它才可能变成一个可以动手试的项目。

ds4.c 窄在哪里

按项目 README 的定位,ds4.c 是 DeepSeek V4 Flash 专用 native inference engine。

几个边界要先钉死:

维度ds4.c 的选择现实含义
模型只面向 DeepSeek V4 Flash不追求通吃,也不承诺适配其他模型
平台Metal-only主要押注高端 Mac / Mac Studio
CPU用于正确性检查不是日常推理路径
格式使用项目特制 GGUF不是通用 GGUF runner
定位模型加载、KV、API、测试一起打通目标是端到端可用,不是“勉强能跑”

这和 llama.cpp 的路线不一样。

llama.cpp 的强项是通用性。它支持大量模型、格式和硬件,社区扩展能力强。ds4.c 承认受 llama.cpp / GGML 启发,但没有链接 GGML,也不把自己包装成替代品。

它更像一把专用刀。

专用刀的问题是用途窄。好处是刀口能磨得更狠。对开发者来说,这意味着不能简单把它当成“下一个统一 runtime”。更现实的做法是:如果你的目标就是 DeepSeek V4 Flash + 高端 Mac,可以试;如果你要多模型、多平台部署,继续看通用框架。

关键不只是模型,而是 KV cache

README 里提到 DeepSeek V4 Flash 的几个卖点:1M tokens 上下文、较短且随复杂度变化的 thinking、压缩 KV cache、特殊 2-bit 量化后可在 128GB RAM MacBook 上运行。

这里要谨慎一点。这些是项目说明和作者主张,不等于第三方独立性能验证。不要把它读成跑分结论,也不要把“128GB MacBook 可运行”理解成普通个人电脑轻松可跑。

真正的变量是 KV cache。

很多人谈本地模型,只盯权重。能不能塞进内存,能不能量化到 4-bit、2-bit,像是全部问题。

长上下文起来后,KV cache 会变成第二个大头。模型权重只是请进门,长对话、长文档、代码库分析,才是持续吃资源的地方。

antirez 在 README 里的判断很激进:压缩 KV cache 加上现代 SSD,可能让 KV cache 成为“磁盘一等公民”。

这句话比模型参数更值得看。

它把本地推理的问题从“模型能不能加载”推进到“状态能不能管理”。这有点像早期数据库从内存玩具走向磁盘系统。内存快,磁盘慢,但真正能扛活的系统,最后都要学会和磁盘谈判。

类比不完全一样。推理不是数据库。但重复的是同一种工程逻辑:当规模上来,系统不能只靠最贵、最快的资源硬扛。

对本地玩家,这意味着采购判断要变了。别只看显存或内存容量,也要看 SSD、内存带宽、平台 API 和项目对 KV 的处理方式。对小团队,更现实的动作是延后迁移:先看 ds4.c 能不能稳定处理长上下文,而不是急着把内部工具绑到这条窄路线。

窄引擎可能会赢,但不是免费赢

我不太买账“本地 AI 很快人人可跑”这种说法。

ds4.c 给出的信号刚好相反:本地强模型要接近可用,工程会更专用,机器会更贵,平台会更窄。

128GB RAM MacBook 能跑,已经不低。但这不是大众门槛。Mac Studio、高内存 MacBook、高速 SSD、Metal,这几个词放在一起,指向的是一小群人:本地大模型玩家、Mac 高端用户、重视数据不出本地的开发团队。

开源以前有一种朴素想象:代码放出来,人人可用。

现在没那么简单。代码开了,能不能用被硬件、平台、模型格式和维护精力重新切开。古人说“天下熙熙,皆为利来”。开源项目也绕不开利益和成本:谁维护 Metal kernel,谁跟模型版本,谁处理量化误差,谁补测试向量,谁承担 macOS 兼容性问题。

ds4.c 自己也没有装稳。

项目仍是 alpha。README 警告 macOS 虚拟内存 bug 可能导致内核崩溃。作者还公开说明,代码开发强依赖 GPT 5.5 辅助。

这不是减分点本身。它更像今天 AI 基础设施开发的真实状态:人写系统,模型也在写系统;项目开源,但维护债务很快会来敲门。

接下来判断它有没有价值,不看热度,看三件事:

  • 长上下文下,压缩 KV cache 是否真的稳定可用。
  • 128GB Mac 场景里,体验是否足够接近完整产品,而不是 demo。
  • DeepSeek V4 Flash 如果更新,ds4.c 的专用代码能不能跟上。

这三件事过不了,窄就是包袱。过得了,窄才是优势。

我的判断很简单:本地推理不会只剩一种通用框架。更可能出现两条线并行。通用框架负责广覆盖,窄引擎负责把少数模型、少数硬件打磨到可用。

这不是更浪漫的开源。它更现实,也更贵。

模型看着越来越大,本地路线反而可能越来越窄。窄到最后,不是退步,是工程开始还债。