Back to Blog

Needle: Geminiのツール呼び出しを26Mパラメータのマイクロモデルに蒸留

May 13, 2026by Ichiban Team
aimachine-learningllmstool-callinggeminiedge-computing

Hero

過去1年でエージェント型ワークフローを構築した経験があるなら、ある根本的なジレンマに直面したはずだ。ツール呼び出しには高度な知能が必要であり、その知能は従来、巨大なモデルによってのみ提供されてきた。我々は、巨大なAPIを介して関数呼び出しをルーティングするか、数ギガバイトに及ぶローカルモデルのレイテンシに甘んじることに慣れきってしまっている。

しかし今日、そのパラダイムは転換を迎えた。Cactus ComputeがHacker Newsの「Show HN」に投稿したあるプロジェクトが、即座に我々の目を釘付けにした。それがNeedleである。これはGoogleのGemini 3.1 Flash Liteから、ツール呼び出しに特化して蒸留されたわずか2,600万(26M)パラメータの超特化型モデルだ。詩を書くことも、Pythonスクリプトを生成することもない。ユーザーの意図をツールのスキーマにマッピングし、完璧なJSONを出力する。ただその1点のみを、圧倒的なスピードで実行する。

#何が起きたのか?

Cactus Computeは、Hugging FaceにてNeedleの重みを含むプロジェクト全体をMITライセンスでオープンソース化した。26Mというパラメータ数は、驚くほど小さい。FunctionGemma-270MやQwen-0.6Bなど、これまで「極小」と呼ばれていたモデルと比較しても、さらに一回りも二回りも小さいサイズである。

このサイズにもかかわらず、Needleは割り当てられたタスクにおいて凄まじい能力を発揮する。スマートホームの制御やメッセージングから、ナビゲーション、タイマーに至るまで、15の異なるカテゴリにわたるシングルショットのツール呼び出しを難なく処理する。Gemini 3.1 Flash Liteの潜在的な能力を、目的に特化したアーキテクチャへと蒸留することで、スキーマを解析し引数を抽出するために数十億のパラメータは必要ないことを彼らは証明したのだ。

#なぜこれが重要なのか:エッジにおける極限の効率性

Needleの最も魅力的な点は、単にサイズが小さいことではない。そのサイズによって何が可能になるか、である。INT4に量子化された場合、モデル全体が消費するメモリはわずか約14MBに収まる。

この数字の意味を少し考えてみてほしい。このモデルを動かすのに専用のGPUクラスターは必要ない。最新のCPUすら、ほとんど必要としないのだ。これにより、これまで不可能だった環境での、洗練されたローカルファーストのツール呼び出しが実現する。

  • ウェアラブルデバイス: スマートウォッチやARグラスが、クラウドとの通信による遅延を完全に排除し、音声コマンドをローカルで構造化されたAPIコールに変換できるようになる。
  • IoTデバイス: スマートホームハブが、サーバーを経由することなく、ESP32やローエンドのARMチップ上で意図のルーティングを処理可能になる。
  • モバイルアプリ: アプリにモデルをネイティブで組み込むことで、レイテンシゼロのUIインタラクションを保証しつつ、クエリをデバイス内に留めることでユーザーのプライバシーを保護できる。

パフォーマンスの面でも、Needleはまさにモンスターである。コンシューマー向けのハードウェアにおいて、Prefillで6,000トークン/秒Decodeで1,200トークン/秒という速度を叩き出す。これは、ユーザーインタラクションの観点から見れば、人間の目がローディング画面を認識するよりも早くJSONペイロードが生成され、実行の準備が整うことを意味する。

#技術的影響:「FFNレス」アーキテクチャ

エンジニアとして、今回のリリースで最も興味深いのは、Needleの背後にあるアーキテクチャの選択だろう。Cactus Computeのチームは、Simple Attention Network (SAN) と呼ぶアーキテクチャを導入した。

標準的なTransformerアーキテクチャは、Multi-Head AttentionとFeed-Forward Network (FFN、またはMLP) を交互に重ねて構築されるのが一般的だ。ディープラーニングの世界では、Attentionがコンテキストの動的なルーティングを処理するのに対し、FFNはモデルの「記憶」として機能し、世界の知識や事実を保持していると広く理解されている。

Needleにおけるブレイクスルーは、**「ツール呼び出しは推論や記憶のタスクではなく、検索と組み立てのタスクである」**と見抜いた点にある。

利用可能なツールのスキーマリストとユーザーのクエリをモデルに入力する際、モデルはフランスの首都を知っている必要はない。ユーザーの要求のセマンティックなスパン(例:「リビングの電気を消して」)を、提供されたJSONスキーマの必要なスロットにマッピングするだけでよいのだ。

そのため、NeedleはFFN層を完全に排除している。純粋なAttentionとゲーティング機構のみで構成された12層のエンコーダーと8層のデコーダーを採用した。MLPを取り除くことでパラメータの重みの大部分を削減し、関数呼び出しに必要な特定のルーティング能力を犠牲にすることなく、計算オーバーヘッドを劇的に低下させることに成功している。

#学習パイプライン

このような特化型モデルを学習させるには、巧妙なパイプラインが必要だった。

  1. 事前学習 (Pretraining): モデルは2,000億トークンを用いてゼロから学習された。極小サイズであるため、このフェーズは16基のTPU v6eチップのクラスターを使用し、わずか27時間で完了した。
  2. 事後学習 (Distillation): チームはGemini 3.1 Flash Liteを使用して、20億トークンに及ぶ非常に複雑な合成関数呼び出しデータを生成した。このフェーズはわずか45分で終了し、Geminiの堅牢な指示追従能力とスキーマ解析の振る舞いをSANアーキテクチャへと効果的に転移させた。

#今後の展望

Needleは現在すでに利用可能であり、導入の障壁は事実上ゼロに等しい。リポジトリをクローンし、依存関係をインストールすれば、数分で独自のローカルスキーマを使った実験を開始できる。

ローカルでテストしたい場合、Cactus Computeは以下のようにシンプルなセットアップ手順を提供している。

git clone https://github.com/cactus-compute/needle.git
cd needle && source ./setup
needle playground

これを実行するとローカルのプレイグラウンドが立ち上がり、カスタムのツールスキーマ(例えば社内のマイクロサービスAPIやローカルのシステムスクリプトなど)を注入して、モデルが瞬時にコマンドをルーティングする様子を確認できる。モデル自体が非常に小さいため、独自のドメイン特化型ツール向けにファインチューニングを行うのも、驚くほど安価かつ高速である。

#結論

Needleのリリースは、「マイクロモデル」という哲学が正しいことを強く証明している。汎用的な推論の限界を押し広げるため、基盤となるフロンティアモデルは今後も巨大化し続けるだろうが、ソフトウェアエンジニアリングの実行レイヤーは全く逆の方向へと進んでいる。

純粋にコンテキスト駆動のルーティングタスクにおいてFFNを取り除くなど、特定の運用パターンに合わせてアーキテクチャを積極的に削ぎ落とすことで、我々は超最適化されたローカルAIコンポーネントの時代へと突入しつつある。Needleは、エージェントシステムの機械的な配管作業において、蒸留とアーキテクチャのミニマリズムが、単なるパラメータの規模に勝ることを証明した。我々Ichiban Toolsとしても、この技術をローカルのユーティリティパイプラインに組み込む実験を間違いなく進めていく予定である。