使用 AI 輔助功能處理 Data Connect

Firebase 中使用 Gemini,協助製作用戶端程式碼的結構定義、查詢和突變。

以自然語言描述應用程式、資料模型,或所需的查詢或異動,Gemini Firebase 會生成對應的 Data Connect

這項 AI 輔助功能適用於下列開發情境:

  • Firebase 控制台中,您可以產生、測試及部署結構定義和作業。
  • 在本機環境中,您可以使用 Firebase CLI 和 Data Connect VS Code 擴充功能,透過模擬器產生、測試及開發應用程式。
  • AI 輔助開發工具可使用 Firebase MCP 伺服器生成、測試及開發應用程式。

如要進一步瞭解Data Connect 結構定義查詢突變語法,請參閱指南。

AI assistance for Data Connect 如何使用您的資料

詳情請參閱「Gemini 版 Firebase 如何使用您的資料」。

設定「AI assistance for Data Connect

如要在 Data Connect 中使用 AI 輔助功能,請按照「Firebase 中設定 Gemini」一文的說明,在 Firebase 中啟用 Gemini。

Firebase 中使用 Gemini 生成結構定義、查詢和異動

您可以在許多工作流程中使用 AI 輔助功能 Data Connect

Firebase 控制台中

建立 Data Connect 服務時,Firebase 控制台會提供「開始使用 Gemini」體驗。

您可以描述應用程式構想,AI 輔助功能會生成下列內容:

  • 根據您的應用程式構想,提供完整的結構定義。
  • 作業和資料突變範例。

在資料頁面中,您可以使用「幫我撰寫 GraphQL」pen_spark 按鈕,根據自然語言生成及執行作業。請參閱幾個使用案例

如需這項工作流程的說明,請參閱入門指南。您可以在本機開發環境中,繼續使用已部署的結構定義和作業。

在本機環境中

您也可以透過 Firebase CLI 和 Data Connect VS Code 擴充功能取得 AI 輔助。

您可以將應用程式構想提供給 firebase init dataconnect,然後生成下列項目:

  • 根據您的應用程式構想,提供完整的結構定義。
  • 範例作業和種子資料突變。

Data Connect VS Code 擴充功能提供下列功能:

  • 生成/修正作業程式碼鏡頭:將 GraphQL 註解轉換為 Data Connect 作業。
  • Gemini Code Assist 和 Firebase MCP 伺服器完美整合。

如需這項工作流程的說明,請參閱本機原型設計入門指南

搭配 AI 輔助開發工具使用 Firebase MCP 伺服器

Firebase MCP 伺服器可與任何能做為 MCP 用戶端的 AI 輔助工具搭配使用,包括 Gemini CLI、Gemini Code Assist、Cursor、Visual Studio Code Copilot、Claude Desktop 和 Windsurf Editor。

Firebase MCP 伺服器可提供額外的背景資訊和功能,協助 AI 輔助開發工具與 Data Connect 搭配運作。可執行下列操作:

  • 設定新的專案目錄並產生 SDK。
  • 根據編譯錯誤建構及疊代結構定義和作業。
  • 根據需求產生新的結構定義和作業。
  • 針對本機模擬器或後端服務產生及執行作業。
  • 收集現有服務的相關資訊。

如要使用 Firebase MCP 伺服器,請按照下列步驟操作:

  1. 按照這份指南設定 MCP 用戶端。
  2. 詢問與 Data Connect 相關的問題。提示範例:
    1. 「為披薩外送應用程式設定 Data Connect 專案。」
    2. 「Fix Data Connect compile errors.」(修正 Data Connect 編譯錯誤)。
    3. "In the home page, I need to show active chat rooms and friend list. Generate a Data Connect query."
    4. 「What users are in my local Data Connect emulator?」(我的本機 Data Connect 模擬器中有哪些使用者?)
    5. 「我的Data Connect服務位於哪些 Google Cloud 區域?」

產生作業的用途範例

以下各節說明使用範例:

依評分遞減順序傳回前五部電影

如要使用 AI assistance for Data Connect 根據自然語言生成 GraphQL,請按照下列步驟操作:

  1. 在專案中開啟 Data Connect,然後在「服務」下方選取資料來源。

  2. 按一下 [Data] (資料)。

  3. 按一下「幫我寫 GraphQL」pen_spark 圖示。使用自然語言描述要產生的查詢異動,然後按一下「產生」

    舉例來說,如果您使用「使用 Data Connect (網頁) 建構」程式碼研究室中參照的電影資料來源,可以提出「依評分降序排列,傳回 2022 年前五名電影」這類要求,系統可能會傳回下列結果:

    query TopMovies2022 {
      movies(where: {releaseYear: {eq: 2022}}, orderBy: [{rating: DESC}], limit: 5) {
        id
        title
        rating
        releaseYear
      }
    }
    
  4. 查看回覆:

    • 如果回覆內容正確無誤,請按一下「插入」,將回覆內容插入程式碼編輯器。
    • 如果回覆內容不夠完善,請按一下「編輯」,更新提示,然後按一下「重新生成」
  5. 接受回應後,請在「Parameters」(參數) 部分中設定下列項目 (如適用):

    • 變數:如果查詢或突變包含變數,請在此定義變數。使用 JSON 定義這些屬性,例如 {"title":"The Matrix", "releaseYear":"1999"}
    • 授權:選擇要執行查詢或變異的授權內容 (管理員、已驗證或未驗證)。
  6. 在程式碼編輯器中點選「執行」,然後查看結果。

如要在程式碼編輯器中測試多個查詢或突變,請務必為這些項目命名。舉例來說,下列查詢名為 GetMovie。將游標移至查詢或變動的第一行,即可啟用「執行」按鈕。

query GetMovie($myKey: Movie_Key!) {
  movie(key: $myKey) { title }
}

建立變動,根據使用者輸入內容將電影新增至資料庫

本範例說明如何使用自然語言產生 GraphQL 突變,以填入資料庫。本範例假設您使用的是Firebase Data Connect說明文件和「使用 Data Connect (網頁) 建構」程式碼研究室中使用的電影資料庫結構定義。

  1. Firebase 控制台中,開啟 Data Connect

  2. 選取服務和資料來源,然後開啟「資料」分頁標籤。

  3. 按一下「幫我寫 GraphQL」pen_spark 圖示,然後說明變動:

    Create a movie based on user input.
    
  4. 點選「產生」,系統會傳回變動。舉例來說,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
      })
    }
    
  5. 查看輸出內容。視需要點選「編輯」來修正提示,然後點選「重新生成」

  6. 接著,按一下「插入」,將突變插入資料編輯器。

  7. 如要執行突變,您需要新增變數。在「Parameters」部分開啟「Variables」,並加入一些測試變數:

    {"title":"My amazing movie", "releaseYear":2024, "genre": "Comedy",
    "rating": 8, "description": "A new movie to test mutations",
    "imageUrl": "", "tags": ["comedy","space travel"]}
    
  8. 按一下「執行」

  9. 接著,建立查詢來確認電影已新增。點選「幫我寫 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
        }
    }
    
  10. 插入並執行查詢。新增的電影應會顯示在「記錄」欄位中。

建立查詢,根據使用者提供的類型和評分列出評論

本範例說明如何使用自然語言生成 GraphQL 查詢。本範例假設您使用 Firebase Data Connect說明文件「使用Data Connect (網頁) 建構」程式碼研究室中使用的電影資料庫。

  1. Firebase 控制台中,開啟 Data Connect

  2. 選取服務和資料來源,然後開啟「資料」分頁標籤。

  3. 按一下「幫我寫 GraphQL」pen_spark 圖示,然後說明查詢:

    List all movie reviews, based on user-configurable genre and ratings.
    
  4. 點選「產生」,系統會傳回查詢。舉例來說, 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
      }
    }
    
  5. 查看輸出內容。視需要點選「編輯」來修正提示,然後點選「重新生成」

  6. 接著,按一下「插入」,將突變插入資料編輯器。

  7. 如要測試這項查詢,請新增變數。在「參數」部分開啟「變數」,並加入要用於測試的變數:

    {"genre":"sci-fi", "minRating":4, "maxRating":9}
    
  8. 按一下「執行」

為第三方 AI 輔助工具設計提示

與所有 AI 輔助工具一樣,提示越清楚,輸出結果就越實用。

當您以自然語言向 Gemini 版 Firebase下達提示時,系統會在幕後將輸入內容翻譯成更完整的提示。

如果您使用 Cursor 或 Windsurf 等第三方 AI 工具,可以透過類似的詳細提示,取得更優質的 Data Connect 建議。

我們已發布提示範本,供您下載、調整及複製到 IDE:

下載並修改後,請在您熟悉的工具 (例如 Cursor 或 Windsurf) 中建立提示,如下所示:

  • 在 Cursor 中 (請務必參閱 Cursor 的最新指示):

    1. 按一下右上方的「設定」圖示。
    2. 選取「規則」分頁標籤。
    3. 在「專案規則」下方,按一下「新增規則」按鈕。
    4. 複製並貼上規則。
  • 在 Windsurf 中 (請務必詳閱 Windsurf 的最新操作說明):

    1. 按一下右上角的「Cascade」(重疊) 按鈕,開啟 Cascade 視窗。
    2. 在 Cascade 中,按一下右上滑桿選單中的「自訂」圖示,然後前往「規則」面板。
    3. 按一下「+ 全域」或「+ Workspace」按鈕,分別在全域或 Workspace 層級建立新規則。
    4. 複製並貼上規則。

疑難排解 AI assistance for Data Connect

請參閱「排解 Firebase 中的 Gemini 問題」。

定價

AI assistance for Data Connect 是 Gemini in Firebase 的一部分,個人使用者可免費使用。

詳情請參閱「Gemini in Firebase 定價」一文。

後續步驟