Chrome 内蔵 Gemini Nano (Canary) インストール & セットアップ手順

Chrome Canary 版でローカルLLM (Gemini Nano) を有効にするための手順です。

[!NOTE]
この機能は実験的であり、仕様が頻繁に変更される可能性があります。このガイドは 2024年〜2025年初頭時点の情報を元にしています。

Early Preview Program について:
公式には Early Preview Program への登録が必要とされていますが、ローカルでの開発・実験用途(window.ai の試用など)であれば、登録なしでも以下の手順(フラグ有効化)だけで動作するケースがほとんどです。
ただし、本格的なWebサイトへの組み込み(Origin Trialトークンの発行)や、最新情報の受信には登録が推奨されます。まずは以下の手順を試してみて、動作しない場合に登録を検討してください。

1. Chrome Canary のインストール

まだインストールしていない場合、Chrome Canary 公式サイトからダウンロードしてインストールしてください。
※ 既にインストール済みの場合は、最新バージョンにアップデートしてください(推奨: バージョン 128以上)。

2. フラグ設定の有効化

Chrome Canary を起動し、アドレスバーに chrome://flags と入力して設定ページを開きます。
以下の2つのフラグを検索し、設定を変更してください。

  1. Prompt API for Gemini Nano

    • 検索ワード: Explainable AI または Prompt API
    • 設定値: Enabled
    • ※ 見つからない場合は Enables optimization guide on device を探して Enabled にしてください。
  2. Optimization Guide On Device Model

    • 検索ワード: Optimization Guide
    • 設定値: Enabled BypassPerfRequirement
    • ※ 高性能なNPU搭載機でも、開発用としては BypassPerfRequirement が推奨されます。

設定変更後、画面下に表示される 「Relaunch」 ボタンを押してブラウザを再起動してください。

3. モデルのダウンロードを確認

Webブラウザ上で動作するAIモデル(約2GB〜)をダウンロードします。

  1. アドレスバーに chrome://components と入力します。
  2. リストの中から Optimization Guide On Device Model を探します。
    • 項目が見当たらない場合、少し待つか、再度フラグ設定を確認してください。
  3. 「Check for update」 (アップデートを確認)ボタンをクリックします。
    • "Downloading..." と表示されたら完了まで待ちます(数分かかる場合があります)。
    • "Up-to-date" と表示され、バージョン番号(例: 2024.5.21.1031 など)が表示されていれば準備完了です。
    • もし "Version: 0.0.0.0" のままでダウンロードが始まらない場合、しばらくブラウザを開いたまま待機するか、再起動を試してください。

4. 動作確認

正しくインストールされたか確認します。

  1. 適当なWebページを開き、開発者ツールを開きます(F12 キー または 右クリック > 検証)。
  2. 「Console」タブに以下のコードを入力して Enter を押します。
await window.ai.languageModel.capabilities();

結果:

  • { available: "readily" } が返ってくれば正常に動作しています。
  • { available: "after-download" } の場合、まだモデルのダウンロード中か準備中です。
  • { available: "no" } の場合、設定が間違っているか、ハードウェア要件などを満たしていない可能性があります。

トラブルシューティング

🔴 window.aiundefined になる場合

コンソールで window.ai が見つからないというエラーが出る場合、以下の点を確認してください。

  1. Chrome Canaryのバージョン: バージョン 128以降であることを確認してください。
  2. フラグの再確認: chrome://flags で以下の2つが確実に有効になっているか確認してください。
    • Prompt API for Gemini Nano -> Enabled
    • Optimization Guide On Device Model -> Enabled BypassPerfRequirement
  3. ブラウザの再起動: フラグ変更後の「Relaunch」ボタンだけでなく、一度ウィンドウを完全に閉じてから(Dock上のアイコン右クリック→終了)、再度起動してみてください。
  4. モデルのダウンロード状況:
    • chrome://componentsOptimization Guide On Device ModelVersion: 0.0.0.0 のままでないか確認してください。
    • 「Check for update」を押してもダウンロードが始まらない場合、数分〜数十分待つ必要がある場合があります。
    • ダウンロードが進まない場合、chrome://on-device-internals を開き、「Install optimization guide model」のようなボタンがあれば押してみてください。

🟡 モデルがダウンロードされない場合

  • ディスクの空き容量が十分か確認してください(2GB以上推奨)。
  • ネットワーク接続が安定しているか確認してください。
  • 言語設定を「英語(US)」に変更して再起動するとダウンロードが始まるという報告もあります。

🔵 APIの変更と「揺らぎ」について(重要)

現在(2025年初頭時点)のChrome Canaryは、window.ai という標準仕様への移行過渡期」 にあります。

  • 本来のゴール: GoogleやW3Cは window.ai を標準の入り口にしようとしています。
  • 現状: 実装の途中であるため、window.ai が一時的に使えなかったり、以前の実験用インターフェースである window.LanguageModel (グローバル変数) がむき出しで残っていたりします。

以前は「window.ai が古くて廃止」という説もありましたが、最新の動向では window.ai への統合が進んでいるが、Canaryではまだ不安定」 というのが正確なようです。

そのため、確実な動作のためには 「現在動く LanguageModel を使いつつ、将来復活する window.ai にも対応する」 という両構えのコードが必要になります。

開発者ツールで以下のコマンドも試してみてください:

// window.ai がダメでも、こちらが動く場合がある
// 以下のコマンドを実行して、エラーにならずオブジェクトが返ればOKです
await LanguageModel.create();

No output language was specified... という警告が出ても、オブジェクト(LanguageModel {...})が返ってくれば動作しています。

🟣 Chrome拡張機能で使う場合の注意(重要)

もし Chrome 拡張機能(Popupなど)からこの機能を使いたい場合、通常の書き方では動きません。 拡張機能のポップアップ画面は「隔離された世界」にあるため、window.ai や LanguageModel にアクセスできないからです。

これを解決するには、chrome.scripting.executeScript を使う際に、必ず world: 'MAIN' を指定して、Webページ側の世界で実行させる必要があります。


chrome.scripting.executeScript({
  target: { tabId: tab.id },
  world: 'MAIN', // ★これが必須!これがないとAIが見えません
  func: yourFunction,
  // ...
});

現段階で、拡張機能などを作成・利用する際は、このように「どちらでも動く」ように作られているかどうかが重要になります。最新の情報は Chrome DevelopersBuilt-in AI Early Preview Group を確認してください。