本文内容
Colibri 让消费级硬件跑起 GLM-5.2,代价是什么?
Colibri 仍然能够在约 25 GB 内存的机器上运行 GLM-5.2。这是内存容量方面的突破,并不代表聊天速度足够快。 开发者最初测得的冷缓存生成速度为每秒 0.05-0.1 个 token。按这一历史速度计算,生成 100 个 token 需要约 17-33 分钟,还不包括提示词处理。后续针对特定模型容器的测试更快,因此不能把旧结果当作所有 25 GB 内存配置的性能上限。
本文于 更新并重新核查来源。 本次确认的最新版本为 9 月 20 日发布的 Colibri v1.12.0。过去“主要处理文本、支持八个模型家族的实验项目”这一描述已经不够准确。Brio 可以直接为允许的答案评分,无需生成回复;控制面板重新设计,后端和输入验证也有多项修复。此前的 v1.11.0 已加入 DeepSeek V4.1 Flash,使引擎家族增至九个。
本文保留原有重点:Colibri 在你的硬件上究竟能做什么,需要付出多少延迟和内存成本,以及如何避免把“成功启动”误认为“可以上线生产”。 下文速度均为有来源的上游测试结果,不是 Wavect 自行测得的数据。
Colibri 是什么?与上一次评测相比发生了哪些变化?
Colibri,项目正式写法为 Colibrì,是采用 Apache 2.0 许可证的推理运行时。它把模型权重放在 NVMe 存储、系统内存和可选的显存中,并按需调度。这并不是把 7440 亿参数压缩到 25 GB:检查点仍保存在磁盘上,只把当前需要的部分放进更快的内存。对应版本的 README 区分了无依赖的 C 推理引擎与 Python 启动器、HTTP 网关。因此,对常见的 coli 使用流程宣称“运行时完全不需要 Python”并不准确。
| 领域 | 已核实的变化 | 实际影响 |
|---|---|---|
| 模型支持 | 九个引擎家族;GLM 家族也能加载 GLM-5.3 | 不要混淆完整 GLM-5.3 与 GLM-5.3-Flash。 |
| 决策评分 | 通过 POST /v1/brio、终端和面板使用 Brio | 可以直接测试固定选项任务,不必让模型生成 JSON 答案。 |
| GPU 路径 | Qwen3.8 增加 CUDA 层;GLM-5.3-Flash 支持 Metal | 笼统的“仅支持 CPU”已过时,必须核实具体引擎与后端组合。 |
| 较小模型的性能 | Qwen3.6 内核和常驻内存占用改进 | Qwen3.6 的速度不能写成 GLM-5.2 的新成绩。 |
| 可靠性 | 修复输入验证、上下文限制、分词器、内存和平台问题 | 升级后需要重新运行真实工作负载,而不只是替换可执行文件。 |
Colibri 的 GLM-5.3 容器约为 419 GB,与 GLM-5.2 使用同一个引擎家族。但它没有推荐 5.2 容器中的 MTP 头,因此对应的推测解码路径保持关闭。这是另一个检查点选项,不表示已有 GLM-5.2 权重会自动升级成 5.3。
744B 模型为什么能在 25 GB 内存中运行?
GLM-5.2 是混合专家模型,约 744B 参数中,每个 token 激活约 40B。官方模型卡介绍的是模型本身,其能力声明并不能自动证明某个 Colibri 量化版本的质量。Colibri 将约 9.9 GB 稠密权重常驻内存,并从存储中读取被路由选中的专家。原始布局包括跨越 75 个 MoE 层及 MTP 头的 19,456 个专家块。
逐层缓存、根据使用历史固定热点专家、操作系统页缓存和可选 GPU 放置减少重复读取。原始冷启动估算约为每生成一个 token 读取 11 GB 专家权重。这只对应特定布局和负载,并不是所有模型、检查点或推测模式共有的常数。
这里需要区分两件事:量化改变权重的表示方式,分层存储改变权重存放的位置。 CPU 与 GPU 输出相同的量化结果,不等于量化保留了原模型的准确率。反过来,数值实现正确的引擎也可能仍然慢到无法满足应用需求。
Colibri 支持哪些模型,各自需要多少硬件资源?
可通过 v1.12.0 模型家族注册表区分引擎家族与检查点名称。九个家族不代表任意九个模型 ID 都能互换。每个家族都需要匹配的路由、注意力、张量格式和聊天处理实现。Colibri 不是通用 GGUF 加载器。
| 家族/检查点 | 大致磁盘空间 | 内存注意事项 |
|---|---|---|
| GLM-5.2 / GLM-5.3 | 当前 GLM-5.2 下载约 429 GB;GLM-5.3 约 419 GB,均为分组 int4 | 上游列出最低 16 GB;最初的 25 GB 测试很慢,缓存和上下文还需余量。 |
| GLM-5.3-Flash | 转换后约 195 GB | 文档配置约需 25 GB;不是完整 GLM-5.3。 |
| Inkling | 469 GB | 约 25 GB 的方案要求使用压缩稠密权重的容器。 |
| Kimi K3 | 1.6 TB | 上游规划表列出 32 GB 及以上,仍应核实实际工作集。 |
| DeepSeek V4 Flash | 完整检查点约 167 GB | 上游列出最低 16 GB,32 GB 更宽裕;剪枝版本是不同检查点。 |
| DeepSeek V4.1 Flash | 510 GB | 不能从其他引擎推断它也能放进 25 GB;应检查稠密权重、缓存和规划结果。 |
| Qwen3.8-Flash-Next | 185.5 GB | 按较新的工作集测试规划,不要照搬旧版 16 GB 摘要。 |
| Qwen3.6-35B-A3B | 分组 int4 约 20 GB | 较小的全内存驻留候选;占用取决于当前内核和配置。 |
| OLMoE | int8 约 7 GB | 上游列出 8 GB 内存;适合小机器试验,不表示能力与 GLM 相当。 |
磁盘容量有一项重要修正:带版本标签的 README 仍把 GLM-5.2 容器写成 372 GB。容器模型卡内部也存在不同的尺寸摘要,而当前文件列表显示约 429 GB。应该根据具体修订版本和实际选择的文件预留空间,而不是继续沿用旧标题数字;也不要混用十进制 GB 与二进制 GiB。较小的 E8/IQ3 容器标注约 289 GB,但改变了权重表示,存在自己的准确率和解码成本权衡,并非免费缩小。
DeepSeek V4.1 Flash 引擎文档说明了为什么总检查点体积不能直接预测每个 token 的开销:其中约 203 GB 是磁盘支持的 n-gram 记忆,路由专家在缓存命中前每 token 约需读取 4.5 GB。权重无需转换,但文档流程仍会生成一个小型辅助文件 dsv41_engram.json。“无需转换”不等于“无需准备”。
Qwen3.8 文档也有明显冲突。旧 README 摘要仍写着最低 16 GB、仅 CPU。详细的 Qwen3.8 测试却显示,cap 32 的短请求峰值 RSS 约为 16.5 GiB,并把 24 GB 作为该配置的实际主机建议;更大缓存需要 32 GB。v1.12.0 已增加 CUDA,但部分段落仍声称没有 GPU 后端。应以对应版本的实现和具体测试配置为准,而不是孤立的一行要求。
Colibri 在消费级硬件上究竟有多快?
上游基准测试汇总保留了以下 GLM-5.2 结果。限制内存的 Core Ultra 9 一行来自上文链接的容器模型卡。这些是不同构建、缓存历史和权重容器的历史测试,不是 v1.12.0 下的受控横向比较。部分旧记录也不符合项目后来增加的 GPU 正确性证据要求。
| 公开测试配置 | 解码速度 | 100 token,仅解码 |
|---|---|---|
| 最初的 WSL2 开发机,25 GB 内存 | 冷缓存 0.05-0.1 tok/s | 16.7-33.3 分钟 |
| 容器作者的 Core Ultra 9 / RTX 5080 主机,RAM 预算限制为 25 GB | 0.31-0.38 tok/s | 4.4-5.4 分钟 |
| Mac Mini M4 Pro,48 GB,Metal | 0.30 tok/s | 5.6 分钟 |
| M5 Max,128 GB,Metal,46.9 GB 历史热点固定专家 | 2.06 tok/s | 48.5 秒 |
| 251 GiB 主机,六张 RTX 5090,全部专家驻留 | 5.8-6.8 tok/s | 14.7-17.2 秒 |
六张 GPU 的成绩不是消费级笔记本的基线。后续选择性 NUMA 测试在特定多插槽主机上达到约 9 tok/s。发布说明中 Qwen3.6 从 12.8 提升至 15.7 tok/s、常驻内存从 29 降至 17 GB,同样只属于该 Qwen 工作负载。它没有让 25 GB 内存中的 GLM-5.2 变成 15.7 tok/s。
真实服务应测完整请求:排队、提示词预填充、生成以及工具往返。重复提示词的预填充可能接近零,但新文档仍然很慢。展示热缓存对话的控制面板截图,不能证明新文档的响应时间。
应先优化 RAM、NVMe,还是 GPU?
先找出实际消耗墙钟时间的阶段。小内存 GLM 机器可能受专家缓存未命中限制;大量权重驻留后,瓶颈可能变为 CPU 矩阵乘法或内存带宽。历史上同机更换 SSD 的测试把测得带宽从 1.51 提高到 8.81 GB/s,但生成只从 0.10 提高到 0.28 tok/s,因为计算逐渐成为主要成本。
应测冷状态、未缓存的分片读取,而不是使用 SSD 宣传中的顺序读取峰值。macOS 文档中的 F_NOCACHE 测试不会清除上一次运行已经缓存的页面。还要比较多种提示词,因为学习到的热点专家可能偏向产生这些历史数据的负载。更大缓存或分配更多 RAM 未必更快:资源争用和不足的系统余量都可能抵消收益。
GPU 只有在所选后端减少真实瓶颈时才有帮助。安装了一张显卡不会自动消除磁盘未命中。每项 CUDA、HIP、Metal 或 Vulkan 计时都应附带输出质量检查:项目记录过一个 HIP 案例,吞吐相近但困惑度显著变差,只看速度根本发现不了缺陷。
MTP 也不是免费提速开关,而是需要验证的实验。GLM-5.2 需要正确的 int8 MTP 头,冷缓存中额外的推测专家读取可能反而拖慢速度。路由器的 --topp 0.7 捷径明确改变专家路由并可能损失质量,它与普通输出 token 采样并不是同一回事。只要改变模型语义,就应重新验证质量。
GLM-5.2 int4 路径保留了多少质量?
现有证据不足以支持“笔记本拥有完整前沿模型质量”这样的泛化结论。项目的小规模 GLM-5.2 测试在 HellaSwag、ARC、MMLU 上报告平均标准化准确率 62.5%,每项仅 40 道题。另一个独立的 OLMoE 实验测得量化损失 8.2 个百分点,分组缩放恢复了其中约 63%。这说明某种方法的效果,但不是 GLM-5.2 原始权重与 int4 的干净对照。
不过,证据也比旧的小样本摘要更丰富:分组 int4 模型卡报告,在 200 道 HellaSwag 题目上,标准化准确率为 87.0%,逐行 int4 为 83.5%。E8 模型卡也提供与分组 int4 的比较,但小样本和启用的缓存感知路由没有隔离量化误差。这些是有用但有限的测试,不证明与原模型等价,也不证明生产环境推理质量。
自行评估时,应保留确切检查点、量化方式、提示词模板和期望结果。测试困难反例、多语言输入,以及过去出现循环或耗尽输出预算的任务。既检查答案是否正确,也检查是否正常结束。token 级实现一致性与业务答案是否有用,是不同的检验问题。
专家流式读取会损耗 SSD 吗?
不要把读取 11 GB 当作消耗了 11 GB 的写入寿命额度。Kingston 对 TBW 与 DWPD 的说明以写入数据和编程/擦除周期为基础。Colibri 的专家路径以读取为主,但模型下载、转换输出、持久化状态和操作系统交换仍可能写入磁盘。
运行长时间代表性任务时,监测温度、SMART 健康状态与交换活动。为系统保留 RAM,避免缓存导致大量写入式换页。对于约 429 GB 的参考下载加运行余量,专用 1 TB NVMe 是合理的规划选项,不是软件规定的最低值,也不保证任意源模型转换都能装下。临时文件空间必须另外核算。
Colibri Brio 模式是什么,什么时候值得使用?
Brio是 Colibri 已加载模型的一种评分模式,不是新模型,也不是 Jev 或 Laya 集成。你提供一个封闭的答案集合,引擎评估每个选项的 token,返回选中的答案、相对分数和归一化熵,而不是生成自由文本。
端点提供三种形式:options 回答一个问题,questions 对同一状态提出多个问题,schema 为字段指定允许的值列表。这里的 schema 是 Brio 的“字段到允许值”映射,不是任意 JSON Schema。JSON 结构由服务器填写,模型只给允许值打分。格式正确的 JSON 仍然可能包含错误业务决定。
零 completion token 不代表零推理成本。文档仍需预填充,各选项也需要评分。进程存活期间的前缀快照减少部分重复处理;重启会丢失快照,穿插请求和可用 KV 槽位也影响复用。文档中的四字段测试使用 Brio 耗时 103.8 秒,文本生成耗时 246.0 秒,按计算约快 2.37 倍。这只是上游的一次 Qwen3.6 实验,不是 GLM 测试,更不是普适节约比例。
Brio 默认先平均 token 对数概率,再在候选项之间归一化。这缓解了一种简单的长度惩罚,却不会让得分变成经过校准的正确率概率。低熵只表示一个已提供的选项占优势,不证明正确选项已经在列表中。应设计拒答或转人工路径,用带标签样本校准复核阈值,并测试不同选项措辞和长度。仅加入“human review”并不能保证模型可靠地选择转人工。
因此,在本地执行很重要的情况下,值得测试对同一文档重复进行固定选项分类。但它不会自动优于小分类器、确定性规则或托管决策端点。我们的Jev 决策模型评测讨论的是另一类模型;本节只讨论如何更有效地使用 Colibri 已有引擎。
如何安装并测试 Colibri v1.12.0?
在受支持的类 Unix 系统上进行可复现源码构建时,应固定发布版本,而不是获取未知的未来 main。先安装 Python 3 与支持 OpenMP 的 C 编译器。以下命令不会下载权重:/nvme/glm52_i4 必须已经包含上文链接的 GLM-5.2 分组 int4、int8 MTP 参考容器。Windows 或其他编译器、后端请使用对应平台说明。
git clone --branch v1.12.0 --depth 1 https://github.com/JustVugg/colibri.git
cd colibri/c
./setup.sh
export COLI_MODEL=/nvme/glm52_i4
./coli doctor --deep
./coli plan
./coli chatdoctor --deep 检查模型是否准备就绪,plan 解释内存与存储放置。两者都不能证明答案质量或服务延迟。把规划结果、检查点修订或校验和一起写进基准记录。同一个家族也能加载 GLM-5.3,但必须提供它自己的容器,不能期待 GLM-5.2 的 MTP 行为。
要测试网关,在一个终端中启动持续运行的服务器。把占位内容换成长随机本地密钥,并在评估阶段保持只绑定回环地址:
export COLI_API_KEY='replace-with-a-long-random-local-secret'
COLI_MODEL=/nvme/glm52_i4 ./coli serve \
--host 127.0.0.1 --port 8000 --model-id glm-5.2-colibri在第二个终端将 COLI_API_KEY 设置为同一个密钥,然后提交下面的合成 Brio 示例。模型 ID 必须与服务器一致。请求只是建议应该由哪个队列复核,不会执行退款,也不能证明重复扣款真的发生过。
curl --fail-with-body http://127.0.0.1:8000/v1/brio \
-H "Authorization: Bearer ${COLI_API_KEY:?Set the same key as the server}" \
-H 'Content-Type: application/json' \
--data-binary '{
"model": "glm-5.2-colibri",
"state": "The ticket reports two charges for one renewal. The payment ledger has not been checked.",
"question": "Which team should inspect the evidence?",
"options": ["billing", "technical support", "human review"],
"normalize": "mean"
}'该示例基于公开 API 契约,并非本文进行了实际集成测试。应用中还应增加与实测预填充相符的超时、返回值验证,以及排队拒绝和引擎故障处理。不要只为让远程编辑器连接,就把监听端口直接暴露到公网。
Colibri API 能连接 Claude Code 或业务应用吗?
网关文档说明了兼容 OpenAI 的聊天/补全路由,以及使用 Anthropic 协议的 /v1/messages。协议兼容不等于工具行为或编程质量相同。编码代理的大型系统提示词和工具目录,可能使首 token 延迟远高于短句手动聊天。
普通服务路径仍然一次只执行一个生成任务,采用有界准入,对被拒绝或在队列中过期的请求返回 HTTP 429。在支持的引擎中,多个 KV 槽位可以保留不同上下文,但它们不等于连续批处理,也不是所有引擎共有的相同能力。应根据请求总耗时设置排队超时,而不是根据乐观的 token 速度标题。
某些 API 段落仍然笼统宣称不支持图像和对数概率,这对更新后的项目并不成立:较新引擎包含视觉路径,Brio 明确使用选项对数概率。反过来,Brio 也不能证明常规 API 的每个参数、多模态内容块或工具功能都能在每个端点工作。需要验证具体引擎、端点和输入格式;不支持的组合应该明确报错,而不是默默丢弃数据。
Colibri 现在适合哪些业务场景?
| 工作负载 | 值得做的实验 | 验收条件 |
|---|---|---|
| 私有模型评估 | 购买大型 GPU 服务器前,先运行具有代表性的内部提示词。 | 在具体量化版本上获得有用答案和可接受的总耗时。 |
| 同一文档的重复固定选项问题 | 比较 Brio、生成式 JSON 和更简单的基线。 | 测量错误率、人工复核量、冷热延迟,而不只是 JSON 有效。 |
| 单人本地助手 | 先测试可完整驻留的较小家族,再考虑从磁盘流式加载 GLM。 | 该模型本身达到交互式延迟,不借用更大模型的能力声明。 |
| 定时离线处理 | 测每小时验收通过的项目数,包含失败与复核。 | 真实处理窗口内能够清空队列。 |
| 面向客户的并发 API | 执行负载、隔离、故障恢复和升级测试。 | 有证据满足所需服务等级,而非仅仅存在一个可访问端点。 |
我们的判断从笼统的“尚不可用于生产”调整为分别评估工作负载与所选引擎。项目已经提供实际能力和具体改进,但这篇评测没有证明任何生产服务等级。25 GB 内存机器上的磁盘流式 GLM-5.2,仍不适合要求快速响应的并发客户聊天。
本地执行可以加强对模型流量的控制,却不会自动解决访问控制、保留期限、备份、客户端遥测或权限。经济性应使用我们的本地模型与 API 盈亏平衡框架分析,不要把未按 token 收费理解为工作免费。购买硬件前,llmfit 本地模型硬件指南可帮助筛选常规模型与运行时组合,但它不会模拟 Colibri 的专家流式缓存。
升级后,应如何做基准测试再决定是否依赖它?
遵循上游可复现基准测试协议并保存原始日志。从具有代表性的任务开始,而不是只发送一句问候。记录提交版本、模型修订、转换设置、命令、上下文长度、RAM/VRAM 放置和存储配置。
在持续运行的服务器中,分别测试冷请求、完全相同的重复提示词和轮换提示词。报告首 token 延迟、完整请求耗时、验收后的输出、解码率、缓存命中率、读取字节数和峰值内存。交替重复不同配置,避免温度、历史缓存和后台负载决定结果。对 Brio,还应记录候选集、归一化方式、误分类成本和人工复核率。
我们的实施建议是先采用影子模式:计算答案但不执行业务动作,与现有流程比较,审核后再逐步扩大范围。如何从演示走向可维护系统,也体现在Twinsoft AI 案例与技术选型指南中。Wavect 的AI 落地服务涵盖评估、集成、可观测性与回退机制设计。
来源、复核日期与局限
这是基于来源的技术评测,于 按照 v1.12.0 更新。相关陈述旁提供一手证据;能够固定版本时使用对应标签的代码与文档,模型仓库则可能继续变化。原始发布日期保留为 2026 年 7 月 14 日。
此次更新没有下载或运行这些大型检查点,没有复现社区基准,也没有测试实际部署的 Brio。时间换算使用 秒数 = 输出_token数 / 每秒_token数,不计预填充和排队;Brio 对比比例使用 246.0 / 103.8。建议的验收标准和业务适用性是我们的分析,不是上游保证。遇到文档冲突时会明确指出,而不是包装成确定无疑的普遍结论。
常见问题
Colibri 在本地 AI 中是什么?
Colibri 真能在 25 GB 内存中运行 GLM-5.2 吗?
GLM-5.2 究竟需要 372 GB 还是 429 GB 磁盘?
Colibri 支持 GLM-5.3 吗?
加一张 RTX 5090 就能让 Colibri 变快吗?
Colibri 的 Brio 模式做什么?
零 completion token 是否意味着 Brio 推理免费?
能否用 Brio 的置信度或低熵直接批准业务动作?
Colibri 会损耗 SSD 吗?
Colibri 能运行 DeepSeek、Kimi 和 Qwen 吗?
Colibri 可以用于生产了吗?
GLM-5.2 是开源模型吗?
最终思考
最初的 25 GB GLM 演示已经不足以概括 Colibri。v1.12.0 增加 Brio 与更多引擎能力,而检查点容量、后端支持和测试方法都需要比旧文章更细致的核查。
关键不是巨大模型是否启动,而是具体检查点、硬件和工作流能否提供正确、及时且可维护的结果。固定版本、检查实际下载、测量冷请求与变化负载,并对业务动作保留明确验证。
需要把这些测试变成部署决策?与 Wavect 讨论可衡量的本地 AI 评估.
