ライブラリ / SDK
JustVugg/colibri avatar
JustVugg/colibri

colibri: 744B MoEをストレージから推論するCエンジン

25GB-RAM コンシューマ マシンで GLM-5.2 (744B MoE) を実行し、純粋な C、deps ゼロ、エキスパートがディスクからストリーミングされます。小さなエンジン、巨大なモデル。

スター 33,444フォーク 3,512CApache-2.0

ひと目でわかる

これは何?
JustVugg/colibriはVRAM、RAM、NVMeを一つの階層として扱い、限られたメモリで巨大なMoEモデルを動かす設計です。速度の主張はREADMEの測定条件に依存します。
誰に向いている?
colibriは、巨大なMoEを自前のGPUやRAMで読みたい人、推論経路を測定しながらCの実装を追いたい人に向きます。小さなモデルを低遅延で安定運用したい人には、ストレージ待ちと環境依存の調整が負担です。
商用利用できる?
できます。Apache-2.0 は寛容なライセンスで、著作権表示とライセンス表示を残せば、使用・改変・販売が可能です。
今もメンテナンスされている?
されています。直近 1 日以内に新しいコミットがあります。
何の言語で書かれている?
主に C です(GitHub の言語統計による)。

回答はプロジェクトの GitHub データ(最終同期:2026年9月15日)と当サイトの分析に基づくもので、法的助言ではありません。

オープンソース詳細解説

MoEエキスパートをストリーミングする単一ファイルCエンジン

colibriは純粋なCで書かれた推論エンジンで、ランタイム依存関係はゼロです。モデル全体を保持するのに十分なVRAMやRAMを持たないハードウェアでも、超大規模な混合専門家モデルを実行できるように設計されています。READMEには現在実行できる4つのモデルファミリーが記載されています:GLM-5.2(744Bパラメータ)、Inkling(975B)、Kimi K3(2.8T)、OLMoE(7B)です。エンジンはVRAM、RAM、NVMeストレージを1つのメモリ階層として扱い、ルーティングされた専門家をディスクからオンデマンドでストリーミングします。中心的な主張は、モデルが高速メモリに収まる必要はなく、階層をまたいで配置されればよいというものです。READMEはプログラムの正確なバイナリサイズを明記しておらず、数 hundred KB であるとだけ述べています。

なぜ744Bモデルが25GBのRAMで動くのか

744BのMoEモデルは、トークンごとに約40Bのパラメータしか活性化せず、そのうちトークンごとに変化するのは約11GB、すなわちルーティングされた専門家だけです。高密度部分は約17Bパラメータで、int4でRAMに常駐し、約9.9GBです。19,456個のルーティング専門家はディスク上に約370GBあり、レイヤーごとのLRUキャッシュ、学習されたピン留めホットストア、オプションのVRAM階層とともにオンデマンドでストリーミングされます。READMEはこれを「重みのJIT」と説明しています:エンジンはルーティングの熱を観察し、すべてをロードするのではなく実際に必要な専門家だけをステージングします。また、ルーティングが1レイヤー先で71.6%予測可能であると報告していますが、正確な測定条件は明記されていません。

トークンごとの5ステップパスとデュアルSSDミラー

すべてのトークンのすべてのレイヤーは、ルート、ユニオン、プレース、オーバーラップ、ラーニングという同じ5つのステップをたどります。設計目標は、配置が速度のみを決定し、意味論を決して変えないことです。ストレージに関して、colibriは2番目のドライブにモデルの完全なコピーを保持し、エンジンが両方のドライブから同時にストリーミングするデュアルSSD構成をサポートしています。ミラーは起動時にファイルサイズとsafetensorsヘッダーを比較して検証され、書き込まれることはありません。部分的なミラーは許可されており、ミラーの読み取りエラーはプライマリにフォールバックします。READMEには、9GB/sと3GB/sのペアが高速ドライブ単独よりも約33%速く専門家を読み取る例が示されています。ミラー機能は2番目のドライブが存在し読み取り可能であることを要求しますが、ミラーが部分的に欠落している場合の正確な動作が説明されています。

エンドツーエンドの測定で地位を獲得する技術

READMEにはいくつかの技術がリストされています:ルーティングの熱に基づく重みのJIT、バッチ処理された専門家ユニオン、読み取りと計算のオーバーラップ、O_DIRECT、重み付けされたデュアルSSDストライピング、CPU、CUDA、Metal、NUMAにわたる異種実行、そして非圧縮MLA状態よりも57倍小さい圧縮KV状態です。投機的デコードはモデルネイティブのMTPヘッドを使用しますが、READMEはMTPヘッドがint4ではなくint8でなければならないと警告しています。int4ヘッドは受容率が0-4%に低下するためです。デフォルトポリシーはモデルの精度やルーターのセマンティクスを静かに変更することはありません。READMEは、すべての最適化が管理されたエンドツーエンドのA/Bテストで証明されるまで仮説として扱われ、管理された失敗は説明のつかない高速な数字よりも価値があると強調しています。

測定されたものとまだ開かれているもの

READMEは特定のハードウェアでの測定されたデコード速度を報告しています:6×RTX 5090でフルレジデンシー時に5.8-6.8 tok/s、128GBのCPUのみのデスクトップで約1.8 tok/s、単一のRTX 5070 Tiラップトップで1.07 tok/s、25GBの開発ボックスで0.05-0.1 tok/sです。これらはベンチマークテーブルのハイライトとして提示されており、READMEは品質が正しさのゲートで測定されると述べています。オープンハイポセシステーブルには、ルーティング履歴のホールドアウトクロスセッションA/B、コールドキャッシュの1ドライブ対2ドライブのGLM-5.2実行、ハードウェア認識プランナーの比較など、まだ実行する必要がある6つの実験がリストされています。READMEは貢献者に否定的な結果を公開するよう呼びかけ、記録すべきデータを指定しています。

はじめにとソースが語らないこと

READMEは、プログラム(数百KB)とモデル(GLM-5.2 int4コンテナで約372GB)が必要だと述べています。プリビルドリリースはLinux、macOS、Windowsで利用可能で、ランチャーはPython 3を必要としますが、エンジン自体は純粋なCです。ソースからビルドするにはgccまたはclangとOpenMPが必要です。モデルはHugging Faceにあり、READMEはgs64ビルドをint8 MTPヘッドと一緒に使用するよう警告しています。コマンドラインインターフェースには`coli chat`、`coli serve`、`coli web`、および`coli plan`、`coli doctor`、`coli tune`などの診断コマンドが含まれています。READMEはすべてのプラットフォームの完全なコマンド構文を指定しておらず、完全な環境変数リストも文書化していませんが、docs/ENVIRONMENT.mdを参照しています。ライセンスはApache 2.0であり、READMEはGLM-5.2の重みがZ.aiによってMITライセンスでリリースされていると注記しています。

編集部の結論

colibriは、巨大なMoEを自前のGPUやRAMで読みたい人、推論経路を測定しながらCの実装を追いたい人に向きます。小さなモデルを低遅延で安定運用したい人には、ストレージ待ちと環境依存の調整が負担です。最初に `coli doctor` と `coli plan` を実行し、対象モデルの配置、int8 MTPヘッド、実際のキャッシュ状態を確認してください。

公式情報源

  1. Official documentation
  2. Official README
  3. Project repository
  4. Release notes
コミュニティノート

コミュニティノート