DwarfStar 4 (ds4) 本地推理引擎
DwarfStar 4 支持在本地运行前沿 MoE 模型
DwarfStar 4 (ds4) 是一款专业的 C 语言推理引擎,允许高内存机器在本地运行前沿的开放权重模型。与通用运行器不同,ds4 有意保持“窄而精”,专注于一小部分高性能模型系列——特别是 DeepSeek V4/V4.1、GLM 5.x 和 Qwen 3.8 Flash Next——以确保对每个支持的布局进行端到端的验证。
核心技术架构
非对称 2-bit 量化
为了使海量的混合专家 (MoE) 模型在消费级高内存硬件上变得实用,ds4 采用了非对称 2-bit 量化。该技术在压缩路由专家的同时保留了关键共享路径的精度,使得像 DeepSeek V4 Flash(一个 2840 亿参数的模型)这样的模型能够适配现有的 VRAM/RAM。
KV 缓存磁盘持久化
Ds4 将 KV 缓存视为“磁盘公民”,这意味着长前缀可以保存到 SSD 中,并通过提示词哈希 (prompt hash) 恢复。这种架构避免了在会话重启时进行完整的预填充 (prefill),从而显著提高了长上下文工作负载的效率。
统一接口栈
该引擎提供了三个共享相同模型状态和缓存的独立接口:
- CLI (
./ds4):用于直接聊天交互。 - Server (
./ds4-server):提供 OpenAI 和 Anthropic 风格的 API,用于与 Codex、Claude Code 和 OpenCode 等本地编码代理集成。 - Agent (
./ds4-agent):专为持久化编码会话而设计。
硬件兼容性与性能
支持的后端
Ds4 是为 Metal (Apple Silicon)、CUDA 和 ROCm 构建的。它主要针对 M5 Max Mac 和 DGX Spark 机器等高端消费级硬件进行了优化。
内存要求与 SSD 流式传输
虽然 96GB 到 128GB 的 RAM 是实现最佳性能的推荐基准,但 ds4 支持对超出物理内存的模型进行 SSD 流式传输。例如,在 128GB 系统上,DeepSeek V4.1 Q2 可以从 SSD 流式传输以维持功能,否则它将无法放入 RAM 中。
性能基准
在配备 128GB RAM 的 M5 Max 上,ds4 达到了以下性能指标:
| 上下文 | 预填充 t/s | 生成 t/s |
|---|---|---|
| 2,048 tokens (q2) | 790.2 | 39.4 |
| 65,536 tokens (q2) | 398.5 | 27.6 |
社区见解与生态系统
用户和贡献者通过各种分支和集成扩展了 ds4 的实用性。值得注意的社区进展包括:
- FFI 绑定:存在一个提供 ds4 作为共享库的分支,支持通过外部函数接口 (FFI) 在其他语言中使用,包括一个名为
ds4go的 Go 实现。 - 融合 TQ:社区贡献实现了融合 TQ,使得在使用 Qwen 3.8 Flash Next 时,在 128GB M5 Max 机器上能够支持高达 100 万 token 的上下文长度。
- 替代工具:一些用户建议对于那些无法满足主要 ds4 目标高内存要求的旧款 NVIDIA 3090 系列硬件用户,可以使用
club-3090。
“它必须更多地作为一个针对最大用例的工作模板,而不是试图覆盖每一种可能的设置。” — 项目文档 via GitHub
安装流程
运行 ds4 涉及三个步骤:
- 获取权重:克隆仓库并使用提供的
download_model.sh脚本获取项目特定的 GGUF(不支持通用 GGUF)。 - 构建:运行
make和特定的后端命令(例如make cuda-spark)。 - 执行:使用所需的上下文设置启动 CLI 或服务器(例如
./ds4-server --ctx 100000)。
Sources
相关
- Dispatch
- 项目
- Dispatch
- Dispatch
- 项目