Googleの最新AI「Gemma 4」がブラウザ上で完全に動くようになりました。しかもAPIキー不要、課金なし、ネット接続もいりません。

この記事でわかること:

  • Gemma 4をブラウザで動かす仕組みとその背景
  • ExcalidrawでAIフロー図を生成する具体的な手順
  • TurboQuantがなぜKVキャッシュの圧縮を実現できるのか
  • 利用上の注意点と現実的なユースケース

https://github.com/teamchong/turboquant-wasm

AIを使ったフロー図生成の「コスト問題」

ExcalidrawのようなダイアグラムツールにAIを組み込もうとすると、従来はオンラインモデルのAPIを呼び出す必要がありました。使うたびにトークンを消費し、料金が積み上がっていきます。

個人利用や社内ツールへの組み込みなら許容できても、たとえば「ちょっとしたフロー図を何十枚も試行錯誤しながら作る」ような用途だとコストが気になります。

この問題を解決したのが、開発者teamchongがGoogleの新アルゴリズム「TurboQuant」を使って作成したOSSプロジェクトです。

ブラウザでGemma 4を動かす仕組み

https://teamchong.github.io/turboquant-wasm/draw.html

このデモページを開くと、Excalidraw上にAI入力欄が現れます。テキストを入力するだけで、フロー図を自動生成します。処理はすべてローカルで完結しており、入力内容が外部サーバーに送られることはありません。

動作の核心にあるのが「KVキャッシュの圧縮」です。大規模言語モデルは会話の文脈を記憶するために「KVキャッシュ」と呼ばれる一時メモリを使いますが、これがモデルのブラウザ実行における大きなボトルネックになっていました。

TurboQuantはこのKVキャッシュのベクトルを約6倍に圧縮し、さらに圧縮したままの状態で検索・演算できます。解凍のコストが不要になるため、ブラウザ上のGPU(WebGPU)でリアルタイムに処理できるようになりました。

実際の使い方

必要なのは以下の2点だけです。

  • デスクトップ版Chrome 134以上
  • 3.1GBのGemma 4 E2Bモデル(初回アクセス時に自動ダウンロード)

手順はシンプルです。

  1. デモページ(https://teamchong.github.io/turboquant-wasm/draw.html)にアクセスする
  2. 初回はモデルのダウンロードを待つ(3.1GB)
  3. テキスト入力欄に作りたいフロー図の内容を日本語で入力する
  4. 自動生成されたExcalidraw図が表示される

日本語入力にも対応しています。

実測パフォーマンス

実際の動作速度は以下のとおりです(参考:小众软件の検証より)。

  • 生成速度:約24トークン/秒
  • エンドツーエンド速度:約22.7トークン/秒(準備・計算含む)
  • フロー図1枚の生成時間:32.9秒(747トークン)
  • KVキャッシュ使用量:15.5MB(圧縮前の37MBから約2.4倍圧縮)

1枚30秒強という速度は、手作業でExcalidrawを操作する時間と比較すれば十分に実用的です。

TurboQuantとは何か

TurboQuantはGoogle Researchが発表したベクトル量子化アルゴリズムで、論文はICLR 2026に採択されています(arxiv: 2504.19874)。

従来のベクトル量子化(PQやOPQなど)と比べた主な違いは2点です。

事前学習が不要。 従来手法はデータに合わせた事前学習が必要でしたが、TurboQuantはinit({ dim, seed })を呼ぶだけで即座に任意のベクトルをエンコードできます。

内積の精度を保てる。 一般的なMSE(平均二乗誤差)最適化の量子化器は内積の推定にバイアスが生じます。TurboQuantはその後に1ビットのQJL(Quantized Johnson-Lindenstrauss)変換を適用することでバイアスを取り除いています。

KVキャッシュへの適用では3.5ビット/チャンネルで品質ニュートラル(元の精度と同等)、2.5ビット/チャンネルでわずかな劣化にとどまるという結果が論文に示されています。

npmパッケージとしても使える

このプロジェクトはnpmパッケージとして公開されており、自分のWebアプリに組み込むことも可能です。

npm install turboquant-wasm

WebGPUが利用できる環境では自動的にGPUを使い、利用できない場合はWASM(WebAssembly)のCPU処理にフォールバックします。TypeScript対応でencode()decode()dot()のAPIが用意されています。

注意点

  • 初回ダウンロードが3.1GBあるため、モバイル回線での利用には向きません
  • WebGPUが必要なため、現時点ではデスクトップ版Chromeが実質的な動作環境です(Firefox・Safariはバージョンによっては動作しない場合があります)
  • ローカル実行のため処理速度はユーザーのGPUに依存します

まとめ

TurboQuantを使ってGemma 4をブラウザで動かすこのプロジェクトは、「AI機能をサーバーレスで提供したい」という開発者のニーズに対して具体的な答えを示しています。APIコストのかかる機能をローカル実行に置き換えるアプローチは、Excalidrawのような作図ツールに限らず、さまざまなWebアプリへの応用が考えられます。

ソースコードはMITライセンスで公開されています。