使用 AI 輔助功能處理 SQL Connect

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

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

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

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

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

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

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

設定「AI assistance for SQL Connect

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

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

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

Firebase 控制台中

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

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

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

在資料頁面中,您可以點選「幫我撰寫 GraphQL」pen_spark 按鈕,根據自然語言生成及執行作業。請參閱一些範例用途

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

在本機環境中

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

您可以向 firebase init dataconnect 提供應用程式構想,然後讓它生成下列內容:

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

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

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

如要瞭解這項工作流程,請參閱本機原型設計入門指南

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

Firebase MCP 伺服器可與任何能做為 MCP 用戶端的 AI 輔助工具搭配使用,包括 AntigravityGemini CLIGemini Code Assist、Claude Code 和 Claude Desktop、Cline、Cursor、VS Code Copilot、Windsurf 等。

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

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

如要使用 Firebase MCP 伺服器:

  1. 按照這份指南設定 MCP 用戶端。
  2. 詢問有關「SQL Connect」的協助。提示詞範例:
    1. 「為披薩外送應用程式設定 SQL Connect 專案。」
    2. 「修正 SQL Connect 編譯錯誤。」
    3. 「在首頁中,我需要顯示有效聊天室和好友名單。 產生 SQL Connect 查詢。」
    4. 「What users are in my local SQL Connect emulator?」(我的本機 SQL Connect 模擬器中有哪些使用者?)
    5. 「我的SQL Connect服務位於哪些 Google Cloud 區域?」

生成作業的用途範例

以下各節說明使用範例:

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

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

  1. Firebase 控制台中,依序前往「資料庫和儲存空間」>「SQL Connect」

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

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

    舉例來說,如果您使用「使用 SQL 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 SQL Connect說明文件和「使用 SQL Connect 建構 (網頁)」程式碼研究室中使用的電影資料庫結構定義。

  1. Firebase 控制台中,依序前往「資料庫和儲存空間」>「SQL 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 SQL Connect說明文件和「使用 Build with (網頁) 建構SQL Connect」程式碼研究室中使用的電影資料庫。

  1. Firebase 控制台中,依序前往「資料庫和儲存空間」>「SQL 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 輔助工具,提示越清楚,輸出結果就越實用。

當您在 Firebase 中以自然語言提供提示時,助理會在幕後將輸入內容翻譯成更完整的提示。

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

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

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

  • 在 Cursor 中 (請務必參閱 Cursor 的最新說明):

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

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

疑難排解 AI assistance for SQL Connect

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

定價

AI assistance for SQL ConnectFirebase 中 Gemini 的一部分,個人使用者可免費使用。

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

後續步驟