Vertex AI Gemini API

Gemini API を初めて使用する場合は、Gemini Developer API を Android デベロッパー向けの推奨 API プロバイダとして使用することをおすすめします。ただし、特定の データ ロケーション要件がある場合や、 Vertex AI または Google Cloud 環境にすでに組み込まれている場合は、Vertex AI Gemini API を使用できます。

Vertex AI in Firebase からの移行

Vertex AI in Firebase を使用して Gemini Flash モデルと Gemini Pro モデルを統合した場合は、Vertex AI に移行して、Vertex AI を API プロバイダとして引き続き使用できます。 詳細な移行ガイドについては、Firebase のドキュメントをご覧ください。

スタートガイド

アプリから Vertex AI Gemini API を直接操作する前に、 Vertex AI Studio でプロンプトを試すことができます。

Firebase プロジェクトを設定し、アプリを Firebase に接続する

アプリから Vertex AI Gemini API を呼び出す準備ができたら、Firebase AI Logic のスタートガイドの「ステップ 1」の手順に沿って、アプリに Firebase と SDK を設定します。

Gradle 依存関係を追加する

アプリ モジュールに次の Gradle 依存関係を追加します。

dependencies {
  // ... other androidx dependencies

  // Import the BoM for the Firebase platform
  implementation(platform("com.google.firebase:firebase-bom:34.11.0"))

  // Add the dependency for the Firebase AI Logic library. When using the BoM,
  // you don't specify versions in Firebase library dependencies
  implementation("com.google.firebase:firebase-ai")
}

生成モデルを初期化する

まず、GenerativeModel をインスタンス化し、モデル名を指定します。

Kotlin

val model = Firebase.ai(backend = GenerativeBackend.vertexAI())
    .generativeModel("gemini-2.5-flash")

Java

GenerativeModel firebaseAI = FirebaseAI.getInstance(GenerativeBackend.vertexAI())
        .generativeModel("gemini-2.5-flash");

GenerativeModelFutures model = GenerativeModelFutures.from(firebaseAI);

Firebase のドキュメントでは、Gemini Developer API で使用できるモデルの詳細を確認できます。モデル パラメータの構成についても 確認できます

テキストを生成する

テキスト レスポンスを生成するには、プロンプトを指定して generateContent() を呼び出します。

Kotlin

suspend fun generateText(model: GenerativeModel) {
    // Note: generateContent() is a suspend function, which integrates well
    // with existing Kotlin code.
    val response = model.generateContent("Write a story about a magic backpack.")
    // ...
}

Java

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 Developer API と同様に、テキスト プロンプトで画像、音声、動画、ファイルを渡すこともできます。詳細については、アプリから Gemini Developer API を操作するをご覧ください。

Firebase AI Logic SDK の詳細については、Firebase のドキュメントをご覧ください。