官方技能,用於將 Firebase AI Logic(Gemini API)整合到網頁應用程式中。涵蓋設定、多模態推論、結構化輸出與安全性。
Firebase AI Logic 基礎
概述
Firebase AI Logic 是 Firebase 的一項產品,讓開發者可以透過客戶端 SDK 在行動裝置和網頁應用程式中加入生成式 AI。您可以直接從應用程式呼叫 Gemini 模型,無需管理專屬的後端。Firebase AI Logic 先前稱為「Vertex AI for Firebase」,代表了 Google 為行動裝置和網頁開發者提供的 AI 整合平台的演進。
它支援兩種 Gemini API 提供者:
- Gemini Developer API:提供免費方案,適合原型開發,以及隨用隨付方案用於正式環境。
- Vertex AI Gemini API:適合需要企業級正式環境就緒的規模化應用,需要 Blaze 方案。
預設使用 Gemini Developer API,僅在應用程式需要時才使用 Vertex AI Gemini API。
設定與初始化
先決條件
- 開始之前,請確保已安裝 Node.js 16+ 和 npm。如果尚未安裝,請先安裝。
- 在開始之前,先確認使用者感興趣的開發平台:Android、iOS、Flutter 或 Web。
- 如果平台不受支援,請引導使用者前往 Firebase 文件,了解如何為其應用程式設定 AI Logic(與使用者分享此連結:https://firebase.google.com/docs/ai-logic/get-started)。
安裝
此函式庫是標準 Firebase Web SDK 的一部分。
npm install -g firebase@latest
如果您位於 Firebase 目錄(包含 firebase.json),使用以下指令時,目前選取的專案會標示為「current」:
npx -y firebase-tools@latest projects:list
確保目前專案至少關聯一個應用程式:
npx -y firebase-tools@latest apps:list
使用 init 指令初始化 AI Logic SDK:
npx -y firebase-tools@latest init ailogic
這會自動在 Firebase 控制台中啟用 Gemini Developer API。
更多資訊請參閱 Firebase AI Logic 入門指南。
核心功能
[!WARNING]
重要:使用最新的模型名稱:
請務必查閱 Firebase AI Logic 模型文件 以取得目前支援的模型名稱。請勿使用gemini-2.0-pro或gemini-2.0-flash或其他已停用的舊版模型。
純文字生成
多模態(文字 + 圖片/音訊/影片/PDF 輸入)
Firebase AI Logic 允許 Gemini 模型直接從您的應用程式分析圖片檔案。這可以實現建立標題、回答圖片相關問題、偵測物件以及分類圖片等功能。除了圖片之外,Gemini 還可以透過將其他媒體類型(如音訊、影片和 PDF)作為內嵌資料並附上 MIME 類型來進行分析。對於大於 20 MB 的檔案(作為內嵌資料可能會導致 HTTP 413 錯誤),請將其儲存在 Cloud Storage for Firebase 中,並將其 URL 傳遞給 Gemini Developer API。
聊天對話(多輪)
使用 startChat 自動維護歷史記錄。
串流回應
為了改善使用者體驗,讓部分結果在到達時立即顯示(類似打字效果),請使用 generateContentStream 而非 generateContent,以更快顯示結果。
使用 Nano Banana 生成圖片
[!WARNING]
使用最新的圖片模型名稱:
請務必查閱 Firebase AI Logic 模型文件 以取得目前支援的圖片生成(Nano Banana)模型名稱。
- 需要升級至 Blaze 隨用隨付計費方案。
使用內建 googleSearch 工具進行搜尋接地
支援的平台與框架
支援的平台與框架包括 Android 的 Kotlin 和 Java、iOS 的 Swift、網頁應用程式的 JavaScript、Flutter 的 Dart,以及 Unity 的 C Sharp。
進階功能
結構化輸出(JSON)
強制回應使用特定的 JSON 結構。
裝置端 AI(混合模式)
網頁應用程式的混合裝置端推論,Firebase Javascript SDK 會自動檢查 Gemini Nano 是否可用(安裝後),並在裝置端或雲端執行提示之間切換。這需要特定步驟才能在 Chrome 瀏覽器中啟用模型使用,更多資訊請參閱 混合裝置端推論文件。
安全性與正式環境
App Check
[!WARNING]
重要的安全要求: 為了安全地使用 AI Logic,您必須在應用程式上設定 App Check。這可以防止未經授權的用戶端使用您的 API 配額並存取您的後端資源。
請參閱 使用 reCAPTCHA Enterprise 的 App Check 以取得設定說明。
Remote Config
考慮到您不需要在程式碼中硬編碼模型名稱(例如特定的模型版本字串)。使用 Firebase Remote Config 動態更新模型版本,無需部署新的用戶端程式碼。請參閱 遠端變更模型名稱。
[!WARNING]
重要:需要後端佈建
對於所有平台(Flutter、Android、iOS、Web),您必須執行npx firebase-tools init ailogic來佈建服務。flutterfire configure僅處理用戶端設定,不會啟用 AI 服務,導致PERMISSION_DENIED錯誤。
初始化程式碼參考
| 語言、框架、平台 | Gemini API 提供者 | 內容 URL |
|---|---|---|
| Web 模組化 API | Gemini Developer API(開發者 API) | firebase://docs/ai-logic/get-started |
| iOS (Swift) | Gemini Developer API | ios_setup.md |
| Flutter (Dart) | Gemini Developer API | flutter_setup.md |
[!WARNING]
重要:使用最新的模型名稱:
請務必查閱 Firebase AI Logic 模型文件 以取得目前支援的模型名稱。請勿使用gemini-2.0-pro或gemini-2.0-flash或其他已停用的舊版模型。
參考資料
Web SDK 程式碼範例與使用模式
iOS SDK 程式碼範例與使用模式
Flutter SDK 程式碼範例與使用模式






