發布日期:2024 年 12 月 12 日,上次更新日期:2025 年 5 月 20 日
透過內建的 AI API,網頁應用程式可以執行 AI 輔助工作,無須部署或管理自己的 AI 模型。我們正努力為這些 API 制定跨瀏覽器的標準。
需求條件
如要使用內建 AI,必須符合模型和硬體需求。
模型
Translator 和 Language Detector API 使用專家模型。所有其他 API 都使用語言模型,可在桌機和筆電上在本機執行。
Summarizer API、Writer API、Rewriter API 和 Proofreader API 僅支援文字對文字模式。提示 API 具備多模態功能。
Chrome 內建 Gemini Nano
Chrome 使用 Gemini Nano 語言模型。Gemini Nano 不適用於行動裝置。
從 Chrome 140 版起,Gemini Nano 支援以英文、西班牙文和日文輸入及輸出文字。
使用內建 AI API 前,請先確認您已瞭解並同意《Google 生成式 AI 使用限制政策》。
硬體
開發人員和使用者在 Chrome 中透過這些 API 操作功能時,必須遵守下列規定。其他瀏覽器的操作規定可能不同。
語言偵測器和 Translator API 適用於電腦版 Chrome。這些 API 無法在行動裝置上運作。
在 Chrome 中,提示 API、摘要 API、撰寫 API、重寫 API 和校對 API 必須符合下列條件才能運作:
- 作業系統:Windows 10 或 11;macOS 13 以上版本 (Ventura 以上版本); Linux;或 Chromebook Plus 裝置上的 ChromeOS (自 Platform 16389.0.0 以上版本)。 使用 Gemini Nano 的 API 目前不支援 Android、iOS 和 ChromeOS 版 Chrome (非 Chromebook Plus 裝置)。
- 儲存空間:包含 Chrome 設定檔的磁碟區至少要有 22 GB 的可用空間。
- GPU 或 CPU:內建模型可透過 GPU 或 CPU 執行。
- GPU:視訊記憶體必須超過 4 GB。
- CPU:RAM 16 GB 以上,CPU 核心 4 個以上。
- 網路:無限量數據或不計量的連線。
瀏覽器更新模型時,Gemini Nano 的確切大小可能會有所不同。如要判斷目前大小,請前往 chrome://on-device-internals。
開始建構
在開發的不同階段,您可以使用多種內建的 AI API。部分功能已在 Chrome 穩定版推出,部分功能則僅供來源試用計畫參與者使用,其他功能則僅供搶先預覽計畫參與者使用。
每個 API 都有專屬的入門和模型下載說明,適用於本機原型設計,以及透過原始碼試用在實際工作環境中進行原型設計。
建構 Chrome 擴充功能時,可以使用所有這些 API。
下載模型
API 和模型都內建於 Chrome。使用者首次與這些 API 互動時,必須將模型下載至瀏覽器。
如要判斷 API 是否可用且已準備就緒,請呼叫非同步 availability() 函式,該函式會傳回含有下列其中一個值的 Promise:
"unavailable":使用者裝置或要求的工作階段選項不受支援。裝置的電量或磁碟空間可能不足。"downloadable":建立工作階段時需要額外下載項目,可能包括專家模型、語言模型或微調。您可能需要啟用使用者,才能呼叫create()。"downloading":下載作業正在進行中,必須完成才能使用工作階段。"available":你可以立即建立工作階段。
呼叫可用性時,部分 API 需要額外選項。舉例來說,提示 API 必須宣告語言支援:
// Makes sure the model is available for English and Japanese.
await LanguageModel.availability({ languages: ["en", "ja"] });
啟用使用者
如果裝置支援內建 AI API,但尚未下載模型,使用者必須與網頁進行有意義的互動,應用程式才能啟動 create() 工作階段。
使用 UserActivation.isActive 屬性確認使用者在網頁載入完成後,是否直接與網頁互動。這類事件包括輕觸、按一下、按下按鍵、mousedown 或其他黏滯啟用事件。
// Check for user activation.
if (navigator.userActivation.isActive) {
// Create an instance of a built-in API
}
舉例來說,您可以透過 Summarizer API,要求使用者點選「摘要」按鈕來啟動 Summarizer.create(),也可以在使用者開始輸入內容時 (keydown 事件) 建立摘要工具。
在本機主機上使用 API
所有 API 都可在 Chrome 的 localhost 中使用。
- 前往
chrome://flags/#optimization-guide-on-device-model。 - 選取「已啟用」。
- 按一下「重新啟動」或重新啟動 Chrome。
如要使用 Gemini Nano 的 API,也必須將 chrome://flags/#prompt-api-for-gemini-nano 設為「已啟用」或「已啟用多國語言」。您可以在 DevTools 控制台中,確認模型已下載並正常運作。在控制台中執行 await LanguageModel.availability();。
排解 localhost 問題
如果 chrome://flags 中未顯示旗標,請確認你已下載最新版 Chrome。
如果模型無法正常運作,請按照下列步驟操作:
- 重新啟動 Chrome。
- 前往
chrome://on-device-internals。 - 選取「模型狀態」分頁標籤,確認沒有任何錯誤。
- 開啟開發人員工具,然後在控制台中輸入
LanguageModel.availability();。這應該會傳回available。
如有必要,請等待一段時間,然後重複上述步驟。
標準程序
我們正在為這些 API 制定標準,讓它們能在所有瀏覽器上運作。這表示我們已向網路平台社群提議使用這些 API,並將其移至 W3C Web Incubator Community Group,以供進一步討論。
我們正在向 W3C、Mozilla 和 WebKit 徵求各項 API 的意見。
參與討論及分享意見
如果您試用內建 AI 功能後有任何想法,歡迎與我們分享。
- 探索所有內建 AI API。
- 加入搶先體驗計畫,提前瞭解新 API 並加入我們的郵寄清單。
- 如要對 Chrome 的實作方式提供意見,請回報 Chromium 錯誤。
- 瞭解網路標準。