技術・理論

LLM推論を5.3倍速くするDoubleとは

記事バナー画像

POINT

  • 推論高速化の新手法「Double」がLLaMA3.3-70Bで5.3倍、Qwen3-32Bで2.8倍のスピードアップを実証。追加学習不要・品質劣化なしで従来の理論上限を突破した。
  • LLM推論の待ち時間はアーキテクチャの工夫で縮まり続けており、AIコーディングツールの応答速度は今後さらに改善される見通しだ。
  • SQLite 3.53.0の開発事例が示すように、WebAssemblyとAIコーディングツールの組み合わせは、ローカル実装の開発フローそのものを変えつつある。

AIコーディングツールの「待ち時間」は何で決まるか

CursorでコードをAIに補完させるとき、Claude Codeに大きなリファクタリングを依頼するとき、あの数秒の間に何が起きているか。大規模言語モデル(LLM)がトークンを一つずつ逐次生成している。生成速度は「推論スループット」と呼ばれ、モデルが大きいほど遅くなる。70Bや32Bクラスのモデルが精度の高い回答を返せる一方で応答が遅い理由はここにある。

この問題を迂回するために生まれたのがSpeculative Decoding(投機的デコーディング)だ。小さなドラフトモデルが先に複数トークンを予測し、大きなターゲットモデルが一括で検証する。検証を並列処理できる分だけ速くなる仕組みだが、ドラフトとターゲットの速度比によって理論上の天井が決まってしまうという制約がある。

「理論上限を破る」とはどういうことか——Doubleの仕組み

Double: Breaking the Acceleration Limit via Double Retrieval Speculative Parallelismは、この天井を突き破るために設計された手法だ。2026年1月にarXivに登場し、ACL2026 Mainに採択されている。

従来のSpeculative Decoding(SD)やその並列拡張であるParallel Speculative Decoding(PSD)が抱える問題は二つある。速度比によって決まる理論上限と、途中のトークンが棄却されたときに生じる計算の無駄とパイプラインの停止だ。棄却のたびに処理が止まれば、並列化の恩恵が半減する。

Doubleはこれを「二重の取得」で解決する。ドラフトモデルが反復的な検索投機を繰り返すことで理論上限を超える予測を可能にし、ターゲットモデルが「権威的な取得(authoritative retrieval)」によってマルチトークンのガイダンスを生成することでロールバックなしに棄却を軽減する。両者の精度と効率を両立させる新しい同期メカニズムが核心だ。

追加学習不要かつ品質劣化なしという点が実用上の最大の利点になる。既存モデルにそのまま乗せられる。実験ではLLaMA3.3-70Bで5.3倍、Qwen3-32Bで2.8倍のスピードアップを達成し、追加学習を必要とするEAGLE-3を上回ると報告されている。

Speculative Decoding手法の比較:Doubleの優位性
Best 理論上限 速度比による限界 訓練の要否 ドラフトモデルの追加学習 ロールバック 棄却時のパイプライン停止 スピードアップ LLaMA3.3-70Bでの実績 SD PSD EAGLE-3 Double あり あり 不明 なし 不要 不要 必要 不要 あり あり あり なし - - Doubleより低速 最大5.3倍 (LLaMA3.3-70B) 理論上限 訓練 ロールバック 速度 SD あり 不要 あり - PSD あり 不要 あり - EAGLE-3 不明 必要 あり Double 未満 Best Double なし 不要 なし 最大 5.3倍
Doubleは理論上限を突破し、訓練不要・ロールバックなしで最大5.3倍の高速化を実現する。

5.3倍速は開発者にとって何を意味するか

数字だけ見ると「研究成果」で終わりがちだが、70Bクラスのモデルが5倍速くなるとAIコーディングツールの体験は別物になる。Claude Codeで長いコードベースを分析させると数十秒待つ場面がある。それが10秒以下に縮まれば、思考の流れを途切れさせずに対話できる。

クラウドAPIの応答速度はサービス側のインフラ改善に依存するが、ローカル推論の文脈ではDoubleのような手法が直接効いてくる。M4 MacやRTX 4090といった手元のハードウェアで70Bモデルを動かすとき、推論アーキテクチャの選択が待ち時間を数倍変える。追加学習不要であれば、llama.cppやOllamaのようなローカル実行環境への実装も現実的な話になる。

DoubleはSDとPSDのギャップを埋めることでRetrieval Precision-Efficiency Dilemmaを解決し、広範なモデル学習を必要とする手法を上回るスピードアップを訓練なしで実現するとしている。

SQLite 3.53.0が示す「ローカル×AI」の実装フロー

挿絵

推論高速化の話と並べて見ておきたいのが、SQLite 3.53.0のリリースにまつわる開発エピソードだ。2026年4月11日に公開されたこのバージョンでは、ALTER TABLEでのNOT NULL制約・CHECK制約の追加・削除、新しいjson_array_insert()関数、CLIの結果フォーマット改善などが加わった。

結果フォーマットの改善を担ったのは「Query Results Formatter」という新しいライブラリで、Simon Willison氏はClaude Codeを使ってこのライブラリをWebAssembly(ブラウザやサーバー上でネイティブに近い速度で動くバイナリ形式)にコンパイルし、試用用のPlaygroundを作成したと述べている。電話しながら作業したという点も含め、AIコーディングツールが「考える道具」ではなく「手を動かす道具」として機能している場面だ。

WebAssemblyへのコンパイルという従来ならハードルの高い作業が、AIコーディングツールとの対話で完結した。これはSQLiteの話であると同時に、ローカル実装の開発フローがどう変わっているかを示す具体例でもある。推論が速くなるほど、「思いついたらすぐ試す」サイクルの回転は上がる。

まとめ

Doubleの5.3倍スピードアップは、追加学習不要・品質劣化なしという条件で既存モデルにそのまま乗せられる点で実用に近い。ローカルLLMを使っている開発者は、llama.cppやOllamaへの実装動向を追う価値がある。SQLiteのWebAssembly事例が示すように、推論が速くなれば「試してから考える」開発サイクルそのものが変わる。速度改善の研究を遠い話として流さず、自分のツールチェーンに繋げて読む習慣が、今の差になる。