Cactus ComputeがNeedle 2をリリース――14MBの軽量言語モデル
Cactus Computeが、リソース制約のあるデバイス向けに最適化された45Mパラメータの言語モデル「Needle 2」をオープンソースでリリースした。単一の14MBバイナリとして動作し、ツール呼び出しや構造化抽出に対応する。
モデルの仕様と性能
Needle 2は45M個のパラメータを持つモデルで、CQ2-bit量子化により14MBに圧縮されている。セッション全体は28MBのRAMで実行可能だ。デコード速度はハードウェアによって異なり、Raspberry Pi 5では500トークン/秒以上を達成。Meta Quest 3SやApple Vision ProといったVRデバイスでは400~1,500トークン/秒、200ドル未満のスマートフォンでは300~700トークン/秒の範囲で動作する。
モデルはApache 2.0ライセンスで提供され、Hugging Faceで重みが公開されている。アーキテクチャはシンプルアテンションネットワークの知見に基づいており、256トークンのスライディングウィンドウを使用したKVキャッシュを採用している。学習には115Bトークンの独自コーパスで事前学習を実施し、その後38Bトークンのポストトレーニングが行われた。
計算効率と最適化
Needle 2は1トークンあたり70MFLOPsの計算量で動作する。これは同じパラメータ数の従来型トランスフォーマーの87MFLOPsや、Needle 2と同じ幅と深さの従来型トランスフォーマーの164MFLOPsと比較して効率的だ。ネットワークはCortex-M4、M7、M55向けにベアメタルで単一スレッドコンパイルされ、静的ライブラリとしてシップされている。
ツール呼び出し性能の評価
Needle 2の性能は複数のベンチマークで検証されている。Google Mobile Actionsベンチマーク(961行)ではNeedle 2が63.7%の精度を達成し、LFM2.5 230Mの69.1%およびFunctionGemma 270Mの64.0%と比較される。Seal-Tools域内テスト(700行)ではNeedle 2が32.6%の精度を記録し、LFM2.5 230Mの26.9%を上回った。その他DroidCall(200行)、Seal-Tools域外テスト(654行)、BFCL v4単一ターン(3,641行)のベンチマークでも評価されている。
実機での運用実例
Pebbleは「Index 01」アプリ内でNeedle 2をローカルで実行し、音声リクエストからアクションへの変換を行っている。Pebbleは「Index Ring には画面がないため、話しかけるとアクションが毎回実行されなければならず、インターネット接続の有無にかかわらない。Cactus Needleをアプリ内でローカルに実行し、クラウドに依存しない。モデルのフットプリントは非常に小さく、パフォーマンスが私たちを失望させることはない」と述べた。
筆者の見立て
- Needle 2の設計は、200ドル未満のデバイス向けのオンデバイスAI実現を主眼としていると解釈している。
- 近年のエッジAIはMacやPC向けを意味してきたが、実際のエッジは廉価なハードウェアが大多数である、との立場を示唆している。
- 照明を点灯させるのにフロンティアモデルは必要ないとの見方を示している。
- ツール呼び出しには小さなモデルで十分という想定が、その後の設計全体の基礎となっていると論じている。
- ほとんどのデバイスリクエストは日常的な制御であり、エスカレーションは稀にとどまることから、デフォルトパスがプライベートで瞬時かつ無料のまま保たれるという可能性を示唆している。
- 小さなモデルは事後的な量子化の下では性能低下が著しいとの解釈を提示している。
- すべてのアーキテクチャ上の選択は、ターゲットハードウェア上でのベンチマークを通じてそのパラメータ数の正当性を得ているとの主張をしている。
この記事は元記事の事実のみに基づいて自動生成されました。
出典
Cactus Compute、「Needle 2 - The 14 MB Agentic LLM for Tiny Devices | Cactus」、https://cactuscompute.com/needle