您可以在 Firebase 控制台中使用 Firebase 中的 Gemini,協助您編寫要納入用戶端程式碼中的查詢和變異。說明您要以自然語言產生的查詢或變異,Firebase 中的 Gemini 會提供其 GraphQL 對等項目。在 Firebase 主控台中執行並測試輸出內容,然後將完成的查詢和變異式複製到程式碼中。
如要進一步瞭解查詢和變異數,請參閱「Data Connect 結構定義、查詢和變異數」一文。
AI assistance for Data Connect in the Firebase console 如何使用您的資料
AI assistance for Data Connect in the Firebase console 不會將您的提示或回覆內容做為模型的訓練資料。詳情請參閱「Google Cloud 專用 Gemini 如何使用您的資料」。
設定「AI assistance for Data Connect in the Firebase console」
如要在 Data Connect 中設定 AI 協助功能,請按照「在 Firebase 中設定 Gemini」一文所述,在 Firebase 中啟用 Gemini,然後繼續按照「在 Firebase 中使用 Gemini 產生 GraphQL 查詢與異動」一文的說明操作。
使用 Gemini 版 Firebase 產生 GraphQL 查詢和異動
如要使用 AI assistance for Data Connect in the Firebase console 根據自然語言產生 GraphQL:
在專案中開啟 Data Connect,然後在「服務」下方選取資料來源。
按一下 [Data] (資料)。
按一下「幫我寫 GraphQL」pen_spark 圖示。
在隨即顯示的文字欄位中,說明您要以自然語言產生的查詢或異動,然後按一下「Generate」。
舉例來說,如果使用 Firebase Data Connect 快速入門導覽課程和 Build with 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 定義這些值,例如
按一下程式碼編輯器中的「執行」,查看結果。
如要在程式碼編輯器中測試多個查詢或變異,請務必為這些查詢或變異命名。例如,下列查詢命名為 GetMovie
。將游標移至查詢或 mutation 的第一行,即可啟用「Run」按鈕。
query GetMovie($myKey: Movie_Key!) {
movie(key: $myKey) { title }
}
AI assistance for Data Connect in the Firebase console 用途
以下各節說明用途範例,包括您可以要求 Gemini 協助您建立異動內容以填入 Data Connect,然後查詢其驗證結果。
建立可根據使用者輸入內容,將電影新增至資料庫的 mutation
在本節中,您將逐步瞭解如何使用自然語言為變異操作產生 GraphQL,以便用於填入資料庫。本例假設您使用 Firebase Data Connect 說明文件和「使用 Data Connect 進行建構」程式碼研究室中所用的電影資料庫結構定義。
在 Firebase 主控台中開啟 Data Connect。
選取服務和資料來源,然後開啟「資料」分頁。
按一下「Help me write 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 thse 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 說明文件和 Build with 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 assistance for Data Connect in the Firebase console」的問題
請參閱「在 Firebase 中疑難排解 Gemini」。
定價
AI assistance for Data Connect in the Firebase console 可在 Firebase 的 Gemini 中使用,而 Firebase 則包含在 Gemini Code Assist 中。詳情請參閱「Gemini 版 Firebase 定價」一文。
後續步驟
- 如要進一步瞭解查詢和變異,請參閱「Data Connect 結構定義、查詢和變異」。
- 進一步瞭解 Gemini 版 Firebase。