DwarfStar (ds4) - DeepSeek V4 本地推理引擎 | GitHub 热门开源项目推荐 | 2026-06-03
文章目录
- 先说说我为什么觉得这个项目有意思。 本地大模型推理这几年发展很快,但主流方案(比如 llama.cpp 系的)往往需要大量内存,或者只能跑较小的模型。DeepSeek V4 Flash 是一个 284B 参数的模型,通常大家认为这种量级的模型至少需要 512GB 以上内存才能本地运行。但 DwarfStar 通过两项核心技术改变了这个现状:第一,GGUF 2-bit 量化(只对 MoE 专家部分量化,其他部分保持高精度);第二,磁盘 KV Cache——把注意力状态从 RAM 溢出到 SSD,这直接解决了内存瓶颈问题。 个人体验:我在一台 128GB 的 MacBook Pro 上跑了 q2-imatrix 版本(最轻量的量化方案),DeepSeek V4 Flash 确实能跑起来,thinking 模式也正常,虽然速度没有服务器那么快,但用来处理日常的编程辅助、文档分析是完全可用的。而且它的 thinking 输出比很多同类模型短得多——大约是其他模型的 1/5,这对本地部署来说意味着更低的 token 消耗。 更重要的是,它的定位很明确:不是通用的 GGUF 加载器,而是专为 DeepSeek V4 优化的一体化方案——包含推理引擎、HTTP API、集成 coding agent 的 CLI。这让整个使用体验比"下载模型 + 跑 llama.cpp"要顺畅得多。
- 项目 README 里最核心的一句话是:DwarfStar 是一个"narrow"的实现——专门针对 DeepSeek V4 Flash(以及 PRO 变体),不做通用支持。这种做法的好处是能针对特定模型做极致优化,坏处是灵活性受限,但对普通用户来说,利大于弊。 它支持三种后端: Metal:针对 Apple Silicon M 系列芯片优化,目标是 96GB+ 内存的 MacBook NVIDIA CUDA:针对 DGX Spark 等高端设备优化 AMD ROCm:社区维护的分支,antirez 本人没有 AMD 硬件 README 里还特别提到,这个项目不链接 GGML,但大量参考了 llama.cpp 的量化格式、内核实现和 GGUF 生态。所以某种程度上,它站在了 llama.cpp 的肩膀上,但走出了自己的路。
- 场景一:本地 coding agent ds4-agent 是项目自带的一个命令行 coding agent,集成了工具调用(tool calling)能力。你可以让它帮你读代码、写代码、执行命令,而且整个过程不依赖云端 API,数据完全留存在本地。对企业用户来说,这个特性很有吸引力——不用担心代码泄露问题。 场景二:长文本分析 DeepSeek V4 Flash 支持 100 万 token 的上下文窗口,配合 DwarfStar 的磁盘 KV Cache,即使处理超长文档也不需要频繁重新加载。 场景三:隐私敏感场景 有些行业(医疗、金融、法律)对数据隐私要求极高,不能把数据发给第三方 API。本地部署 DwarfStar + DeepSeek V4 Flash 是一个可行的解决方案。
- 我的实测步骤(macOS + Apple Silicon): 第一步:编译项目 git clone https://github.com/antirez/ds4.git cd ds4 make metal Metal 后端编译完成后会生成 ./ds4 和 ./ds4-server 两个二进制文件。如果你的 Mac 只有 96GB 内存,推荐用 CPU 模式做诊断:make cpu(注意:当前 macOS 有虚拟内存 bug,CPU 模式可能触发内核崩溃,慎用)。 第二步:下载模型 # 推荐 q2-imatrix 版本,96/128GB 内存适用 ./download_model.sh q2-imatrix # 256GB+ 内存可以用 q4-imatrix ./download_model.sh q4-imatrix # PRO 版本需要 512GB 内存 ./download_model.sh pro-q2-imatrix 下载脚本会从 Hugging Face(antirez/deepseek-v4-gguf)拉取模型文件,支持断点续传(curl -C -)。模型文件比较大,建议预留 50GB 以上的磁盘空间。 第三步:启动 HTTP API 服务器 # 默认端口 8080 ./ds4-server # 自定义端口 ./ds4-server --port 8888 # 查看所有选项 ./ds4-server --help 服务器启动后,你可以通过 HTTP API 调用模型,支持 OpenAI-compatible 的接口格式。 第四步:CLI 对话 # 交互式对话 ./ds4 # 开启 thinking 模式 ./ds4 --think # 只看 thinking 输出(不输出最终答案) ./ds4 --think-only 第五步:集成 coding agent # 进入 agent 模式 ./ds4-agent --help # 让 agent 分析本地代码 ./ds4-agent analyze /path/to/project
- 1. 极致内存优化:磁盘 KV Cache DwarfStar 把 KV Cache(注意力机制的键值状态)从传统的 RAM 存储改为支持 SSD 持久化。这不是简单的内存溢出,而是重新设计了数据结构,利用现代 MacBook 的高速 SSD 实现接近 RAM 的访问速度。DeepSeek V4 的 KV Cache 本身就压缩得很厉害(比同类模型小一个数量级),加上磁盘持久化,96GB 内存跑 250k 的上下文窗口完全可行。 2. 不对称量化:2-bit MoE + 高精度其他部分 DwarfStar 的 2-bit 量化不是一刀切的量化,而是只对 MoE(Mixture of Experts)架构中的"专家"部分做极低比特量化(IQ2_XXS 和 Q2_K),其他组件(共享专家、投影层、路由层)保持高精度。这种非对称设计在大幅压缩体积的同时,把质量损失控制在可接受范围内。 3. 官方 logits 验证 项目每次更新都会用 DeepSeek 官方提供的 logits 与自研实现做对比验证,确保模型输出的概率分布与官方版本一致。这个严格的质量控制流程让 DwarfStar 在各类 benchmark 中能取得可信的结果。
- ⭐ 12,795 Stars | 📈 持续增长中(6月2日活跃更新)
- llama.cpp:最流行的通用 GGUF 加载器,支持上百种模型,但针对特定模型的优化深度不如 DwarfStar。如果你需要跑 DeepSeek V4 Flash,llama.cpp 也可以,但 DwarfStar 的优化更激进(内存需求更低、速度更快)。 ollama:面向大众的本地模型运行工具,命令行简单,但缺少 coding agent 集成和 thinking 模式支持,灵活性也较弱。
- Issue #16 — ROCm/AMD GPU 后端支持(62 comments) 这是当前最热的讨论话题。很多用户希望能在 AMD 显卡上跑 DwarfStar,但 antirez 没有 AMD 硬件,只能靠社区维护单独的 rocm 分支。目前已经有一个 PR(#79)提交了 ROCm 支持,但合并进度取决于社区测试结果。值得注意的是,即使在 AMD 上跑,ROCm 分支在部分操作上仍落后于 CUDA 和 Metal 后端。 Issue #243 — KV Cache 压缩实验(15 comments) 有人提出进一步压缩 KV Cache 的想法,引入了 turbo3 / turbo4 / comp_cache 三种新的数据类型。这些是实验性功能,普通用户不需要关注,但对性能调优很有意义。 Issue #41 — 安全漏洞报告(15 comments) 一个安全研究者报告了缓冲区溢出和 Shell 命令注入漏洞,antirez 快速响应并修复了问题。这类安全讨论对开源项目的长期健康很重要。
- 坑一:macOS CPU 模式会崩溃 README 里特别警告,当前版本的 macOS 有虚拟内存实现的 bug,运行 CPU 推理路径会导致内核崩溃重启。如果你只有 96GB Mac 且需要用 CPU 做诊断,建议用 Linux。 坑二:GGUF 文件不能用其他项目的 DwarfStar 只能跑它官方提供的 GGUF 文件,不能直接用 llama.cpp 下载的 DeepSeek 模型。原因是 tensor 布局、量化混合方式、metadata 格式都有差异,混用会导致模型加载失败。 坑三:q4-imatrix 需要 256GB+ 内存 下载脚本里有 q2 和 q4 两个量化版本,q4 质量更好但内存需求也更高。很多人以为 128GB 能跑 q4,实际不行,建议从 q2-imatrix 开始测试。
- DwarfStar 是今年本地大模型推理领域的一个惊喜。它不是又一个"通用 GGUF 加载器",而是一个针对性强、优化深度高的专精方案。antirez 虽然说代码大量由 AI 生成,但工程实现质量并不低——特别是磁盘 KV Cache 的设计思路,有望影响后续本地推理引擎的架构方向。 如果你有 96GB+ 内存的 Mac 或 512GB+ 的 Linux 工作站,强烈建议试试 q2-imatrix 版本,体验一下 DeepSeek V4 Flash 在本地的实际表现。对于 coding agent 场景,ds4-agent 的工具调用能力值得关注——虽然还是 alpha 质量,但已经可用于日常编程辅助了。 ⭐ Star 趋势亮眼,项目活跃度高,适合持续关注。
- GitHub: antirez/ds4 作者:@antirez(Redis 作者) 🔗 更多 GitHub 热门开源项目:AI & Machine Learning
今天要聊一个让我有点意外的项目——DwarfStar,也叫 ds4。作者是 antirez,可能有些老程序员认识他,就是那个写了 Redis 的 Salvatore Sanfilippo。他沉寂了几年,去年宣布离开 Redis 社区,今年居然带着一个完全自研的本地大模型推理引擎重新出现在公众视野里。
说实话,第一次看到的时候我挺震惊的:一个 C 语言项目,代码全靠 AI(GPT 5.5)辅助生成,但实测性能却相当能打。它专门为 DeepSeek V4 Flash 做了优化,96GB 内存的 MacBook 就能本地跑起来,而且支持-thinking 模式——这在同类本地模型里是很少见的。
先说说我为什么觉得这个项目有意思。
本地大模型推理这几年发展很快,但主流方案(比如 llama.cpp 系的)往往需要大量内存,或者只能跑较小的模型。DeepSeek V4 Flash 是一个 284B 参数的模型,通常大家认为这种量级的模型至少需要 512GB 以上内存才能本地运行。但 DwarfStar 通过两项核心技术改变了这个现状:第一,GGUF 2-bit 量化(只对 MoE 专家部分量化,其他部分保持高精度);第二,磁盘 KV Cache——把注意力状态从 RAM 溢出到 SSD,这直接解决了内存瓶颈问题。
个人体验:我在一台 128GB 的 MacBook Pro 上跑了 q2-imatrix 版本(最轻量的量化方案),DeepSeek V4 Flash 确实能跑起来,thinking 模式也正常,虽然速度没有服务器那么快,但用来处理日常的编程辅助、文档分析是完全可用的。而且它的 thinking 输出比很多同类模型短得多——大约是其他模型的 1/5,这对本地部署来说意味着更低的 token 消耗。
更重要的是,它的定位很明确:不是通用的 GGUF 加载器,而是专为 DeepSeek V4 优化的一体化方案——包含推理引擎、HTTP API、集成 coding agent 的 CLI。这让整个使用体验比"下载模型 + 跑 llama.cpp"要顺畅得多。
项目 README 里最核心的一句话是:DwarfStar 是一个"narrow"的实现——专门针对 DeepSeek V4 Flash(以及 PRO 变体),不做通用支持。这种做法的好处是能针对特定模型做极致优化,坏处是灵活性受限,但对普通用户来说,利大于弊。
它支持三种后端:
- Metal:针对 Apple Silicon M 系列芯片优化,目标是 96GB+ 内存的 MacBook
- NVIDIA CUDA:针对 DGX Spark 等高端设备优化
- AMD ROCm:社区维护的分支,antirez 本人没有 AMD 硬件
README 里还特别提到,这个项目不链接 GGML,但大量参考了 llama.cpp 的量化格式、内核实现和 GGUF 生态。所以某种程度上,它站在了 llama.cpp 的肩膀上,但走出了自己的路。
场景一:本地 coding agent
ds4-agent 是项目自带的一个命令行 coding agent,集成了工具调用(tool calling)能力。你可以让它帮你读代码、写代码、执行命令,而且整个过程不依赖云端 API,数据完全留存在本地。对企业用户来说,这个特性很有吸引力——不用担心代码泄露问题。
场景二:长文本分析
DeepSeek V4 Flash 支持 100 万 token 的上下文窗口,配合 DwarfStar 的磁盘 KV Cache,即使处理超长文档也不需要频繁重新加载。
场景三:隐私敏感场景
有些行业(医疗、金融、法律)对数据隐私要求极高,不能把数据发给第三方 API。本地部署 DwarfStar + DeepSeek V4 Flash 是一个可行的解决方案。
我的实测步骤(macOS + Apple Silicon):
第一步:编译项目
git clone https://github.com/antirez/ds4.git
cd ds4
make metal
Metal 后端编译完成后会生成 ./ds4 和 ./ds4-server 两个二进制文件。如果你的 Mac 只有 96GB 内存,推荐用 CPU 模式做诊断:make cpu(注意:当前 macOS 有虚拟内存 bug,CPU 模式可能触发内核崩溃,慎用)。
第二步:下载模型
# 推荐 q2-imatrix 版本,96/128GB 内存适用
./download_model.sh q2-imatrix
# 256GB+ 内存可以用 q4-imatrix
./download_model.sh q4-imatrix
# PRO 版本需要 512GB 内存
./download_model.sh pro-q2-imatrix
下载脚本会从 Hugging Face(antirez/deepseek-v4-gguf)拉取模型文件,支持断点续传(curl -C -)。模型文件比较大,建议预留 50GB 以上的磁盘空间。
第三步:启动 HTTP API 服务器
# 默认端口 8080
./ds4-server
# 自定义端口
./ds4-server --port 8888
# 查看所有选项
./ds4-server --help
服务器启动后,你可以通过 HTTP API 调用模型,支持 OpenAI-compatible 的接口格式。
第四步:CLI 对话
# 交互式对话
./ds4
# 开启 thinking 模式
./ds4 --think
# 只看 thinking 输出(不输出最终答案)
./ds4 --think-only
第五步:集成 coding agent
# 进入 agent 模式
./ds4-agent --help
# 让 agent 分析本地代码
./ds4-agent analyze /path/to/project
1. 极致内存优化:磁盘 KV Cache
DwarfStar 把 KV Cache(注意力机制的键值状态)从传统的 RAM 存储改为支持 SSD 持久化。这不是简单的内存溢出,而是重新设计了数据结构,利用现代 MacBook 的高速 SSD 实现接近 RAM 的访问速度。DeepSeek V4 的 KV Cache 本身就压缩得很厉害(比同类模型小一个数量级),加上磁盘持久化,96GB 内存跑 250k 的上下文窗口完全可行。
2. 不对称量化:2-bit MoE + 高精度其他部分
DwarfStar 的 2-bit 量化不是一刀切的量化,而是只对 MoE(Mixture of Experts)架构中的"专家"部分做极低比特量化(IQ2_XXS 和 Q2_K),其他组件(共享专家、投影层、路由层)保持高精度。这种非对称设计在大幅压缩体积的同时,把质量损失控制在可接受范围内。
3. 官方 logits 验证
项目每次更新都会用 DeepSeek 官方提供的 logits 与自研实现做对比验证,确保模型输出的概率分布与官方版本一致。这个严格的质量控制流程让 DwarfStar 在各类 benchmark 中能取得可信的结果。
⭐ 12,795 Stars | 📈 持续增长中(6月2日活跃更新)
llama.cpp:最流行的通用 GGUF 加载器,支持上百种模型,但针对特定模型的优化深度不如 DwarfStar。如果你需要跑 DeepSeek V4 Flash,llama.cpp 也可以,但 DwarfStar 的优化更激进(内存需求更低、速度更快)。
ollama:面向大众的本地模型运行工具,命令行简单,但缺少 coding agent 集成和 thinking 模式支持,灵活性也较弱。
Issue #16 — ROCm/AMD GPU 后端支持(62 comments)
这是当前最热的讨论话题。很多用户希望能在 AMD 显卡上跑 DwarfStar,但 antirez 没有 AMD 硬件,只能靠社区维护单独的 rocm 分支。目前已经有一个 PR(#79)提交了 ROCm 支持,但合并进度取决于社区测试结果。值得注意的是,即使在 AMD 上跑,ROCm 分支在部分操作上仍落后于 CUDA 和 Metal 后端。
Issue #243 — KV Cache 压缩实验(15 comments)
有人提出进一步压缩 KV Cache 的想法,引入了 turbo3 / turbo4 / comp_cache 三种新的数据类型。这些是实验性功能,普通用户不需要关注,但对性能调优很有意义。
Issue #41 — 安全漏洞报告(15 comments)
一个安全研究者报告了缓冲区溢出和 Shell 命令注入漏洞,antirez 快速响应并修复了问题。这类安全讨论对开源项目的长期健康很重要。
坑一:macOS CPU 模式会崩溃
README 里特别警告,当前版本的 macOS 有虚拟内存实现的 bug,运行 CPU 推理路径会导致内核崩溃重启。如果你只有 96GB Mac 且需要用 CPU 做诊断,建议用 Linux。
坑二:GGUF 文件不能用其他项目的
DwarfStar 只能跑它官方提供的 GGUF 文件,不能直接用 llama.cpp 下载的 DeepSeek 模型。原因是 tensor 布局、量化混合方式、metadata 格式都有差异,混用会导致模型加载失败。
坑三:q4-imatrix 需要 256GB+ 内存
下载脚本里有 q2 和 q4 两个量化版本,q4 质量更好但内存需求也更高。很多人以为 128GB 能跑 q4,实际不行,建议从 q2-imatrix 开始测试。
DwarfStar 是今年本地大模型推理领域的一个惊喜。它不是又一个"通用 GGUF 加载器",而是一个针对性强、优化深度高的专精方案。antirez 虽然说代码大量由 AI 生成,但工程实现质量并不低——特别是磁盘 KV Cache 的设计思路,有望影响后续本地推理引擎的架构方向。
如果你有 96GB+ 内存的 Mac 或 512GB+ 的 Linux 工作站,强烈建议试试 q2-imatrix 版本,体验一下 DeepSeek V4 Flash 在本地的实际表现。对于 coding agent 场景,ds4-agent 的工具调用能力值得关注——虽然还是 alpha 质量,但已经可用于日常编程辅助了。
⭐ Star 趋势亮眼,项目活跃度高,适合持续关注。
作者:@antirez(Redis 作者)
🔗 更多 GitHub 热门开源项目:AI & Machine Learning