Vertex AI Gemini API

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

Vertex AI in Firebase からの移行

最初に Firebase の Vertex AI を使用して Gemini Flash モデルと Pro モデルを統合した場合は、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:33.13.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.0-flash")

Java

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

GenerativeModelFutures model = GenerativeModelFutures.from(firebaseAI);

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

テキストを生成

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

Kotlin

kotlin // Note: generateContent() is a suspend function, which integrates well // with existing Kotlin code. scope.launch { 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 のドキュメントをご覧ください。