Gemini AI 模型

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

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

Firebase AI Logic

Firebase AI Logic 可讓開發人員直接在應用程式中安全地加入 Google 的生成式 AI,簡化開發作業,並提供工具和產品整合功能,協助您順利達到正式版完備性。這項服務提供 Android SDK,可直接整合及呼叫用戶端程式碼中的 Gemini API,簡化開發作業,不必再使用後端。

API 供應商

Firebase AI Logic 可讓您使用下列 Google Gemini API 提供者:Gemini Developer API 和 Agent Platform Gemini API (舊稱 Vertex AI)。

插圖:顯示 Android 應用程式使用 Firebase Android SDK,向雲端中的 Firebase 後端傳送要求。要求可以導向 Gemini Developer API 或 Agent Platform Gemini API,兩者都採用 Gemini Pro 和 Flash 模型。
圖 1. Firebase AI Logic 整合架構。

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

Gemini Developer API:

  • 開始使用慷慨大方的免費方案,無須提供付款資訊。
  • 隨著使用者族群增加,您可以選擇升級至 Gemini Developer API 付費方案,擴大規模。
  • 使用 Google AI Studio 測試提示詞,甚至取得程式碼片段。

Agent Platform Gemini API (原稱 Vertex AI):

  • 精細控管模型存取位置。
  • 非常適合已加入 Google Cloud 生態系統的開發人員。
  • 使用 Agent Studio 測試及調整提示,甚至取得程式碼片段。

為應用程式選取合適的 Gemini API 供應商時,請考量業務和技術限制。大多數剛開始使用 Gemini Pro 和 Flash 模型的 Android 開發人員,都應先使用 Gemini Developer API。 如要切換供應商,請變更模型建構函式中的參數:

Kotlin

// For the Agent Platform Gemini API, use `backend = GenerativeBackend.agentPlatform()`
val model = Firebase.ai(backend = GenerativeBackend.googleAI())
    .generativeModel("gemini-3.5-flash")

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

Java

// For the Agent Platform Gemini API, use `backend = GenerativeBackend.agentPlatform()`
GenerativeModel firebaseAI = FirebaseAI.getInstance(GenerativeBackend.googleAI())
        .generativeModel("gemini-3.5-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);

在裝置端、雲端或混合式環境存取模型

除了上一節所述的雲端 Gemini 模型,您也可以透過 Firebase AI Logic SDK 存取裝置端模型,建構應用程式的 AI 功能。如果您為混合式推論設定 SDK,應用程式就能在裝置端模型可用時使用該模型,但必要時可順暢地改用雲端代管模型 (反之亦然)。

混合式方法的優點包括:

  • 智慧型路徑:簡單工作會在裝置上處理,複雜問題則會自動傳送至雲端進行深入分析。

  • 離線可用性:應用程式會直接在裝置上執行模型,因此即使沒有網路也能繼續運作。重新連線後,即可存取雲端主機代管的模型。

  • 降低成本:在裝置上執行日常工作,而非在雲端執行,可減少推論費用。

AI 功能的安全防護

Firebase AI Logic 支援多項功能,可讓您在應用程式中安全地建構 AI 功能:

  • 驗證應用程式的真實性:直接從 Android 應用程式呼叫 Gemini API 時,API 容易遭到未經授權的用戶端濫用。您必須使用 Firebase AI Logic 並強制執行 Firebase App Check,防止 API 遭到濫用。強制執行 App Check 時,系統只會允許來自實際應用程式或未遭竄改裝置的已驗證要求。App Check 支援 Play Integrity 和 reCAPTCHA Enterprise,可做為正式版驗證供應商。

  • 在伺服器端儲存提示:使用 Firebase AI Logic 向 Gemini API 發出要求時,您可以將提示、結構定義和設定儲存在伺服器端提示詞範本中。應用程式只會將金鑰 (範本 ID) 從用戶端傳遞至伺服器。使用伺服器提示詞範本有助於防止提示詞在用戶端公開。

  • 存取裝置端模型:您可以使用 Firebase AI Logic,在裝置端模型可用時將要求傳送至該模型。要求 (包括提示) 不會離開裝置。

為正式環境建構

Firebase AI Logic 可協助您在應用程式中建構強大的 AI 功能,並確保這些功能在正式環境中運作。詳情請參閱「Firebase AI Logic 產品檢查清單」。

存取權和安全性

  • 強制執行 Firebase App Check,直接從應用程式呼叫 Gemini API 時,有助於防止 API 遭到濫用。強制執行 App Check 時,系統會驗證傳入的要求是否來自您的正版應用程式或未遭竄改的裝置。

  • 強制執行通過驗證的使用者模式,確保 Firebase AI Logic 的所有要求都必須包含 Firebase 驗證的有效憑證。

監控、限制和計費

管理設定