Colibrì简介:纯C零依赖推理引擎如何在个人电脑上跑起744B到2.8T的MoE大模型
【免费下载链接】colibriRun frontier MoE models on hardware you already own — pure C, zero deps, experts streamed from disk. Tiny engine, immense model. 🐦项目地址: https://gitcode.com/gh_mirrors/colibri3/colibri
Colibrì 是一个用纯 C 语言编写、零依赖的本地推理引擎,它把硬盘、内存、显存当成同一条"内存阶梯",让 744B 到 2.8T 参数的前沿 MoE 混合专家大模型(GLM-5.2、Kimi K3、Inkling 等)无需 GPU、无需云服务,就能在你自己的个人电脑上跑起来——引擎本体只有一个 C 文件,程序只有几百 KB。
什么是 Colibrì:一个"蜂鸟级"的本地大模型引擎
🐦 名字来自蜂鸟(colibrì 是意大利语):重量只有几克,却能悬停飞行、一天访问上千朵花。Colibrì 做的正是同样的事——用 25 GB 内存、12 核 CPU 和一点"磁盘耐心",让 7440 亿参数的大模型在你家电脑上活过来。
它当前支持 7 个模型家族,覆盖从 7B 到 2.8T 的完整区间:
| 模型家族 | 总参数 / 激活参数 | 权重体积 | 说明 |
|---|---|---|---|
| GLM-5.2 | 744B / 40B | ~372 GB | 参考模型,int4 容器 |
| Kimi K3 | 2.8T / 104B | ~1.6 TB | 原版 MXFP4 权重直接流式读取,无需转换 |
| Inkling | 975B / 41B | ~469 GB | Thinking Machines 出品 |
| DeepSeek V4 Flash | 284B / 13B | ~167 GB | 原生 fp4 专家 + fp8 稠密层 |
| GLM-5.3-Flash | 321B / 40B | ~195 GB | 带视觉能力 |
| Qwen3.6 | 35B / 3B | ~20 GB | 入门级好选择,全 RAM 驻留即可 |
| OLMoE | 7B / 1B | ~7 GB | 最轻量,8 GB 内存即可运行 |
值得强调的是:这些模型全都不强制需要 GPU。GPU 只决定"多快",磁盘带宽才决定"能不能跑"。引擎本体是纯 C(c/colibri.c),运行期零 Python、零 BLAS 依赖,Python 只在一次性模型转换和可选的 API 网关中出场。
为什么流式推理可行:每个 token 只激活 5% 的模型
Colibrì 能"小马拉大车"的秘密,在于 MoE 模型本身的稀疏性。以 GLM-5.2(744B)为例:每个 token 只激活约 40B 参数(5.4%),而且相邻 token 之间真正变化的只有约 11 GB 的路由专家权重。
所以大模型不需要"装进"内存——它只需要被放置(placement):
- 稠密部分(注意力、共享专家、嵌入层,约 17B 参数)以 int4 常驻内存(约 9.9 GB);
- 19,456 个路由专家(75 层 MoE × 256,每个约 19 MB)放在磁盘上(约 370 GB),按需流式读取。
官方把这个核心算法比作"权重界的 JIT 编译器":JIT 从不编译整个程序,只在实际运行到热路径时即时编译;Colibrì 也从不把整个参数空间驻留内存,只在路由器证明某专家被需要的那一刻,才把它从存储阶梯上"暂存"到位。
三级内存阶梯:显存、内存、NVMe 是一体的
Colibrì 把 VRAM、RAM、NVMe SSD 当成同一推理层级中的三个"放置档位",快内存不够时降低的是速度,而不是模型的语义——引擎有硬性保证:永远不会悄悄改变模型精度或路由语义。
更妙的是它带一个学习缓存:引擎会记录"你的"工作流实际路由到哪些专家(写入.coli_usage,每轮更新),并自动把最热的专家钉在最快的档位上——换句话说,Colibrì 用得多就真的会变快。在双 SSD 场景下还能把模型完整镜像到第二块盘,两块盘合计带宽流式读取专家,且镜像副本永远只读、字节一致,不改变任何 token 输出。
每个 token 的五步路径:路由 → 合并 → 放置 → 重叠 → 学习
每一层的每个 token 都走相同的五步流水线,设计目标是"放置只决定速度":
- 路由(Route):路由器给 256 个专家打分,保留 top-8;
- 合并(Union):批量位置合并专家列表,每个唯一专家只读一次(batch-union);
- 放置(Place):VRAM/RAM 命中的专家立即计算,未命中的从 NVMe 流式读取;
- 重叠(Overlap):驻留专家计算的同时,异步 I/O 池读入缺失专家;前瞻线程预取下一层专家(路由在一层之前有 71.6% 的可预测性);
- 学习(Learn):用量计数更新,热专家重新排档,引擎随使用越来越快。
工程细节也都很"抠":每个专家的三个矩阵相邻存储、一次pread读完;O_DIRECT绕过页缓存(实测某主机解码提速 34%);MLA 注意力把 KV 状态压缩到每 token 576 个浮点数(比标准 KV 小57 倍),并能跨重启持久化(.coli_kv)——重启后对话"温启动",零重预填。
同一台引擎的性能阶梯:从 0.05 到 6.8 tok/s
"Tiny engine, immense model" 不是口号,而是可复现的实测数据。同一引擎、同一 int4 容器,硬件只改变专家的居住地:
- 25 GB 内存的笔记本:0.05–0.1 tok/s(冷启动,全磁盘流式)——这是项目起步时的"诚实地板";
- 单张 RTX 5070 Ti + 32 GB:1.07 tok/s(GPU 驻留管线);
- 128 GB 纯 CPU 台式机:约 1.8 tok/s(温缓存);
- 6 × RTX 5090 全驻留:5.8–6.8 tok/s,TTFT 约 13 秒。
质量同样被测量而非假设:int4 容器的量化代价、标度粒度消融实验都记录在 docs/benchmarks.md 中,前向传播还对transformers参照做了 token 级校验。
Web 仪表盘:像看"大脑"一样看你的大模型
运行./coli web会启动 OpenAI 兼容 API 加本地 Web 仪表盘,744B 模型的实时 token 指标、每轮耗时分解、VRAM/RAM/磁盘三级条形图一目了然:
最有名的是Brain 页面:把 19,456 个专家画成一个"活的皮层"——颜色代表存储档位,亮度代表路由热度,每个被路由的专家当轮闪白,悬停还能看到该专家的主题亲和度(比如"poetry 38%、medicine 16%"):
而Atlas 页面则把实测专家图谱做成三维星系——13,260 个被刻画的专家中,1,041 个"复制专家"按主题(诗歌、法律、中文、SQL…)聚集成簇,位置由实测路由亲和度决定,可拖拽旋转。
快速上手:三步在个人电脑上跑起 744B 模型
最低要求:约 16 GB 内存、380 GB 空闲磁盘(放 GLM-5.2 int4)、Linux/Windows/macOS 任一系统。不需要 GPU。
第一步:获取引擎
推荐下载预编译发布包(Linux / macOS / Windows 都有),解压即用,只需装一个 Python 3(给启动器用):
mkdir colibri && tar xzf colibri-v1.8.0-linux-x86_64.tar.gz -C colibri && cd colibri python3 coli info # engine ready ✓想从源码构建的话(需要 gcc/clang + OpenMP):
git clone https://gitcode.com/gh_mirrors/colibri3/colibri cd colibri/c ./setup.sh # 自动检查编译器、构建引擎、跑自检第二步:获取模型
GLM-5.2 的 int4 转换版约 372 GB,建议放在快速 NVMe 盘上;也可以用一条命令从 FP8 源分片下载并转换,全程无需 756 GB 同时落盘:
./coli convert --model /nvme/glm52_i4第三步:运行
COLI_MODEL=/nvme/glm52_i4 ./coli chat # 终端交互式聊天 COLI_MODEL=/nvme/glm52_i4 ./coli doctor # 只读环境体检 COLI_MODEL=/nvme/glm52_i4 ./coli plan # 查看 VRAM/RAM/磁盘放置计划 ./coli web --model /nvme/glm52_i4 # API + Web 仪表盘coli会读取模型的config.json自动选择对应引擎二进制——换模型时命令行完全不变,把COLI_MODEL指向对应目录即可,这是"一个家族一个 C 文件"架构带来的统一体验。完整分平台教程见 docs/quickstart.md。
项目结构与核心代码位置
整个仓库的组织思路非常清晰——"每个模型家族一个 C 文件,共享单头文件",修复一处问题所有引擎同时受益:
| 模块 | 路径 | 作用 |
|---|---|---|
| GLM-5.2 引擎 | c/colibri.c | 核心引擎,单文件 |
| Kimi K3 引擎 | c/kimi_k3.c | 2.8T 模型,原生 MXFP4 流式 |
| DeepSeek V4 引擎 | c/deepseek_v4.c | 原生 fp4 专家 + fp8 稠密层 |
| 流式专家缓存 | c/expert_store.h | 权重 JIT 的核心 |
| 路由遥测 | c/route_trace.h | .coli_usage学习缓存 |
| CUDA / Metal / Vulkan 后端 | c/backend_cuda.cu、c/backend_vulkan.c | 可选加速层 |
| 资源规划器 | c/resource_plan.py | coli plan/coli doctor背后 |
| 基准与社区数据 | docs/benchmarks.md | 全量硬件实测表 |
| 调优指南 | docs/tuning.md | 放置、预取、学习缓存调优 |
| 实验记录 | docs/experiments/ | 如 glm52-6x5090-2026-07-12.md |
写在最后:不只是引擎,更是开放的研究平台
Colibrì 的定位很特别:它既是今天就能跑的推理引擎,也是开放的推理系统研究平台。它把每个优化都当作假设,直到受控的端到端 A/B 实验证明它有效;微基准的"快"不算数,真实机器上的端到端数字才算数。负结果也被鼓励公开——一个控制良好的失败,比一个来路不明的漂亮数字更有价值。
对于普通用户:你第一次拥有前沿级模型——不是租 API 背后的智能,而是握住它:探测它、测量它、改进它。对于开发者:引擎小到一个人就能读完,下一个有价值的优化可能就来自动手测量的人。这正是"Tiny engine, immense model"的完整含义。🐦
【免费下载链接】colibriRun frontier MoE models on hardware you already own — pure C, zero deps, experts streamed from disk. Tiny engine, immense model. 🐦项目地址: https://gitcode.com/gh_mirrors/colibri3/colibri
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考