项目详情
colibrì
在你自己的硬件上跑前沿 MoE 模型(744B–2.8T)——纯 C 零依赖引擎,专家权重从磁盘按需流式
GitHub 地址
Apache-2.0
30k Stars · 2.5 个月
纯 C · 零运行时依赖
v1.11.0
更新于 2026-09-14
← 返回汇总
项目速览
一句话定位
给权重做 JIT:模型不用装进显存,只需要被「放置」
纯 C 单文件推理引擎 + 开放研究平台:把 VRAM、RAM、NVMe 当成同一权重的三个放置层,让 744B–2.8T 的前沿 MoE 模型跑在消费级硬件上。已支持 GLM-5.2/5.3、Kimi K3、DeepSeek V4.x、Qwen3.x 等 9 个家族。口号「Tiny engine, immense model」——不是租 API 背后的智能,而是把它握在手里:测量它、改造它。适合本地大模型爱好者、系统研究与 MoE 可解释性研究者。
项目速览
核心数据
- 增长曲线陡峭:2026-07-01 创建,75 天 30k stars / 3.3k forks——「本地跑前沿模型」的需求再次被验证
- 发布节奏密集:v1.9 → v1.11.0(2026-09-13)两周三版,issue 区是实验报告现场(#8、#163、#200、#273……)
- 代码构成见定位:C 5.8 MB(引擎本体)+ Python 2.9 MB(转换/启动器)+ CUDA/Metal/Vulkan 后端 + TypeScript(web 仪表盘)
- 无依赖哲学:单 C 文件引擎(c/colibri.c)+ 小头文件;无 BLAS、运行时无 Python、不强制 GPU
🔥 核心洞察
744B 模型,每个 token 只碰 5.4%
总量
稠密常驻
路由专家(流式)
核心机制
「权重版 JIT」:参数不是状态,是待调度的数据
编译器 JIT 从不编译整个程序——它观察实际执行路径,只编译热点。colibrì 对 744B 参数空间下同样的注:参数不是要驻留的状态,而是要恰好按时到达的数据。
看路由热度
每层 LRU + 学习型钉住热店(.coli_usage 每 turn 更新)——引擎越用越快,因为「你的工作负载」的热专家在升温。
提前一层预取
PILOT 线程在当前层计算时预取下一层专家——路由被实测 71.6% 提前一层可预测,预取把 NVMe 延迟藏进计算时间里。
结构可缓存
路由不是噪声:专家图集(issue #175)显示 13,260 个专家有可测主题亲和性——诗、法律、中文、SQL 各有专家集群。有结构 = 可缓存。
🔥 核心架构
三个放置层,一条访问路径
快层(VRAM)
中层(RAM)
慢层(NVMe,全量)
研究文化
把每个优化当假设,负结果也是产出
- 无速度 SLA,有语义硬保证:实验必须靠可复现的端到端测量挣得位置;默认策略绝不悄悄改变模型精度或路由语义——快内存不足只许变慢,不许变义
- 公开假设表:README 列出六条待验证假设(学习 pin vs 纯 LRU、双 SSD、硬件感知规划器、无损表征、路由感知投机、CPU/GPU 重叠),每条附「现有证据 + 还缺什么实验」
- 负结果明码标价:MTP 投机解码在 85% 专家命中率附近实测倒退 32%——直接写进假设表,并给 DRAFT=0 一键关闭
- 测量协议标准化:docs/benchmarks.md 规定记录硬件、commit、命令、缓存状态、吞吐、TTFT、专家命中率、字节数、质量检查——改变一个变量重复实验,「一个可控的失败比一个无法解释的快数字更有价值」
硬数据
同一引擎跨硬件阶梯:只换专家住哪
| 硬件 | 放置策略 | 解码速度 | 出处 |
| 6× RTX 5090 | 全专家常驻(disk=0) | 5.8–6.8 tok/s · TTFT ~13s | 实验日志 2026-07-12 |
| 128 GB 纯 CPU 桌面 | 全专家 RAM 常驻 | ~1.8 tok/s(热) | #200 |
| 单 RTX 5070 Ti 笔记本级 | GPU 常驻管线 | 1.07 tok/s | #273 |
| 25 GB 开发盒 | 全部流式 NVMe | 0.05–0.1 tok/s(冷) | 「诚实的基线,项目起点」 |
同一 int4 容器,同一段 C 代码——硬件只改变专家住在哪一层。从 0.05 到 6.8 tok/s 差 100 倍,但输出语义相同。这是「放置而非装下」哲学的实测注脚。
支持矩阵
九个家族,一个前端:coli chat / serve / web
| 模型 | 规模 | 磁盘(权重) | RAM 最低 | GPU |
| GLM-5.2 / 5.3(参考模型) | 744B MoE | ~372 GB | 16 GB(舒适 24) | 不需要 |
| Kimi K3 | 2.8T MoE | ~1.6 TB | 32 GB+ | 不需要 |
| Inkling | 975B | ~469 GB | 25 GB(int4 稠密容器) | 不需要 |
| GLM-5.3-Flash(带视觉) | 321B | ~195 GB | 25 GB | 不需要 |
| DeepSeek V4.1 Flash(带视觉) | 552B | ~?GB | 16 GB+ | 可选(GTX 10 系起:prefill 5-10×,decode ~2.5×) |
| Qwen3.8-Flash-Next | 125B + 51B n-gram | ~185.5 GB | 16 GB+ | 仅 CPU |
| Qwen3.6-35B-A3B | 35B | ~20 GB | 24 GB(全 RAM 常驻) | 可选:两 8GB 卡 7.0× 提速 |
| OLMoE(入门实验) | 7B | ~7 GB | 8 GB | 不需要 |
每个家族是「兄弟引擎」——各一个 C 文件、独立架构,同一套前端(启动器按 config.json 选二进制)。无一需要 GPU;速度主要取决于磁盘。
工程质量
激进的优化,保守的正确性
- transformers oracle 前向校验:teacher-forcing 32 题中典型 30-32 对齐,两处近平手是浮点近等值、随工具链波动——README 连这个都交代了
- MLA KV 压缩 57×:576 floats/token(对比 32,768),且跨重启持久化——重开会话零重填、与连续会话逐字节一致
- DSA 稀疏注意忠实实现:通过强制全键选择复现稠密注意力来验证(GLM-5.2 lightning indexer)
- 血泪教训入档:MTP 头必须 int8(int4 → 草稿接受率 0-4%,#8);draft 与 verify 必须同核(#163 完整取证故事);早期 per-row int4 容器比 gs64 差 ~9pp 且引发死循环(#455)——三个 issue 都是教科书级工程法证
- 投机解码要「挣到饭钱」:2.2-2.8 token/forward 时才划算,不划算就 DRAFT=0
研究平台
把 19,456 个专家变成可看的皮层与星系
Web 仪表盘
coli web:实时 token 指标、每 turn 耗时分解、VRAM/RAM/disk 层条、迷你大脑——744B 模型 4 tok/s 跑在 6×5090 上的一切可见。
Brain 页
19,456 专家实时皮层:颜色 = 存储层,亮度 = 路由热度,每 turn 被路由的专家闪白——「专家在你的机器上点火」的现场直播。
Atlas 页
实测专家图集成 3-D 星系:13,260 个特征化专家按实测路由亲和性(非学习嵌入)聚类——诗歌、法律、中文、SQL 各成星团。
副产物价值巨大:这是MoE 可解释性的现成实验台——任何人都能在消费硬件上对前沿模型的专家分工做实测研究(issue #175 就是范本)。
生态位
与 llama.cpp / vLLM 的错位竞争
| llama.cpp | vLLM / SGLang | colibrì |
| 定位 | 通用 GGUF 推理 | 数据中心服务 | 前沿 MoE 专家流式 + 研究平台 |
| 超大数据集 | 模型需装进 RAM/VRAM | 需 HBM 服务器 | 专家住磁盘,按需流式(744B 进 25GB 盒) |
| 代码形态 | C++ 大型项目 | Python/CUDA | 纯 C 单文件每模型,可整个读进脑 |
| 研究接口 | — | — | hypotheses 表 / 测量协议 / Brain-Atlas 可视化 |
三者共存:llama.cpp 管「任何模型任何设备」,vLLM 管「每秒万 token 的服务」,colibrì 管「超大 MoE × 你自己的硬件 × 可做实验」——这个交集此前没人认真做。
上手
两样东西:几百 KB 的程序 + 372 GB 的模型
# 1. 下载预编译(Linux/macOS/Windows,免编译)
tar xzf colibri-v1.11.0-linux-x86_64.tar.gz
python3 coli info # engine ready ✓
# 源码构建:gcc + OpenMP 即可
git clone https://github.com/JustVugg/colibri
cd c && ./setup.sh # 自检 + 构建
# 2. 转换模型(分片下载,从不同时装下全 756GB)
./coli convert --model /nvme/glm52_i4
# 3. 跑起来
./coli chat # 终端对话
./coli serve # API 服务
./coli web # Brain/Atlas 仪表盘
- 零依赖运行时:引擎纯 C,只需 Python 3 跑启动器;无 BLAS、无强制 GPU
- GLM-5.2 int4 容器:HuggingFace 有预转换版(gs64 + int8 MTP,372 GB)——README 强调别用旧 per-row 镜像(质量差 9pp 且有死循环前科)
- 从 OLMoE(7GB)入门:小模型全流程体验分层机制,再上 744B
- 文档四语:英文 + 简繁中文 + 意大利语 README
风险提示
需要警惕
- 体验下限很低:25 GB 盒 0.05–0.1 tok/s 是官方自认的「诚实基线」——没有快 NVMe 和大 RAM,744B 模型只是「能跑」不是「能用」
- 速度无 SLA:定位研究平台,激进实验随时可能让某个配置变慢;生产部署请选 vLLM 系
- 磁盘就是生命线:专家流式把 SSD 带宽当内存用——持续高读负载对消费级 SSD 寿命与发热是真实考验(README 未深入讨论)
- 模型权重许可:引擎 Apache-2.0,但 GLM/Kimi/DeepSeek 各家权重的商用条款独立生效,本地跑 ≠ 随便商用
- 项目年轻:2.5 个月、主维护者主导;「兄弟引擎每模型一个 C 文件」的架构在家族扩张时维护成本会显现
- 性能数字多为社区自报:硬件阶梯数据来自 issue 实验日志,非统一实验室环境——但项目对此的态度比谁都诚实
潜力评估
评分:9.0 / 10 · tracking
近一年见过的最诚实系统项目:每条优化带证据链、负结果入档、语义保证优先于速度。它同时押中三件事——MoE 成为前沿标配、消费 NVMe 带宽暴涨、本地大模型需求爆发。若「专家亲和性」研究成熟到能指导训练侧设计,影响会超出推理圈。
在线体验
MoE 专家分层放置模拟器
亲手调 VRAM/RAM 容量、开关学习钉住与逐层预取,看 8 层 × 256 专家的访问热图如何从红(NVMe 冷读)变绿(VRAM 命中)——「容量只决定速度,从不改变语义」的机制现场。
进入 Playground →