將 Firebase 新增至 Google AI Studio 應用程式

Google AI Studio 中的建構模式可自動設定 Firebase 服務,並整合至網頁和 Android 應用程式:

  • Cloud Firestore 和 Firebase Authentication (適用於網頁和 Android 應用程式),建構具有永久資料儲存庫和安全登入流程的應用程式。
  • Firebase AI Logic 和 Firebase App Check (適用於 Android 應用程式),直接從行動應用程式安全呼叫 Gemini 模型,不公開 API 金鑰。

只要輸入一個提示並點按幾下,Google AI Studio 代理就能設定 Firebase 專案、將應用程式連結至該專案,並直接在應用程式中生成必要的 Firebase 程式碼和設定檔。

如要進一步瞭解如何在 Google AI Studio 建構全端網頁應用程式和 Android 應用程式,請參閱說明文件。

總覽:為 Google AI Studio 應用程式新增後端

  1. 描述構想:在 Google AI Studio 中建立新應用程式,並描述需要資料庫、驗證或生成式 AI (適用於 Android 應用程式) 的功能。例如,您可以輸入以下提示:

    • Build a shared to-do list app using Firebase as a backend.
    • Build an Android recipe app that uses Firebase AI Logic to suggest meals from ingredients.
  2. 啟用 Firebase 整合:在顯示的資訊卡中,進行設定:

    1. 自訂專案或位置 (選用):按一下「Settings」(設定) 圖示 ,然後選取位置或要使用的 Google Cloud 專案。

    2. 確認所選項目:如要繼續,請按一下「Enable Firebase」(啟用 Firebase) 按鈕。

    接著,代理會自動在 Firebase 專案中設定適用的 Firebase 服務、將應用程式連結至 Firebase 專案,並產生適用的 Firebase 程式碼和設定檔:

    • 網頁應用程式:

      • 可能提供的服務:Cloud Firestore、Authentication和Firebase Security Rules
      • 檔案包括 /src/lib/firebase.ts 和 firestore.rules
    • Android 應用程式:

      • 可能服務:Cloud Firestore、Authentication和Firebase Security Rules;如果應用程式使用 AI 功能:Firebase AI Logic和Firebase App Check
      • 檔案包括 google-services.json、firestore.rules 和 firebase_applet_config.xml
  3. 部署或發布:準備就緒後,即可部署或發布應用程式:

    • 網頁應用程式:依序點選「Share」 >「Publish」選項,將網頁應用程式部署至 Cloud Run。應用程式會自動部署到您在設定期間選取的專案。
    • Android 應用程式:透過 USB 將應用程式安裝到實體裝置,以便在本機測試,或發布給 Google Play 中的特定測試人員,進行內部測試。

    在分享、部署或發布應用程式前,請務必檢查 AI 生成的 Firebase Security Rules。

在開發期間將 Firebase 新增至應用程式

如要在 Google AI Studio 中開發的應用程式中新增 Firebase 整合,您可以在疊代階段隨時使用下列任一選項:

  • 與代理對話:指示代理新增需要資料庫、驗證或 Android 生成式 AI 的功能 (例如 Add a Firestore database to this app 或 Add Firebase AI Logic to summarize notes)。
  • 使用設定選單:依序前往「設定」 >「整合」,然後按一下「Firebase Firestore & Auth」圖塊。

這兩個選項都會啟動 Firebase 整合設定流程,讓您選取專案、設定後端位置,並為應用程式啟用整合功能,如總覽所述。

啟用整合功能後,您隨時可以前往「Settings」(設定) >「Integrations」(整合),然後點選「Firebase Firestore & Auth」圖塊,查看相關設定,包括專案、位置、應用程式支援電子郵件和資料庫 ID。

瞭解 Cloud Firestore 的共用配額

視應用程式建立時間、帳戶資格和平台而定 (Android 應用程式不適用入門級),資料庫可能託管於 Google Cloud 入門級專案或標準專案。不過,無論是哪種情況,由 Google AI Studio 代理佈建的所有 Cloud Firestore 資料庫,都會放在專案中同一個「AI 共用配額」資料庫群組。這些模型都具有以下特徵:

  • 共用配額:群組中的所有資料庫共用使用配額 (詳情請見下文)。
  • 不需 Cloud Billing 帳戶:您不需新增帳單資訊,即可建構及測試應用程式。如要瞭解如何視需要新增帳單資訊,請參閱下方詳細資料。
  • 每日重設:如果達到每日配額上限 (例如每天 5 萬次讀取),服務會暫停群組內所有資料庫,並在隔天太平洋時間午夜左右恢復。

共用配額群組中的 Cloud Firestore 個資料庫共用下列限制:

指標 配額
儲存的資料量 總共 1 GiB
網路輸出 每月 10 GiB
寫入單位 每天 40,000 次寫入
讀取單位 每天 50,000 次讀取
即時更新單元 每天 50,000 次更新

(選用) 新增帳單資訊,取得更多 Cloud Firestore 配額

如果應用程式越來越受歡迎,需要超出 Cloud Firestore 的免付費限制,可以新增帳單資訊,將 Firebase 專案升級至即付即用 Blaze 定價方案。

您可能已基於不同原因 (例如使用 Nano Banana) 為專案新增帳單資訊。如果是這種情況,表示專案已採用 Blaze 定價方案,您可以直接跳到升級資料庫步驟。

步驟 1:新增帳單資訊 (如果尚未新增)

您可以直接在 Google AI Studio 中設定帳單資訊。

  1. 在 Google AI Studio 中,前往「Projects」(專案) 頁面。
  2. 找到要升級的專案,然後按一下旁邊的「設定帳單資訊」。
  3. 按照畫面上的指示選取國家/地區、同意條款,然後新增付款方式或選取現有的帳單帳戶。您可能也需要預付費用 (不適用於 Firebase 和 Google Cloud 服務)。

步驟 2:升級資料庫

即使新增帳單資訊,由 Google AI Studio 代理程式建立的 Cloud Firestore 資料庫仍會保留在共用配額群組中。如要為特定資料庫啟用完整的付費擴充功能,必須手動升級。

  1. 前往 Firebase 控制台,選取要升級資料庫的專案。
  2. 在左側導覽窗格中,依序前往「資料庫和儲存空間」>「Firestore」。
  3. 如果專案包含多個 Cloud Firestore 資料庫執行個體,請選取要升級的執行個體。
  4. 在頁面頂端附近,尋找指出資料庫設有 AI 共用配額上限的橫幅。如要升級,請依序點選「Upgrade database」(升級資料庫) >「Upgrade to pay-as-you-go」(升級至即付即用)。如果沒有看到這個橫幅,表示資料庫不是由 Google AI Studio 代理建立,且不屬於共用配額群組,或已經升級。

停用共用配額並啟用資料庫即付即用計費模式的變更,應該會在幾分鐘內生效。

Security Rules 項生成作業

Google AI Studio 代理會根據應用程式的邏輯自動產生 Firebase Security Rules。這些Security Rules預設為「拒絕」,也就是說,應用程式的使用者只能存取自己的資料。

請注意,如果您直接在 Firebase 控制台中手動調整 Security Rules,Google AI Studio 代理不會知道這些變更,且會在後續的應用程式疊代中覆寫。建議您使用 Google AI Studio 代理程式調整 Firebase Security Rules,確保變更內容能保留下來,並與應用程式的邏輯一致。

Android 應用程式的 Firebase AI Logic 和 App Check

在 Google AI Studio 中建構包含生成式 AI 功能的 Android 應用程式時,代理會自動整合 Firebase AI Logic,並強制執行 Firebase App Check。

Google AI Studio 中的網頁應用程式是從 Cloud Run 的伺服器端執行階段執行 Gemini API 呼叫,而 Android 應用程式則是以用戶端二進位檔 (APK) 的形式發布。如果直接將原始 Gemini API 金鑰嵌入 APK,金鑰可能會遭到擷取,並可能導致帳單濫用。搭配使用 Firebase AI Logic 和 App Check,可驗證對 Gemini API 的要求是否來自應用程式的真實執行個體,進而保護專案。

App Check 在測試和正式環境中的運作方式

Google AI Studio 會設定 App Check,無論您是在測試原型或發布至 Google Play,應用程式都能安全運作,無須手動設定。

  • 測試及分享 (偵錯版本):在 Google AI Studio 模擬器中預覽應用程式、透過 USB 將應用程式安裝到手機,或在 Google AI Studio 中與早鳥測試者分享應用程式時,應用程式會使用 App Check 偵錯權杖,由 Google AI Studio 在背景自動管理。協作者可以立即測試 AI 功能,不必查看 API 金鑰或密鑰。
  • 發布至 Google Play (發布子版本):為 Google Play 建構發布版本時,應用程式會自動切換至 reCAPTCHA Enterprise,使用預先設定的網站金鑰進行正式版認證。發布前,您不必手動連結 Google Play 或設定 App Check 供應商。

使用現有專案

首次啟用 Firebase 整合時,您可以選擇選取現有的 Google Cloud 專案:

  1. 在彈出的資訊卡中,按一下「Settings」(設定) 圖示 。
  2. 選取專案,然後按一下「Enable Firebase」(啟用 Firebase)。

在疊代應用程式時,您也可以使用提示,指示代理使用其他專案,例如:

Add Firestore to this app using project PROJECT_ID.

選擇專案後,會發生以下情況:

  • 系統會使用共用配額,在該專案中佈建新的 Cloud Firestore 資料庫。
  • 系統會設定Firebase Authentication與 Google 登入。
  • 如果是使用生成式 AI 的 Android 應用程式,系統會設定 Firebase AI Logic、Firebase App Check 和 reCAPTCHA Enterprise。系統會自動對 Firebase AI Logic 實施 App Check,保護 API 配額。
  • 服務帳戶將取得 Cloud Firestore 資料庫的存取權。 如要允許從 Google AI Studio 進行管理員存取,系統會將 Cloud Firestore 資料庫的存取權限授予名為 ais-sandbox@PROJECT_ID.iam.gservice.com 的新服務帳戶。這個帳戶只與您的 Google AI Studio 應用程式相關聯。
  • 限制:如果 Firebase 專案已有 Cloud Firestore 資料庫,代理就無法新增其他資料庫。您必須選取其他專案,或建立新的空白專案。

使用 Firebase 控制台

您可以在 Firebase 控制台查看應用程式的資料和設定。如要存取與 Google AI Studio 相關聯的 Firebase 專案,請按照下列步驟操作:

  1. 前往 Firebase 控制台,選取標籤為 AI Studio 的專案。

  2. 在左側導覽窗格中,查看專案中已啟用的服務:

    • 如要查看及編輯儲存的Cloud Firestore資料,請依序前往「Databases & Storage」(資料庫和儲存空間) >「Firestore」。
    • 如要查看或設定 Authentication 設定和資料,請依序前往「安全性」 >「驗證」。
    • 如要監控用量、查看配額或調整 Firebase AI Logic 的設定,請依序前往「AI」 >「AI Logic」。
    • 如要管理 App Check 強制執行、監控認證要求或撤銷偵錯權杖,請依序前往「Security」 >「App Check」。

疑難排解與常見問題

查看常見問題的解答,並瞭解如何解決將 Firebase 整合至 Google AI Studio 應用程式時遇到的問題。

系統如何選取我的 Google Cloud / Firebase 專案和位置?

為應用程式要求 Firebase 後端時,您可以在顯示的資訊卡中選取位置和專案:

  • 自訂專案或位置 (選用):按一下「Settings」(設定) 圖示 ,選取位置或要使用的 Google Cloud 專案,然後按一下「Enable Firebase」(啟用 Firebase)。

但請注意以下事項:

  • 資料庫位置無法變更:選取資料庫位置後,就無法變更該專案的位置。這個選項會做為其他後端服務的預設值。
  • 專案一致性:為確保完美整合,Google AI Studio 會自動為後端和部署作業使用相同專案。您無法在同一個應用程式中,為不同服務使用不同專案。

支援哪些驗證方式?

當您要求設定 Authentication 或登入畫面時,Google AI Studio 代理會設定 Google 登入。如要在應用程式中新增其他登入方式,請按照下列步驟操作:

  1. 在 Firebase 控制台,依序前往「Security」(安全性) >「Authentication」(驗證) >「Sign-in method」(登入方式) 頁面,然後設定所需的登入方式。

  2. 返回 Google AI Studio,請 Google AI Studio 代理協助您使用新的登入方式更新程式碼集。

我可以使用 Google AI Studio 建立行動應用程式 (例如 Android 或 iOS) 嗎?

Google AI Studio 代理支援建立網頁應用程式和 Android 應用程式。Firebase 整合功能支援在網頁和 Android 應用程式中新增 Cloud Firestore 和 Authentication,並支援 Android 應用程式的 Firebase AI Logic 和 Firebase App Check。

Google AI Studio不支援建立 iOS 應用程式。不過,就像所有網頁應用程式一樣,Google AI Studio 建立的網頁應用程式可以透過安裝在行動裝置 (包括 iOS) 上的瀏覽器,以行動網頁應用程式的形式存取。

如要進一步瞭解如何建構 Android 應用程式,請參閱 Google AI Studio 說明文件。

為什麼 Firebase AI Logic 和 App Check 整合功能僅適用於 Android 應用程式,不適用於網頁應用程式?

Android 應用程式是以用戶端二進位檔 (APK) 的形式發布。如果 Android 應用程式使用標準 API 金鑰直接呼叫 Gemini API,任何人都能反編譯 APK、擷取金鑰,並提出未經授權的要求。為避免這種情況,以 Google AI Studio 建構的 Android 應用程式會搭配使用 Firebase AI Logic 和 Firebase App Check,驗證要求是否來自應用程式的真實執行個體。

另一方面,在 Google AI Studio 中建構的網頁應用程式,會使用 Google Gen AI SDK,從安全的伺服器端執行階段 (部署時託管於 Cloud Run) 執行 Gemini API 要求。由於 API 金鑰會保留在伺服器上,不會向用戶端瀏覽器公開,因此這類結構的網頁應用程式不需要用戶端 Firebase AI Logic 和 App Check。

什麼是 firebase-blueprint.json 檔案?

Google AI Studio 代理會使用這個中繼檔案,瞭解應用程式的程式碼集。請勿手動修改這個檔案,否則代理可能會產生不正確的程式碼或不安全的 Security Rules。

如果看到「超過配額」錯誤訊息,該怎麼辦?

如果達到 Cloud Firestore 配額限制,代表應用程式已達 Cloud Firestore 資料庫共用配額群組的每日用量上限。解決方法有兩種:

  • 選項 1:等待:配額會在太平洋時間每天午夜左右重設。
  • 選項 2:升級:升級至即付即用 Blaze 定價方案。
    • 如果 Google AI Studio 代理程式為您設定 Cloud Firestore,您必須使用「新增帳單資訊以取得更多 Cloud Firestore 配額」一節所述的「Upgrade database」(升級資料庫) 按鈕,將資料庫移至一般付費狀態。如果您手動設定 Cloud Firestore,則不需要使用「Upgrade database」(升級資料庫) 按鈕。

如果收到「缺少權限或權限不足」錯誤訊息,該怎麼辦?

當應用程式嘗試讀取或寫入資料至 Cloud Firestore 資料庫,但要求遭到 Security Rules 拒絕時,就會發生這項錯誤。這表示 Security Rules 根據目前的驗證狀態或資料路徑,不允許嘗試的操作。按一下「Fix error」(修正錯誤) 按鈕,提示 Google AI Studio 代理嘗試修正 Security Rules。

刪除 Google AI Studio 應用程式後,Firebase 後端會受到什麼影響?

在 Google AI Studio 中刪除應用程式,並不會自動刪除連結的 Firebase 專案、Cloud Firestore 資料庫或 Firebase Authentication 設定。

如果您新增了 Firebase 後端,則必須手動前往 Firebase 控制台,刪除專案或清除個別資源 (例如 Cloud Firestore 資料庫執行個體和 Authentication 供應商),確保所有資料和設定都已移除。

Google AI Studio 代理可以刪除或編輯 Cloud Firestore 資料庫中的資料嗎?

Google AI Studio 代理可協助佈建必要的後端資源,並生成程式碼和 Security Rules。雖然代理本身無法直接刪除、編輯或操控 Cloud Firestore 資料庫中的資料項目,但可以將程式碼寫入應用程式,執行這些動作。如要執行資料管理工作 (例如刪除 項目),請前往 Firebase 控制台的「Databases & Storage」(資料庫和儲存空間) > 「Firestore」頁面。

我所屬的組織使用 Google Cloud,我可以將 Google AI Studio 應用程式連結至組織 Google Cloud 環境中的現有專案嗎?

可以,請確認 Firebase 專案位於 Google Cloud 機構資料夾中,然後使用下列任一方法連結專案:

  • 啟用期間:首次在 Google AI Studio 中啟用 Firebase 整合時,請在顯示的資訊卡中選取現有專案。按一下「Settings」(設定) 圖示 ,然後選取專案。
  • 疊代期間:如果您已啟用 Firebase,或想稍後切換專案,可以使用類似以下的提示,指示代理使用現有專案:

      Add Firestore to this app using project PROJECT_ID.
    

為什麼我在 Firebase 控制台找不到特定文件?

如果 AI Studio 代理將資料儲存至巢狀路徑 (例如 /users/user1/messages/msg1),但未先建立父項文件 (user1),就會建立所謂的不存在父項文件。這些文件不會顯示在 Firebase 控制台中,因此在瀏覽 Cloud Firestore 資料庫時可能難以找到。雖然這不會影響應用程式的執行方式,但您通常可以向 AI Studio 代理說明問題,提示其建立缺少的父項文件。

詳情請參閱「不存在的上層文件」。

我可以選擇 Cloud Firestore 資料庫的位置嗎?

可以,首次在 Google AI Studio 中啟用 Firebase 整合功能時,可以選取 Cloud Firestore 資料庫的位置。

請注意,您選取的位置會套用至 Google AI Studio 代理在該 Firebase 專案中建立的「所有」Cloud Firestore 資料庫。設定後,這些資料庫的位置即無法變更。

升級 Cloud Firestore 資料庫後,可以將其移回共用配額群組嗎?

資料庫移出共用配額群組並轉換為一般付費執行個體後,您可以使用 curl 指令將其移回共用配額群組。請注意,共用配額群組中的所有資料庫都必須使用相同版本,且位於相同區域。

  • PROJECT_ID:Firebase 專案 ID。如要查看這個 ID,請前往 Firebase 控制台的「 Settings」(設定) > 「General」(一般) 頁面。

  • DATABASE_ID:Cloud Firestore 資料庫 ID,與小工具 ID 相同。如要查看這個資料庫 ID,請前往 Google AI Studio 的「Settings」 >「Integrations」,然後點選「Firebase Firestore & Auth」圖塊。

curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
"https://firestore.googleapis.com/v1/projects/PROJECT_ID/databases/DATABASE_ID?updateMask=free_tier_limited" \
-d '{"free_tier_limited": true}'

Google 如何在 Google AI Studio 使用我的資料 (例如程式碼和提示)?

如要瞭解資料的使用方式,請參閱《Gemini API 附加服務條款》。

我收到 Google Cloud 寄來的電子郵件,內容提到「您的 Google Cloud 專案有可公開存取的 Google API 金鑰」。我需要做些什麼?

如果您收到 Google Cloud 寄來的電子郵件,主旨為「Google Cloud 專案的 Google API 金鑰可公開存取」,且電子郵件中列出的 API 金鑰是您的 Firebase API 金鑰,請確認該 API 金鑰符合下列規定,才能安全地加入程式碼或設定檔。您可以在 Google Cloud 控制台的「APIs & Services」(API 和服務) >「Credentials」(憑證) 頁面中驗證下列項目。

  • 這是 Firebase 應用程式使用的 API 金鑰,僅用於 Firebase 服務。這些按鍵通常稱為 Browser key (auto created by Firebase)、Android key (auto created by Firebase) 或 iOS key (auto created by Firebase)。
  • 金鑰的「API 限制」許可清單中,包含所有必要的 Firebase 相關 API。
  • 「API 限制」許可清單中沒有其他 API。具體來說,清單不應包含 Generative Language API。

此外,請務必按照建議,為使用的 Firebase 產品採用 Firebase Security Rules 和 App Check。

如要進一步瞭解 Firebase 的 API 金鑰,並查看常見問題清單,請參閱「瞭解如何使用及管理 Firebase 的 API 金鑰」。