ホームへ戻る

邊緣 AI 與工具呼叫

Needle 2、4,500万パラメータのツールモデルを14MBに圧縮し、スキーマ文法でオンデバイス呼び出しを制約

Cactus Computeはこのほど、Needle 2のPython API、クロスプラットフォーム実行、Apache 2.0ライセンスを整備し、モデルカードも継続的に更新している。ピークメモリ28MBでツール選択と構造化抽出を実行するが、速度と精度に関する情報は依然として主に公式テストに基づいている。

Adam majewski · CC BY-SA 3.0 · Image source
zh-Hant

Needle 2は、ツール呼び出しモデルをスマートフォン、ブラウザ、Raspberry Pi、さらには一部のマイクロコントローラにも組み込める規模まで縮小した。モデルはわずか4,500万パラメータで、Cactus Quantsにより約14MBのCQ2 2-bitバイナリへ圧縮されており、公式によると、セッション全体のピークメモリは約28MBだという。プロジェクトは8月20日前後にPythonパッケージを集中的に更新し、公開APIの型ヒント、Python 3.9互換性、CLIのクラッシュ修正、プラットフォーム別ダウンロード方式を追加した。モデルカードも8月22日に再更新され、コードとウェイトのライセンスはMITからApache 2.0へ変更された。

アーキテクチャは、単にTransformerを小型化したものではない。Needle 2のSimple Attention Networkは、従来のFFNを固定Walsh–Hadamard変換と学習可能なゲートの組み合わせで置き換え、GQA、ハッシュ化n-gramを用いたengram key-value memory、4レーン残差構造のmulti-lane hyper-connectionsを導入している。推論には256-tokenのスライディングウィンドウを採用する一方、ツール記述をKV sinkとして固定することで、会話が長くなってもメモリ使用量を一定範囲に抑える。ツールが5個を超える場合、内蔵の検索ヘッドがまずschemaのベクトルを作成し、スコア上位5件だけを生成処理へ渡す。選ばれなかったツールは、単にサンプリング確率を下げるのではなく、その呼び出しの文法から除外される。

出力側では、JSON Schemaをbyte-level grammarへコンパイルするため、フィールド型、列挙値、範囲、文字列形式をデコード時に強制できる。各呼び出しには信頼度も付与され、キャリブレーションヘッドの値と呼び出しtokenの確率のうち低い方を採用する。これにより、アプリケーションはしきい値に基づき、そのまま実行するかクラウドモデルへ引き継ぐかを決められる。ただし、この文法が保証するのは形式上の正当性だけであり、正しいツールの選択やパラメータの意味的な正しさまでは保証しない。また、256-tokenのウィンドウは長い推論には適していない。公式はRaspberry Pi 5で毎秒500 decoding tokensを達成できるとしているが、統一されたハードウェア条件、消費電力、第三者による精度テストはまだ不足している。物理デバイスの制御へ導入する際には、引き続き権限チェックと確認ステップを追加する必要がある。

出典

  1. Needle 2 model card
  2. Needle commit history
  3. A Controlled Study of Attention-Only Transformers
  4. How to Design Tool Environments for Needle 2