资讯动态

Redis 之父为 DeepSeek V4 手写 AI 推理引擎,Node.js 大佬亲自点赞

发布时间:2026/10/26 10:27:08 来源:尧图企业网站定制
写出 Redis 的那个意大利人开始亲手写 AI 推理引擎了。5 月 7 日深夜antirez 在 X 上甩出一条推文欢迎来到 DS4一个为 DeepSeek V4 Flash 量身打造的本地推理引擎。仓库地址github.com/antirez/ds4Metal 专属纯 C 语言实现目标平台是高端 Mac。这条推文之所以值得拿出来单独说是因为发推的人。antirez 本名 Salvatore Sanfilippo1977 年出生于意大利西西里是后端工程师绕不开的名字。2009 年他用 C 写出第一版 Redis之后亲自带着这个项目往前推了 11 年把它做成了今天全球缓存、消息队列、会话存储几乎绕不过去的基础设施。2020 年他从 Redis 一线退下来去写小说、玩业余项目2024 年底又以 Redis evangelist 的身份回归社区。很多人没想到的是他这次回归之后挑的新方向是 AI 推理引擎。Redis 之父跑去给 DeepSeek 写专属推理引擎这件事本身就够反差。这条推文发出去 22 个小时浏览量 6.2 万评论区聚集了一票熟面孔包括 GGML 作者 Georgi Gerganov、Node.js 核心贡献者 Matteo Collina。Matteo 评论得直接再次为 antirez 的工作感到钦佩如果你用的是 128GB 的 Mac本地 AI 时代已经接近尾声。它不是又一个 llama.cppds4 在介绍里把话说得非常清楚刻意做窄。它不是通用的 GGUF 运行器不是某个运行时的封装也不是一个框架。代码主路径只干一件事跑 DeepSeek V4 Flash 的 Metal 计算图专门处理它的加载逻辑、prompt 模板、KV 状态和 server API。这种 专一到偏执 的取舍背后是 antirez 对当前本地推理生态的判断。他在 README 里写道本地推理领域里好项目很多但新模型一个接一个发注意力总被下一个模型抢走很多模型从未被认真对待到底过。所以 ds4 干脆反过来一次只赌一个模型配合官方 logits 校验做长上下文测试再做足够的 Agent 集成确认它能真正干活。模型可能换但约束不变本地推理要在高端个人机器或者 Mac Studio 上 可信门槛 128GB 内存起步。也正因为窄整个项目的设计都围绕 DeepSeek V4 Flash 的特点展开。为什么是 DeepSeek V4 Flash为什么单独给这一个模型造引擎antirez 在 README 里列了七八条理由挑几条关键的激活参数少所以快。V4 Flash 是 MoE 模型激活参数远小于总参数。思考链长度自适应。打开 thinking 模式但不开 max thinking思考段落长度大致和问题复杂度成正比简单题简单想难题才长想。在很多场景下只有其他模型的五分之一。100 万 token 上下文窗口。**284B 参数带来的 知识广度**。问一些边缘话题比如意大利电视节目或冷门政治议题能明显感觉到 284B 比 27B、35B 这种小尺寸密集模型存货多得多。英文和意大利文写作明显更好体感接近前沿模型。KV cache 压得极小长上下文在本地能跑更夸张的是可以把 KV cache 存到磁盘上。2-bit 量化下表现不崩前提是用了一种特殊的量化方式。最后这一条配合 KV cache 压缩正好让 V4 Flash 可以塞进一台 128GB 内存的 MacBook Pro。这是 ds4 整个项目能够成立的硬件前提。具体的 2-bit 量化做法也挺有意思。ds4 用了高度非对称的量化策略只对路由 MoE 专家做激进量化up/gate 走 IQ2_XXS、down 走 Q2_K这部分是模型空间的大头。其他组件包括共享专家、投影层、路由模块都保留原精度用来兜底输出质量。仓库里直接写明这套 2-bit 量化不是开玩笑能稳定跑 Coding Agent、可靠地调用工具。把 KV cache 当成磁盘上的 一等公民ds4 最有意思的设计可能就是它对 KV cache 的处理。传统认知里 KV cache 必须待在显存或者内存里因为查表要快。但 V4 Flash 的 KV cache 本身压得很小再加上现代 MacBook 用的是 SSD随机读写延迟低到一个程度让 antirez 觉得是时候换思路KV cache 可以是一份长在磁盘上的状态。启动 server 的时候只要带上--kv-disk-dir和--kv-disk-space-mb引擎会在四个时机往磁盘写 checkpoint冷启动长 prompt 处理到稳定前缀后生成开始前。持续保存prefill 或者生成推进了一定 token 数。驱逐前内存里只有一份活着的 KV cache新会话顶替旧会话之前先把旧的存下来。干净退出服务正常关闭时。cache key 是 token id 序列的 SHA1不是文本字符串避免了文本和 BPE 边界对不齐的麻烦。文件名就是sha1.kv故意用普通的 read/write IO 而不是 mmap这样恢复 cache 不会给已经把模型 mmap 进去的进程再加一堆虚拟内存映射。这个设计对 Agent 类的客户端特别有意义。Claude Code 那种工具每次请求都会带着上一轮的所有上下文初始 prompt 动辄 2.5 万 token。第一次跑必然慢但只要把磁盘 KV cache 留着下次接着聊或者重启之后再来前缀直接复用不用重新 prefill。对一个本地引擎来说这是从 能跑 到 能用 的关键一步。速度数字跑分数据是 antirez 自己在两台机器上测出来的--ctx 32768、关 thinking、贪心解码、生成 256 个 token128GB 的 MacBook Pro 跑 q2 量化生成速度 26 t/s 左右长 prompt 下也有 21 t/s。这意味着 284B 的模型在一台不算夸张的笔记本上能做到接近实时输出。Mac Studio 那一档则把 q4 量化也带上了速度更稳一些。服务端做得很扎实ds4 不只是命令行工具还附带一个 OpenAI/Anthropic 双协议兼容的 server。./ds4-server --ctx 100000 --kv-disk-dir /tmp/ds4-kv --kv-disk-space-mb 8192支持的端点包括GET /v1/modelsPOST /v1/chat/completionsPOST /v1/completionsPOST /v1/messages/v1/chat/completions接得动 OpenAI 那一套字段messages、temperature、top_p、tools、tool_choice、stream 全都在。它会把 OpenAI 的 tool schema 转成 DeepSeek 的 DSML 格式喂给模型再把生成出来的 DSML tool call 翻译回 OpenAI 风格。/v1/messages走的是 Anthropic 协议Claude Code 这类客户端可以直接对接。README 里给了 opencode、Pi 还有 Claude Code 三套配置示例。Claude Code 的接法是包一个 shell 脚本把ANTHROPIC_BASE_URL指到本地 8000 端口再把 sonnet、haiku、opus 这三个模型别名都映射到 deepseek-v4-flash这样 Claude Code 不论选哪个等级都跑在本地。把这套配置完整跑通之后本地就有了一个伪装成 Claude 的 DeepSeek写代码、调工具都能用。不过 antirez 在文档里坦白当前 server 不做并发请求的 batch所有推理串行通过一个 Metal worker多个并发请求只能排队。一个人用没问题多人共享要慎重。GPT-5.5 写了不少代码ds4 README 里有一句话很容易被忽略但 antirez 写得很坦诚“这个软件在 GPT 5.5 的强力辅助下开发由人类主导想法、测试和调试。我们公开说明这一点因为它塑造了项目的构建方式。如果你不喜欢 AI 写的代码那这个软件不适合你。这句话放在 README 里已经不只是免责声明而是一种立场表态。对 antirez 这种以亲手写代码闻名的工程师来说公开承认大量代码出自 AI 协作分量比一般项目要重得多。如果你顺着这个线索去想会发现整个 ds4 的存在本身就是一个论据单人项目用 AI 工具能在合理时间内做出一个 Metal 推理引擎跑通官方 logits 校验搭起 Agent 兼容的 server。这件事在 GGML 团队多年积累的基础上才可能发生但它确实发生了。评论区那场关于 影子贡献者 的讨论这条推文底下最有意思的对话来自 lifcc 和 antirez。lifcc 写道GGML 的影响力非常惊人今年每一个新出来的推理引擎本质上都继承了一个免费的 C 优化栈影子贡献者 名单远远超过实际贡献者。antirez 回复得很直接我同意 GGML 的影响。但关于影子贡献者名单这件事我没办法在 DS4 的 README 里把每个名字都列出来。我意识到这是个问题Redis 也有同样的情况但具体要怎么解决并不明显。这段对话戳到了开源生态的一个普遍困境站在巨人肩膀上的项目怎么把巨人的名字写全。GGML 那帮人贡献了 GGUF 格式、量化方案、kernel 实现、CPU 量化和 dot 逻辑新引擎可以不依赖 GGML 库本身但实际上还是大量参考了 GGML 的实现思路。ds4 的 LICENSE 文件里仍然保留了 GGML 作者的版权声明README 里也专门开了一节 Acknowledgements to llama.cpp and GGML。这种态度比 砍掉 BSD 头注释悄悄重写一遍 要体面得多。这个事情真正的意义在哪ds4 不是要取代 llama.cpp也不是要在跑分上压谁一头。它更像是一个范式实验当一个开源大佬决定不做通用框架专心把一个具体模型在一类具体硬件上做到极致最后会得到什么。答案大致是这样一个 README 里写得清清楚楚自己边界在哪的项目一个把磁盘当 KV cache 一等公民的设计一个 OpenAI 和 Anthropic 协议都兼容的 server一份对前置项目GGML、llama.cpp态度恭敬的致谢清单加上对自己 AI 协作开发方式的公开承认。Matteo Collina 那句 本地 AI 时代已经接近尾声 可能稍微乐观了。但如果你正好有一台 128GB 的 Mac又恰好对 DeepSeek V4 Flash 感兴趣ds4 确实给了一种非常具体的玩法把 Claude Code 接到本地让 284B 的 MoE 模型在自己的桌面上写代码、调工具不联网不付费不送数据。至于 Redis 之父下一步会不会把这种 模型专属引擎 的思路扩展到更多模型上README 留了一句话模型会随生态演进而变。下一个会是谁让人挺好奇。

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑