
colibrì 實戰指南以純 C 引擎在消費級硬體上串流運行 744B 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/GitHub_Trending/colibri3/colibri本篇指南圍繞 colibrì小巧引擎龐大模型的核心設計——將 VRAM、RAM 與 NVMe 視為統一的推論記憶體階層以零相依套件的純 C 引擎在既有硬體上運行前沿 MoE 模型GLM-5.2 744B、Kimi K3 2.8T 等。讀完你將掌握模型的「統一階層」概念與每 token 處理路徑、權重 JIT 與學習型快取原理、推測式解碼與 KV 壓縮的正確性約束以及從取得引擎、下載模型到coli chat / plan / doctor / serve / web的完整實作流程與調校參數。colibrì 是一個刻意保持「小」的推論引擎主引擎是單一 C 檔案c/colibri.c約 1.2 萬行不需要 BLAS、執行階段不需要 Python、也不需要 GPU。它的實驗方法是把每一項最佳化都先當成猜想直到受控的端到端 A/B 測量證明其價值——因此它對速度不作 SLA 承諾但對語意給出硬性保證預設策略絕不會在未告知的情況下改變模型精度或路由語意。一、核心概念不是把 744B「放進」記憶體而是「配置」它GLM-5.2 是 744B 參數的混合專家Mixture-of-Experts模型但每個 token 只會啟用約 40B 參數其中每個 token 之間真正會變動的只有約11 GB被路由到的專家。因此模型不需要完整塞進高速記憶體而是需要正確配置位置稠密部分注意力、共享專家、嵌入約 17B 參數以 int4常駐 RAM約 9.9 GB19,456 個路由專家75 個 MoE 層 × 256加上 MTP head每個專家在 int4 下約 19 MB存放在硬碟約 370 GB隨需串流載入搭配逐層 LRU 快取、會學習的熱門專家固定儲存區以及選用的 VRAM 層級。從底層看這個「層級化」架構是透過c/colibri.c主檔與多個標頭模組協作完成量化 matmul kernel 在 c/quant.hKV 磁碟持久化在 c/kv_persist.h路由遙測與.coli_usage歷史格式在 c/route_trace.h儀表板協定與統計在 c/telemetry.h。統一記憶體階層取代單一記憶體門檻同一套引擎涵蓋完整硬體範圍在 25 GB 筆電上一切從硬碟串流載入慢但結果正確在大型主機上可讓整組專家常駐CUDA_EXPERT_GBauto PIN_GBall讓硬碟完全退出解碼路徑。兩端之間有一層學習型快取引擎記錄你的工作負載路由到哪些專家.coli_usage每輪更新並自動固定最熱門的專家——colibrì 確實會越用越快。在多插槽主機上COLI_NUMA1會將常駐權重交錯分配到各記憶體控制器。從 c/route_trace.h 的註解可以確認.coli_usage的具體格式純文字、一行一筆記錄layer expert count稀疏、只寫非零值並以負層號的兩行 header 記錄維度與寫入引擎的身分-1 n_layers n_experts、-2 format_version engine_id。這個設計刻意保持向後相容——舊版引擎讀到負層號記錄會略過後繼續解析資料而PINauto的全部價值就建立在這份可累積的真實路由歷史上。二、運作方式每個 token 的五步驟與 I/O 巧思每個 token 的處理路徑每個 token 的每一層都會走過相同的五個步驟路由 → 聯集 → 配置 → 重疊執行 → 學習。設計目標是讓配置只決定速度——無論專家是從 VRAM 或硬碟回應路由器的決策與權重精度都完全相同。絕不為同一次硬碟讀取等待兩遍快取未命中的成本很高因此引擎大部分的巧思都用來避免或重疊處理這些讀取一次pread讀完整專家每個專家的三個矩陣相鄰儲存一次讀取完成有界非同步 I/O poolPIPE1在常駐專家運算時載入缺少的專家批次聯集批次位置只讀取每個不重複專家一次路由前瞻執行緒PILOT1預先載入下一層專家——實測顯示用第 L1 層的路由器套用到第 L 層的 post-attention 狀態可召回71.6%的真實 top-8相比之下「沿用上個 token 的專家」只有 41.3%GPU 常駐管線COLI_CUDA_PIPE2讓殘差流跨層保留在裝置端CPU 專家迴圈不中斷Apple Silicon 上則有實驗性的 Metal 後端用統一記憶體 GPU 執行批次專家運算。忠實模型壓縮狀態前向傳遞已透過transformersoracle 驗證teacher-forcing 通常 30-32/32tiny oracle 中有兩個位置是浮點數近似平手結果受工具鏈影響setup.sh自測也接受 30/32 或 31/32。MLA 注意力儲存壓縮後的 KV 狀態——每個 token 為576 個浮點數而非 32,768 個縮小 57×——並跨重新啟動持久保存.coli_kv對話可暖啟恢復不需重新 prefill結果與不中斷的工作階段逐位元組相同。c/kv_persist.h 的實作細節印證了這點.coli_kv以COLIKV1f32COLIKV2KV8 fp8 e4m3COLIKV3KV_TQ PolarQuant三種 magic 標記格式在每一輪結束後增量 append、最後才寫入 nrec 計數crash-safe並刻意避免 truncate 超過實體存在的記錄數——防止一次跳過的 append 讓後續 load 讀到垃圾資料。KVSAVE0可停用持久化。DSA 稀疏注意力GLM-5.2 的 lightning indexer已忠實實作並透過強制選取所有 key驗證可精確重現稠密注意力。如實呈現推測式解碼GLM-5.2 原生 MTP head 會起草 token再由主模型以一次批次前向傳遞驗證——條件合適時每次 forward 可產生 2.2–2.8 個 token。兩條得來不易的規則已成為預設值MTP head 必須是 int8——int4 head 的接受率會崩落到 0–4%見 issue #8草稿與驗證必須計算相同函數——SPEC_PIN1自 #294 起為預設把兩者固定在同一 kernel family。文法強制草稿GRAMMARfile.gbnf詳見 docs/grammar-draft.md可在受限 JSON 輸出中以近乎免費的成本提高接受率。推測式解碼是否帶來淨收益取決於快取熱度——請實測若不划算就使用DRAFT0。三、實測成果硬體只決定位置不改變模型同一套引擎、同一個 int4 容器——硬體只會改變專家的存放位置。完整 benchmark 表格中的重點如下機器實測結果6× RTX 5090全部常駐解碼 5.8–6.8 tok/sTTFT 約 13 秒實驗紀錄128 GB、僅使用 CPU 的桌上型電腦暖機後約 1.8 tok/s單張 RTX 5070 Ti 的筆電級電腦透過 GPU 常駐管線pipe2達到 1.07 tok/s25 GB 開發機冷啟動 0.05–0.1 tok/s——專案起步時已證實的下限也仍是如實呈現的基準品質來自測量而非假設int4 容器在 hellaswag/arc/mmlu 上實測62.5% mean acc_norm0-shot log-likelihood, n40而 OLMoE fp16-vs-int4 A/B 測得純量化成本為-8.2pp集中在最難的任務上——這正是「務必使用 gs64 群組縮放容器、不要用舊版 per-row int4 鏡像」的原因per-row 品質實測低約 9 個百分點也是 issue #455 中 think-mode 迴圈與生成不終止的根因。scale granularityrotation 消融實驗收錄於 tools/quant_ablation.pyissue #81。磁碟才是解碼瓶頸冷 token 每個約需 ~11 GB 的專家讀取以 iobench 測量你的磁碟19 MB × 64 並行隨機讀、8 執行緒並用O_DIRECT 參數最後一個參數為 1繞過 page cache 得到真實數字。--topp 0.7是磁碟受限機器的首選參數——每個 token 少讀 30–40% 專家位元組且品質無損。四、開始使用從零到跑起 744B 模型你需要兩樣東西程式本體幾百 KB與模型372 GB。逐步指引也收錄在 Quick Start 指南。1. 取得 colibri下載預先建置的版本——Linux、macOS 與 Windows 均已提供不需要編譯器mkdir colibri tar xzf colibri-v1.8.0-linux-x86_64.tar.gz -C colibri cd colibri python3 coli info # engine ready ✓或者從原始碼建置——需要具備 OpenMP 的gcc或 clanggit clone https://github.com/JustVugg/colibri cd colibri/c ./setup.sh # 檢查 gcc/OpenMP、建置並執行自我測試c/setup.sh 會依平台檢查make與編譯器Linux/MinGW 檢查 gcc libgompmacOS 檢查 clang libomp以ARCHnative建置並執行 tiny oracle 自測最後輸出本機 RAM 資訊。建置完想讓coli進入 PATH在 checkout 中執行pip install -e .即可註冊引擎仍位於c/目錄——這是從複製目錄做的可編輯安裝而非獨立 wheel。2. 取得模型Hugging Face 上已有預先轉換的GLM-5.2 int4容器——請務必使用含 int8 MTP head 的 group-scaledgs64版本約 372 GB放在快碟上https://huggingface.co/mastouri/GLM-5.2-colibri-int4-g64-with-int8-mtp⚠️ 請使用 gs64 容器不要使用較舊的 per-row int4 鏡像mateogrgic/…、jlnsrk/…後者品質實測低約 9 個百分點也是 issue #455 最初 think-mode 迴圈與生成不終止的根因。MTP head 也必須是int8而非 int4int4 的草稿接受率為 0%issue #8ls -l model/out-mtp-*——正確的 int8 大小為3527131672 / 5366238584 / 1065950496。也可以自行從 FP8 來源轉換——只需一條可續傳的指令且任何時候都不需要在硬碟上同時存放完整的 756 GB./coli convert --model /nvme/glm52_i4 # 逐 shard 下載並轉換僅此一次需要 python3. 執行COLI_MODEL/nvme/glm52_i4 ./coli chat # 自動偵測 RAM 預算、快取與 MTP COLI_MODEL/nvme/glm52_i4 ./coli plan # 檢視規劃的 VRAMRAM硬碟配置 COLI_MODEL/nvme/glm52_i4 ./coli doctor # 唯讀就緒檢查 ./coli web --model /nvme/glm52_i4 # 在同一個連接埠提供 API 與網頁儀表板 ./coli serve --model /nvme/glm52_i4 # 僅提供 OpenAI 相容 API在 Windows 上同樣使用這些指令寫作python coli chat --model D:\glm52_i4。引擎執行階段是純 C——python 只供單次轉換工具與選用的 API gateway 使用。coli doctor會精確報告缺了什麼編譯器、模型檔、權限以及如何修復coli plan則輸出 hotVRAMwarmRAMcold硬碟三層規劃、每個放置的理由與預期瓶頸並附上機器可讀的next_actions清單。4. 深入了解主題文件Benchmark、社群實測數據、品質測量docs/benchmarks.md調校選項、策略、學習型快取、預先載入docs/tuning.mdWindows 11 原生建置含 CUDA DLLdocs/windows.mdCUDA 後端、VRAM 專家層級、全部常駐docs/cuda.mdApple Silicon Metal 後端docs/metal.mdOpenAI 相容 API、KV slots、網頁儀表板docs/api.md文法強制草稿結構化輸出docs/grammar-draft.md環境變數完整清單docs/ENVIRONMENT.md五、調校重點把 knob 對到你的機器最重要的參數參數作用--temp T取樣溫度預設 0.7 nucleus 0.90——為 int4 調過0 greedy 決定性輸出--topp 0.7自適應專家 top-p少 30–40% 磁碟讀取有損會印出警告--ngen N每個回答的最大 token 數chat中:more可續接被截斷的回答--repin N每 N 個輸出 token 自適應 RAM/VRAM 熱門專家RAM_GBn比保守自動偵測多給專家快取一些 RAMPINstats PIN_GBg從實測用量檔固定最熱門的專家DRAFTnMTP 草稿深度0關閉推測GRAMMARg.gbnf文法強制草稿用於受限 JSON/NDJSON 輸出THINK1啟用 GLM-5.2 的推理區塊PILOT1路由器前瞻磁碟預取URING1Linux 專用批次專家 I/O隱含PIPE1PIPE0關閉非同步專家載入 pool預設開啟重疊pread與 matmulDIRECT1O_DIRECT 專家讀取Strix Halo 上單獨實測 65%COLI_NUMA1多插槽主機上交錯常駐權重CACHE_ROUTE1快取感知的 max-rank 路由opt-in學習型快取與專家固定自動歷史固定與自適應 LRU 共用同一份專家 RAM 預算。colibrì 會限制自動固定以保留無固定時的 LRU 容量顯式PINPIN_GB設定始終優先。PINauto直接從模型目錄中持續更新的.coli_usage歷史播種固定集。--repin Nopt-in在安全的回合邊界用衰減的 session 熱度圖取代過冷的固定專家並以 25% 遲滯與每次最多四次交換防止層級抖動。可重現性COLI_TEMP0 greedy/argmax 決定性輸出。跨執行的位元組級可重現DRAFT0若要連 kernel family/GPU 相依都排除再加上IDOT0 COLI_CUDA0。MTP 接受率在不同引擎版本、--topp組合下不可直接比較完整脈絡見 issue #163。對話暖啟動coli chat在每一輪結束後將壓縮的 MLA KV 快取持久化到.coli_kv約 182 KB/token、增量 append、crash-safe。關掉聊天、隔天重開模型仍記得整段對話零 re-prefill——已驗證與不中斷的 session 逐位元組相同。:reset清除它KVSAVE0停用。常用環境變數速查完整清單見 docs/ENVIRONMENT.mdCTX預設 4096KV 快取的上下文長度上限KV_SLOTS預設 1serve 模式下的獨立 KV 對話槽數1–16PIPE_WORKERS預設 8PIPE1時的 pthread 載入執行緒數COLI_MODEL_DIRSCOLI_MODEL_MIRROR多碟分流鏡像專家讀取跨碟並行COLI_DISK_WEIGHTS分碟比例如1,1為 50/50、9,3為快慢組合未設則啟動時實測COLI_API_KEYserve 的 bearer tokenCOLI_ALLOWED_HOSTSDNS-rebinding 防護的額外信任主機。六、API、網頁儀表板與工具鏈OpenAI 相容 APIcoli servecoli serve保持單一模型進程常駐暴露純文字 OpenAI 相容 HTTP APIgateway 只用 Python 標準函式庫推論仍在零相依的 C 引擎中執行cd c COLI_MODEL/nvme/glm52_i4 COLI_API_KEYlocal-secret ./coli serve \ --host 127.0.0.1 --port 8000 --model-id glm-5.2-colibri curl http://127.0.0.1:8000/v1/chat/completions \ -H Authorization: Bearer local-secret \ -H Content-Type: application/json \ -d {model: glm-5.2-colibri, messages: [{role: user, content: Hello}], stream: true}已實作端點GET /v1/models、GET /v1/models/{model}、POST /v1/chat/completions與 legacyPOST /v1/completions支援 JSON 回應、SSE 串流、usage 計數、max_tokens、temperature、top_p與最多四個自訂stop序列。同一連接埠也提供Anthropic Messages API/v1/messagesClaude Code 可直接以ANTHROPIC_BASE_URLhttp://localhost:8000連上。並發請求進入有界 FIFO 佇列--max-queue 8--queue-timeout 300飽和或逾時回傳 OpenAI 格式的 HTTP 429。網頁儀表板coli webcd web npm install npm run build # 一次 ./coli web --model model-dircoli web與coli serve的差異只在是否自動開啟瀏覽器。儀表板包含Chat即時指標——tok/s、time-to-first-token、佇列等待Runtime panel硬體CPU、GPU VRAM、RAM、核心數、排程器與即時的 19,456 專家層級長條VRAMRAM硬碟Brain把整個模型呈現為 76×256 的活皮質——顏色 儲存層級亮度 路由熱度每輪被路由到的專家閃白Atlas以 3D 星系呈現實測專家圖譜tools/expert_atlas/analyze.py --web發布experts.json。轉換、診斷與 benchmark 工具./coli convert --model dir從 FP8 逐 shard 轉換為 gs64 int4 容器可中斷續傳python tools/datapoint.py --snap model --shard container一行命令產生完整實測數據點機器資訊 冷/暖解碼 磁碟自動從config.json選擇 GLMInklingKimi K3OLMoEQwen3.6DeepSeek V4./coli bench品質 benchmarkhellaswag / arc_challenge / mmlu各 40 題--limit 200可加題數gcc -O2 -fopenmp iobench.c -o iobench ./iobench shard 19 64 8 1以引擎相同的方式並行 19 MB 隨機讀測量你的磁碟參數1為 O_DIRECT。七、儲存庫結構與擴充性Makefile 根目錄建置檢查入口 c/ ├── colibri.c GLM 引擎主檔 ├── quant.h 量化 matmul kernel ├── sample.h 取樣與 stop-set ├── kv_persist.h .coli_kv 磁碟持久化 ├── telemetry.h 儀表板協定、統計 ├── st.h, tok.h, json.h 執行階段標頭檔 ├── backend_cuda.* 選用的 CUDA 層級 ├── Makefile 建置與本機檢查 ├── coli 使用者介面 CLI ├── openai_server.py OpenAI 相容 HTTP gateway ├── setup.sh 單一指令完成本機設定 ├── tools/ 離線轉換、fixtures 與 benchmarks ├── scripts/ 長時間轉換輔助工具 └── tests/ 零相依套件的 C 與 Python 測試 web/ 瀏覽器 UI純 OpenAI API client desktop/ 包裝網頁 UI 的 Tauri v2 桌面 shell docs/ 參考文件、實驗與媒體檔執行階段路徑刻意維持扁平、易讀colibri.c加上模組化標頭檔。在儲存庫根目錄執行make、make check與make clean都會轉交給引擎的 Makefile。引擎已擴充到七個模型家族——GLM-5.2744B、GLM-5.3-Flash321B含視覺、Inkling975B、Kimi K32.8T、DeepSeek V4 Flash284B、Qwen3.635B-A3B與OLMoE7B——各自一個 C 檔案c/glm53.c、c/kimi_k3.c、c/inkling.c、c/deepseek_v4.c、c/qwen36.c、c/olmoe.c共用同一套coli chat / serve / web前端。階層演算法與模型無關任何帶路由專家的 MoE 都能用相同方式分層。八、研究使命與參與方式colibrì 將每一項最佳化都視為猜想直到受控的端到端 A/B 證明。目前主要開放的問題包括路由歷史是否能比普通 LRU 更好地配置專家學習型固定區已改善重複負載但也會對 prompt 過度擬合多顆 SSD 能否將獨立頻寬轉化為解碼速度加權鏡像分片路由已實作並通過驗證但需要真實雙碟 A/B硬體感知規劃器能否自動接近每台機器的最佳配置無損或品質受控的表示能否充分減少權重搬運以及路由感知推測在接近全常駐前能否獲利MTP 在約 85% expert hit 時實測過 -32%。參與實驗時請記錄硬體、commit、模型容器、完整指令、prompt、快取狀態、吞吐、TTFT、expert hit、讀取位元組數與品質檢查每次只改一個變數重複執行並附上原始日誌。實驗協議見 docs/benchmarks.md參與規範見 CONTRIBUTING.md。在這裡一個受控的失敗比一個無法解釋的高數字更有價值。colibrì 以 Apache 2.0 授權發布GLM-5.2 權重由 Z.ai 以 MIT 授權發布。引擎以蜂鳥般的配給讓 744B 參數的巨人運轉——25 GB RAM、十二個 CPU 核心以及對硬碟的大量耐心。正如專案反覆強調的高速記憶體不足可以降低速度但不能悄悄重新定義模型——這正是 colibrì 作為「今天就能執行的推論引擎」與「開放研究平台」雙重身分的底線。【免费下载链接】colibriRun frontier MoE models on hardware you already own — pure C, zero deps, experts streamed from disk. Tiny engine, immense model. 项目地址: https://gitcode.com/GitHub_Trending/colibri3/colibri创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考