Gemini API を初めて使用する場合は、Gemini Developer API が Android デベロッパー向けの推奨API プロバイダです。ただし、特定のデータのロケーション要件がある場合や、Vertex AI または Google Cloud 環境にすでに組み込まれている場合は、Vertex AI Gemini API を使用できます。
Vertex AI in Firebase からの移行
Firebase の Vertex AI を使用して Gemini Flash モデルと Pro モデルを統合した場合、API プロバイダとして Vertex AI に移行して引き続き使用できます。詳細な移行ガイドについては、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);
Firebase のドキュメントで、Gemini Developer API で使用できるモデルの詳細をご確認ください。モデル パラメータの構成についてもご覧ください。
テキストを生成する
テキスト レスポンスを生成するには、プロンプトを指定して generateContent()
を呼び出します。
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 のドキュメントをご覧ください。