Google AI Studio 的「建構模式」可自動設定 Cloud Firestore 和 Firebase Authentication 並整合至網頁應用程式,方便您建構具有持續性資料儲存空間和安全登入流程的應用程式。只要輸入提示詞並按幾下滑鼠,Google AI Studio 代理程式就能設定 Firebase 專案、將應用程式連結至該專案,並直接在應用程式中產生所有 Cloud Firestore 和 Authentication 程式碼。
總覽:在 Google AI Studio 應用程式中新增後端
描述您的構想:在 Google AI Studio 中建立新應用程式,並描述需要資料庫或驗證的功能。舉例來說,你可以輸入以下提示:
Build a shared to-do list app using Firebase as a backend.啟用 Firebase 整合服務:在隨即顯示的資訊卡中,您可以自訂設定:
- 選取位置 (選用):使用位置下拉式選單,為資料庫和應用程式選擇位置。
- 選取專案(選用):按一下「設定」圖示 ,選取要使用的專案 Google Cloud,然後按一下「儲存」。
- 確認所選項目:如要繼續,請按一下「啟用 Firebase」按鈕。
接著,代理程式會自動將應用程式連結至 Firebase 專案,並產生必要的 Cloud Firestore 和 Authentication 程式碼,包括
/src/lib/firebase.ts檔案和firestore.rules檔案。部署:準備就緒後,使用「分享」 >「發布」選項,將網頁應用程式部署到 Cloud Run。應用程式會自動部署到您在設定期間選取的專案。
瞭解「Cloud Firestore」的共用配額
Google AI Studio 代理程式佈建的所有 Cloud Firestore 資料庫都會放在 Firebase 專案的同一個資料庫「群組」中。這些特徵都是共通的:
- 共用配額:群組中的所有資料庫共用使用配額 (詳情請參閱下文)。
- 不需帳戶Cloud Billing:您可以在不新增帳單的情況下建構及測試應用程式。如要瞭解如何選擇性新增帳單資訊,請參閱下方詳細資料。
- 每日重設:如果達到每日配額上限 (例如每日 5 萬次讀取),服務會暫停群組內所有資料庫的作業,並在隔天太平洋時間凌晨 12 點左右恢復。
| 指標 | 配額 |
|---|---|
| 儲存的資料量 | 總共 1 GiB |
| 網路輸出 | 每月 10 GiB |
| 寫入單位 | 每天 40,000 次寫入作業 |
| 讀取單位 | 每日 50,000 次讀取作業 |
| 即時更新單元 | 每天 50,000 次更新 |
(選用) 新增帳單資訊,取得更多 Cloud Firestore 配額
如果應用程式獲得關注,且您需要超出 Cloud Firestore 的免費限制,可以將專案升級至即付即用 Blaze 定價方案。
新增帳單 (如果尚未新增):前往 Firebase 控制台,然後將帳單帳戶連結至專案。
升級資料庫:根據預設,Google AI Studio 代理程式建立的 Cloud Firestore 資料庫會繼續使用共用配額,即使您升級定價方案也是如此。如要為特定資料庫啟用完整付費調整功能,請使用
curl指令,手動將資料庫移出群組。DATABASE_ID:Cloud Firestore 資料庫 ID,與小程式 ID 相符;在 Firebase 控制台的Cloud Firestore 資料庫頁面上,於「名稱」欄中找到這個資料庫 ID。
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": false}'
Security Rules 項生成作業
Google AI Studio 代理程式會根據應用程式的邏輯自動生成 Firebase Security Rules。這些 Security Rules 的設計宗旨是「預設拒絕」,也就是說,應用程式的終端使用者只能存取自己的資料。
請注意,如果您直接在 Firebase 控制台手動調整 Security Rules,Google AI Studio 代理程式不會知道這些變更,且這些變更會在後續的應用程式疊代中遭到覆寫。建議使用 Google AI Studio 代理程式調整 Firebase Security Rules,確保變更內容得以保留,並與應用程式的邏輯保持一致。
使用現有專案
首次啟用 Firebase 整合功能時,您可以選擇現有的 Google Cloud 專案 (您必須是專案擁有者):
- 在彈出式資訊卡中,按一下「設定」圖示 。
- 選取專案,然後按一下「儲存」。
反覆測試應用程式時,您也可以透過提示指示代理使用其他專案,例如:
Add Firestore to this app using project PROJECT_ID.
選擇專案後,系統會執行下列動作:
- 系統會使用共用配額,在該專案中佈建新的 Cloud Firestore 資料庫。
- Firebase Authentication,系統會設定「Google 登入」功能。
- 服務帳戶會取得 Cloud Firestore 資料庫的存取權。
如要允許 Google AI Studio 的管理員存取權,系統會授予名為
ais-sandbox@PROJECT_ID.iam.gservice.com的新服務帳戶存取 Cloud Firestore 資料庫的權限。這個帳戶只會與你的 Google AI Studio 應用程式建立關聯。 - 限制:如果 Firebase 專案已有資料庫,代理程式就無法再新增資料庫。Cloud Firestore您必須選取其他專案,或建立新的空白專案。
使用 Firebase 控制台
您可以在 Firebase 管理中心查看應用程式的資料和設定。如要存取與 Google AI Studio 相關聯的專案,請按照下列步驟操作:
- 前往 Firebase 控制台,然後選取標示為「AI Studio」的專案。
- 在左側導覽窗格中,依序點選「建構」 >「Cloud Firestore 資料庫」,即可在 Cloud Firestore 中查看及編輯資料,或依序點選「建構」 >「Authentication」,即可設定 Authentication 設定和資料。
疑難排解與常見問題
本文提供常見問題的解答,並說明如何整合 Firebase 與 Google AI Studio 應用程式,以及如何解決相關問題。
如何選取我的 Google Cloud / Firebase 專案和位置?
為應用程式要求 Firebase 後端時,您可以視需要選取顯示的資訊卡中的位置和專案:
- 選取位置 (選用):使用位置下拉式選單,為資料庫和應用程式選擇位置。
- 選取專案 (選用):按一下「設定」圖示 ,選取要使用的專案 Google Cloud,然後按一下「儲存」。
但請注意以下事項:
- 資料庫位置無法變更:為資料庫選取位置後,該專案就無法再變更。這項選擇將做為其他後端服務的預設值。
- 專案一致性:為確保完美整合,Google AI Studio 會自動為後端和部署作業使用同一個專案。您無法在同一個應用程式中,為不同服務使用不同專案。
支援哪些驗證方法?
Google AI Studio 專員會在您要求設定時設定 Google 登入Authentication。如要設定其他方法,請在 Firebase 控制台中啟用這些方法,並請 Google AI Studio 代理程式協助更新程式碼集。
我可以使用 Google AI Studio 建立行動應用程式 (例如 Android 或 iOS) 嗎?
目前,Google AI Studio 代理程式只能建立網頁應用程式。 如要進一步瞭解 Google AI Studio 代理程式支援的功能,請參閱相關說明文件。
不過請注意,與所有網頁應用程式一樣,透過 Google AI Studio 建立的應用程式可透過行動裝置上安裝的瀏覽器,以行動網頁應用程式的形式存取。
什麼是 firebase-blueprint.json 檔案?
這是 Google AI Studio 代理程式用來瞭解應用程式程式碼集的中繼檔案。請勿手動修改這個檔案,否則代理程式可能會產生不正確的程式碼或不安全的 Security Rules。
如果收到「超過配額」錯誤訊息,該怎麼辦?
達到 Cloud Firestore 配額上限表示應用程式已達到 Cloud Firestore 資料庫共用配額群組的每日用量上限。解決方法有兩種:
- 選項 1:等待:系統每天會在太平洋時間凌晨 12 點左右重設配額。
- 選項 2:升級:升級至即付即用 Blaze 定價方案。
- 如果 Google AI Studio 代理程式為您設定 Cloud Firestore,您必須使用這篇文章中說明的
curl指令新增帳單,才能取得更多 Cloud Firestore 配額,並將資料庫移至一般付費狀態。如果您手動設定 Cloud Firestore,就不必執行curl指令。
- 如果 Google AI Studio 代理程式為您設定 Cloud Firestore,您必須使用這篇文章中說明的
如果收到「缺少權限或權限不足」錯誤訊息,該怎麼辦?
當應用程式嘗試讀取或寫入 Cloud Firestore 資料庫的資料,但要求遭到 Security Rules 拒絕時,就會發生這個錯誤。這表示 Security Rules 不允許根據目前的驗證狀態或資料路徑嘗試執行的作業。按一下「修正錯誤」按鈕,提示 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 控制台的Cloud Firestore資料庫頁面。
我所屬的機構使用 Google Cloud,我可以將 Google AI Studio 應用程式連結至機構 Google Cloud 環境中的現有專案嗎?
可以,確認 Firebase 專案位於Google Cloud機構資料夾中,然後使用下列其中一種方法連結專案:
- 啟用期間:首次在 Google AI Studio 中啟用 Firebase 整合功能時,請在顯示的資訊卡中選取現有專案。按一下「設定」圖示 ,選取專案,然後按一下「儲存」。
疊代期間:如果您已啟用 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 資料庫的位置。
請注意,您選取的地區適用於 所有 Cloud Firestore資料庫,Google AI Studio 代理程式會在該 Firebase 專案中建立這些資料庫。設定完成後,這些資料庫的位置就無法變更。
Google 如何在 Google AI Studio 中使用我的資料 (例如程式碼和提示)?
如要進一步瞭解資料的使用方式,請參閱《Gemini API 附加服務條款》。
我收到 Google Cloud 的電子郵件,內容是「專案 Google Cloud 可公開存取的 Google API 金鑰」。我需要做些什麼?
如果您收到 Google Cloud 的電子郵件,內容是「您的 Google Cloud 專案可公開存取的 Google API 金鑰」,且電子郵件中列出的 API 金鑰是您的 Firebase API 金鑰,請確認該 API 金鑰符合下列規定,可安全地加入程式碼或設定檔。您可以在 Google Cloud 控制台的「API 和服務」>「憑證」面板中驗證下列項目:
-
這是您用於 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 金鑰」。