您可以在 Firebase 中使用 Gemini,藉此編寫要納入用戶端程式碼的結構定義、查詢和變異。
只要描述應用程式並概述其資料模型,或是以自然語言描述要產生的查詢或異動,Firebase 中的 Gemini 就會提供相應的 GraphQL。
這項 AI 輔助功能可用於許多開發情境:
- 在 Firebase 主控台中執行及測試輸出內容,將結構定義和作業部署至實際工作環境,並將這些項目同步處理至本機開發環境。
- 在本機的 Data Connect VS Code 擴充功能中,使用 Gemini Code Assist 搭配本機 PostgreSQL 資料庫和模擬器設計、執行及測試。
如要進一步瞭解查詢和變異數,請參閱「Data Connect 結構定義、查詢和變異數」一文。
AI assistance for Data Connect 如何使用您的資料
如要進一步瞭解 Firebase 中的 Gemini 如何使用您的資料,請參閱「Firebase 中的 Gemini 如何使用您的資料」。
設定「AI assistance for Data Connect」
如要在 Data Connect 中設定 AI 輔助功能,請按照「在 Firebase 中設定 Gemini」一文所述,在 Firebase 中啟用 Gemini,然後繼續按照「在 Firebase 中使用 Gemini 生成 GraphQL 查詢與異動」一文的說明操作。
在 Firebase 中使用 Gemini 產生 GraphQL 結構定義、查詢和異動
Data Connect 的 AI 輔助功能可在許多情境和工作流程中使用。
在 Firebase 控制台中建立新的應用程式及其初始結構定義和作業
建立新的 Firebase 專案並設定新應用程式開發作業時,Firebase 主控台會自動提供結構定義和作業產生作業的 AI 協助功能。
這個設定流程可讓您說明應用程式,然後說明 AI 協助功能:
- 產生完整的 Data Connect 結構定義
- 產生實用的核心查詢和變異內容,您可以將這些內容與用戶端程式碼整合。
您可以將在主控台中建立的這些資源同步處理至本機開發環境,以便繼續與客戶整合。
入門指南說明瞭這個工作流程。
新增要在 Firebase 控制台中執行的新查詢和變異式
如要使用 AI assistance for Data Connect 根據自然語言產生 GraphQL,請按照下列步驟操作:
在專案中開啟 Data Connect,然後在「Services」下方選取資料來源。
按一下 [Data] (資料)。
按一下「幫我寫 GraphQL」pen_spark 圖示。
在顯示的文字欄位中,以自然語言描述您要產生的查詢或變異式,然後按一下「產生」。
舉例來說,如果您使用 「使用 Data Connect 建構 (網頁)」程式碼研究室中參照的電影資料來源,可以要求「傳回 2022 年最受歡迎的五部電影,並依評分由高至低排序」,系統可能會傳回以下結果:
query TopMovies2022 { movies(where: {releaseYear: {eq: 2022}}, orderBy: [{rating: DESC}], limit: 5) { id title rating releaseYear } }
查看回覆:
- 如果回應看起來正確無誤,請按一下「插入」,將回應插入程式碼編輯器。
- 如果回覆可以進一步調整,請按一下「編輯」,更新提示,然後點選「重新生成」。
接受回應後,請在「參數」部分中設定下列項目 (如適用):
- 變數:如果查詢或 mutation 包含變數,請在此定義這些變數。使用 JSON 定義這些值,例如
{"title":"The Matrix", "releaseYear":"1999"}
。 - 授權:選擇要用來執行查詢或變異的授權內容 (「管理員」、「已驗證」或「未驗證」)。
- 變數:如果查詢或 mutation 包含變數,請在此定義這些變數。使用 JSON 定義這些值,例如
在程式碼編輯器中按一下「Run」,查看結果。
如要在程式碼編輯器中測試多個查詢或變異,請務必為這些查詢或變異命名。例如,以下查詢名為 GetMovie
。將游標移至查詢或變異的首行,即可啟用「Run」按鈕。
query GetMovie($myKey: Movie_Key!) {
movie(key: $myKey) { title }
}
在本機原型設計期間建立初始結構定義和作業
使用 Visual Studio Code 和 Data Connect VS Code 擴充功能時,Gemini Code Assist 可為您本機的原型設計工作提供 AI 輔助功能。
擴充功能可讓您說明應用程式,然後Gemini Code Assist:
- 產生完整的 Data Connect 結構定義
- 產生實用的核心查詢和變異內容,您可以將這些內容與用戶端程式碼整合。
本機原型設計入門指南說明瞭這個工作流程。
更多 AI assistance for Data Connect 用途
以下各節將說明範例用途,其中一個用途是請 Gemini 協助您建立變異來填入 Data Connect,然後查詢該變異以驗證結果。
建立可根據使用者輸入內容,將電影新增至資料庫的 mutation
在本節中,您將逐步瞭解如何使用自然語言為變異動作產生 GraphQL,以便用於填入資料庫。這個範例假設您使用的是 Firebase Data Connect 說明文件和「使用 Data Connect 建構 (網頁)」程式碼研究室中使用的電影資料庫架構。
在 Firebase 主控台中開啟 Data Connect。
選取服務和資料來源,然後開啟「資料」分頁。
按一下「幫我寫 GraphQL」pen_spark 圖示,然後在隨即顯示的方塊中輸入查詢:
Create a movie based on user input.
點選「產生」,系統會傳回變異。舉例來說,Gemini 可能會傳回類似以下的突變:
mutation CreateMovie($title: String!, $releaseYear: Int!, $genre: String!, $rating: Float!, $description: String!, $imageUrl: String!, $tags: [String!] = []) @auth(level: USER) { movie_insert(data: { title: $title, releaseYear: $releaseYear, genre: $genre, rating: $rating, description: $description, imageUrl: $imageUrl, tags: $tags }) }
查看輸出內容。如有需要,請按一下「編輯」來調整提示,然後點選「重新產生」。
接著,按一下「插入」,將變異式插入資料編輯器。
如要執行這個異動,您必須新增變數。在「參數」部分,開啟「變數」並加入一些測試變數:
{"title":"My amazing movie", "releaseYear":2024, "genre": "Comedy", "rating": 8, "description": "A new movie to test mutations", "imageUrl": "", "tags": ["comedy","space travel"]}
按一下「執行」。
接下來,請建立查詢,確認電影是否已新增。按一下「幫我寫 GraphQL」pen_spark,然後在隨即顯示的方塊中輸入提示:
List all movies from 2024 that include all of these tags: 'space travel', 'comedy'.
Gemini 可能會傳回類似以下的回應:
query ComedySpaceTravelMovies2024 @auth(level: PUBLIC) { movies( where: { releaseYear: { eq: 2024 }, tags: { includesAll: ["space travel", "comedy"] } } ) { id title imageUrl releaseYear genre rating description tags } }
插入並執行查詢。你新增的電影應會顯示在「History」欄位中。
建立查詢,根據使用者提供的類型和評分列出評論
在本節中,您將逐步瞭解如何使用自然語言產生查詢的 GraphQL。這個範例假設您使用的是 Firebase Data Connect 說明文件和「使用 Data Connect 建構 (網頁)」程式碼研究室中使用的電影資料庫。
在 Firebase 主控台中開啟 Data Connect。
選取服務和資料來源,然後開啟「資料」分頁。
按一下「幫我寫 GraphQL」pen_spark 圖示,然後在隨即顯示的方塊中輸入查詢:
List all movie reviews, based on user-configurable genre and ratings.
點選「產生」,系統會傳回查詢。舉例來說,Gemini 可能會傳回以下查詢:
query ListReviewsByGenreAndRating($genre: String, $minRating: Int, $maxRating: Int) @auth(level: PUBLIC) { reviews(where: { movie: { genre: {eq: $genre} }, rating: {ge: $minRating, le: $maxRating} }) { id user { username } movie { title genre } rating reviewText reviewDate } }
查看輸出內容。如有需要,請按一下「編輯」來調整提示,然後點選「重新產生」。
接著,按一下「插入」,將變異式插入資料編輯器。
如要測試這項查詢,您必須新增變數。在「參數」部分,開啟「變數」,並加入要用於測試的變數:
{"genre":"sci-fi", "minRating":4, "maxRating":9}
按一下「執行」。
設計可與第三方 AI 輔助工具搭配使用的提示
如同所有 AI 輔助工具和服務專員,提示越完善,輸出內容就越實用。
當您在 Firebase 中向 Gemini 提供自然語言提示時,助理會在幕後將您的輸入內容轉譯為更完整的提示。
如果您未在 Firebase 中使用 Gemini 或其他 Firebase AI 輔助工具,且正在使用 Cursor 或 Windsurf 等第三方 AI 工具,您可以使用類似的完整提示,取得更精確的 Data Connect 建議。
我們已發布提示範本,供您下載、調整及複製到 IDE 中:
下載及修改後,請在熟悉的工具 (例如 Cursor 或 Windsurf) 中建立提示,如下所示:
在 Cursor 中 (請務必查看 Cursor 最新的操作說明):
- 按一下右上方的「設定」圖示。
- 選取「規則」分頁標籤。
- 在「專案規則」下方,按一下「新增規則」按鈕。
- 複製並貼上規則。
在 Windsurf 中 (請務必參閱 Windsurf 最新操作說明):
- 按一下右上角的「漸層」按鈕,即可開啟「漸層」視窗。
- 在 Cascade 的右上方滑桿選單中,按一下「Customizations」圖示,然後前往「Rules」面板。
- 按一下「+ 全域」或「+ 工作區」按鈕,分別在全域或工作區層級建立新規則。
- 複製並貼上規則。
排解 AI assistance for Data Connect 問題
請參閱「在 Firebase 中疑難排解 Gemini」。
定價
AI assistance for Data Connect 是 Firebase 中 Gemini 的一部分,適用於個別使用者。
詳情請參閱Gemini 在 Firebase 中的定價。
後續步驟
- 如要進一步瞭解查詢和變異,請參閱「Data Connect 結構定義、查詢和變異」。
- 如要進一步瞭解 Firebase 中的 Gemini,請參閱相關文章。