Gemini AI 模型

Gemini Pro 和 Gemini Flash 模型系列為 Android 開發人員提供多模態 AI 功能,可在雲端執行推論,並處理 Android 應用程式中的圖像、音訊、影片和文字輸入內容。

  • Gemini Pro:Gemini 2.5 Pro 是 Google 最先進的思考模型,可針對程式碼、數學和 STEM 領域的複雜問題進行推理,並使用長脈絡分析大型資料集、程式碼集和文件。
  • Gemini Flash:Gemini Flash 模型提供新一代功能和進階功能,包括更快的速度、內建工具使用方式,以及 100 萬個符號的脈絡窗口。

Firebase AI 邏輯

Firebase AI Logic 可讓開發人員直接將 Google 的生成式 AI 安全地加入應用程式,簡化開發程序,並提供工具和產品整合功能,以便順利進入正式版。它提供用戶端 Android SDK,可直接從用戶端程式碼整合及呼叫 Gemini API,讓您不必使用後端,簡化開發作業。

API 供應者

Firebase AI 邏輯可讓您使用下列 Google Gemini API 供應商:Gemini Developer API 和 Vertex AI Gemini API

插圖:顯示 Android 應用程式使用 Firebase Android SDK 連線至雲端中的 Firebase。從這裡開始,AI 邏輯會透過兩種途徑整合:Gemini Developer API 或 Google Cloud Platform 的 Vertex AI,兩者都會運用 Gemini Pro 和 Flash 模型。
圖 1. Firebase AI Logic 整合架構。

以下是各 API 供應商的主要差異:

Gemini Developer API

  • 開始使用慷慨大方的免費方案,不必提供付款資訊。
  • 您可以視需要升級至 Gemini Developer API 付費等級,隨著使用者群規模擴大而調整。
  • 您可以使用 Google AI Studio 持續推陳出新,並測試提示,甚至取得程式碼片段。

Vertex AI Gemini API

  • 精細控管模型存取位置
  • 適合已融入 Vertex AI/Google Cloud 生態系統的開發人員。
  • 您可以使用 Vertex AI Studio 反覆嘗試提示,甚至取得程式碼片段。

您可以根據業務和技術限制,以及對 Vertex AI 和 Google Cloud 生態系統的熟悉程度,為應用程式選取合適的 API 供應商。大多數剛開始整合 Gemini Pro 或 Gemini Flash 的 Android 開發人員,應先從 Gemini Developer API 開始。您可以透過變更模型建構函式中的參數,切換供應商:

Kotlin

// For Vertex AI, use `backend = GenerativeBackend.vertexAI()`
val model = Firebase.ai(backend = GenerativeBackend.googleAI())
    .generativeModel("gemini-2.0-flash")

val response = model.generateContent("Write a story about a magic backpack");
val output = response.text

Java

// For Vertex AI, use `backend = GenerativeBackend.vertexAI()`
GenerativeModel firebaseAI = FirebaseAI.getInstance(GenerativeBackend.googleAI())
        .generativeModel("gemini-2.0-flash");

// Use the GenerativeModelFutures Java compatibility layer which offers
// support for ListenableFuture and Publisher APIs
GenerativeModelFutures model = GenerativeModelFutures.from(firebaseAI);

Content prompt = new Content.Builder()
    .addText("Write a story about a magic backpack.")
    .build();

ListenableFuture<GenerateContentResponse> response = model.generateContent(prompt);
Futures.addCallback(response, new FutureCallback<GenerateContentResponse>() {
    @Override
    public void onSuccess(GenerateContentResponse result) {
        String resultText = result.getText();
        [...]
    }

    @Override
    public void onFailure(Throwable t) {
        t.printStackTrace();
    }
}, executor);

請參閱 可用生成式 AI 模型的完整清單,瞭解 Firebase AI Logic 用戶端 SDK 支援的模型。

Firebase 服務

除了 Gemini API 存取權之外,Firebase AI 邏輯還提供一組服務,可簡化應用程式 AI 輔助功能的部署作業,並準備好正式發布:

應用程式檢查

Firebase App Check 可確保只有經過授權的用戶端才能存取資源,進而保護應用程式後端免於遭到濫用。它可與 Google 服務 (包括 Firebase 和 Google Cloud) 和自訂後端整合。App Check 會使用 Play Integrity 驗證要求是否來自正版應用程式和未遭竄改的裝置。

遠端設定

建議您使用 Firebase 遠端設定,使用伺服器控管的變數,而非在應用程式中硬式編碼模型名稱。這可讓您動態更新應用程式所用的模型,而無須部署新版應用程式,也不必要求使用者改用新版。您也可以使用遠端設定對模型和提示進行A/B 版本測試

AI 監控

如要瞭解 AI 輔助功能的效能,您可以使用 Firebase 控制台中的 AI 監控資訊主頁。您將獲得 Gemini API 呼叫的使用模式、效能指標和偵錯資訊等寶貴洞察資料。

遷移至 Firebase AI Logic

如果您已在應用程式中使用 Firebase SDK 中的 Vertex AI,請參閱遷移指南