詳細解説
なぜこれが革新的なのか
397Bパラメータのモデルは通常、数百GBのVRAMを持つサーバークラスタでしか動かない。Flash-MoEは「全パラメータを一度にメモリに載せる必要はない」という発想の転換で、ノートパソコンでの実行を可能にした。MoEモデルは推論時に全パラメータの一部しか使わないという特性を最大限に活用している。
SSDストリーミングの仕組み
209GBのモデル全体をRAMに載せるのではなく、必要な専門家の重みだけをSSDからオンデマンドで読み込む。各層には512個の専門家がいるが、各トークンの推論で使うのはたった4個。つまり全体の0.8%しか使わない。この疎性のおかげで、SSDの帯域幅でも十分なスピードが出る。
技術スタック
| 項目 | 詳細 |
|---|---|
| 言語 | Objective-C (~7000行) + Metal (~1200行) + C (~449行) |
| 量子化 | 4ビット(2ビットも可、5.74tok/sだがJSON不安定) |
| GPU活用 | Apple Metal GPUシェーダ |
| 線形代数 | Accelerate BLAS |
| 依存 | Python/PyTorch/llama.cpp等のフレームワーク不要 |
パフォーマンス
MacBook Pro M3 Max(48GB RAM)で4.4トークン/秒。対話には十分な速度だ。2ビット量子化にすると5.74tok/sまで上がるが、JSON出力が不安定になるトレードオフがある。SSDの読み込み速度がボトルネックになるため、より高速なSSDを搭載したマシンならさらなる改善が見込める。