Firebase AI Logic とそのクライアント SDK は、以前は 「Vertex AI in Firebase」と呼ばれていました。サービスの拡大と 機能の追加(Gemini Developer API のサポートなど)をより適切に反映するため、 サービスの名前を変更し、Firebase AI Logic として再パッケージ化しました。
モバイルアプリやウェブアプリから Google の生成 AI モデルに安全に直接アクセスするために、 「Gemini API」プロバイダ(以前から提供されている Vertex AI Gemini API または Gemini Developer API)を選択できるようになりました。つまり、Gemini Developer API を使用するオプションが追加されました。この API には、無料階層 が用意されています。
Firebase AI Logic SDK への移行手順の概要
ステップ 1: アプリとユースケースに最適な「Gemini API」プロバイダを選択します。
ステップ 2: Gemini Developer API を使用できるように Firebase プロジェクトを設定します。
代わりに Gemini Developer API を使用する場合にのみ適用されます Vertex AI Gemini API。ステップ 3: アプリで使用するライブラリを更新します。
ステップ 4: アプリの初期化を更新します。
ステップ 5: 使用する機能に応じてコードを更新します。
ステップ 1: アプリに最適な「Gemini API」プロバイダを選択する
この移行では、「Gemini API」プロバイダを選択できます。
以前の「Vertex AI in Firebase」SDK では、 Vertex AI Gemini API のみを使用できました。
新しい Firebase AI Logic SDK では、モバイルアプリやウェブアプリから直接呼び出す 「Gemini API」プロバイダ(Gemini Developer API または Vertex AI Gemini API)を選択できます。
2 つの Gemini API プロバイダの使用の違い、特にサポートされている機能、料金、レート制限の違いを確認してください。たとえば、Gemini Developer API では を使用したファイルの提供はサポートされていませんが、無料階層と妥当な割り当てを利用したい場合は最適な選択肢となります。Cloud Storage
**Vertex AI Gemini API を引き続き使用する場合**Vertex AI Gemini API:
次のステップをスキップして、 **アプリのライブラリの更新**に進み、 このガイドの残りの部分に進みます。**Gemini Developer API に切り替える場合**Gemini Developer API:
次のステップに進んで その API を使用するように Firebase プロジェクトを設定し, このガイドの残りの部分に進みます。
ステップ 2: Gemini Developer API を使用できるように Firebase プロジェクトを設定する
このステップは、 Gemini Developer API を Firebase AI Logic クライアント SDK とともに使用するように切り替える場合にのみ必要です。Vertex AI Gemini API を引き続き 使用する場合は、次のステップに進みます。Vertex AI Gemini API
プロジェクトで両方の「Gemini API」プロバイダを同時に有効にしても問題ありません。
Firebase[コンソール]で、Firebase AI Logicページに移動します。
[設定] タブに移動し、[Gemini Developer API] を選択します。
Gemini Developer API を有効にします。
コンソールで、必要な API が有効になっていることを確認し、Firebase プロジェクトに Gemini API キーを生成します。
この Gemini API キーをアプリのコードベースに追加しないでください 。 詳細この移行ガイドに沿って、アプリのライブラリと初期化を更新します。
ステップ 3: アプリで使用するライブラリを更新する
Firebase AI Logic ライブラリを使用するようにアプリのコードベースを更新します。
Swift
Xcode でアプリのプロジェクトを開いた状態で、次のいずれかの方法で Firebase パッケージを v11.13.0 以降に更新します。
オプション 1: すべてのパッケージを更新する: [File] > [Packages] > [Update to Latest Package Versions] に移動します。
オプション 2: Firebase を個別に更新する: [**Package Dependencies**] セクションで Firebase パッケージに移動します。Firebase パッケージを右クリックし、[Update Package] を選択します。
Firebase パッケージに v11.13.0 以降が表示されていることを確認します。表示されていない場合は、指定した パッケージ要件 で v11.13.0 以降に更新できることを確認してください。
プロジェクト エディタでアプリのターゲットを選択し、[Frameworks, Libraries, and Embedded Content] セクションに移動します。
新しいライブラリを追加します。[+] ボタンを選択し、Firebase パッケージから [FirebaseAI] を追加します。
アプリの移行が完了したら(このガイドの残りのセクションを参照)、古いライブラリを削除します。
[FirebaseVertexAI] を選択し、[—] ボタンを押します。
Kotlin
モジュール(アプリレベル)の Gradle ファイル (通常は
<project>/<app-module>/build.gradle.ktsまたは<project>/<app-module>/build.gradle)で、古い依存関係 (該当する場合)を次のものに置き換えます。古い依存関係を削除する前に、アプリのコードベースを移行する(このガイドの残りのセクションを参照)方が簡単な場合があります。
// BEFORE dependencies { implementation(platform("com.google.firebase:firebase-bom:33.x.y"))
implementation("com.google.firebase:firebase-vertexai")// OR if not using the BoMimplementation("com.google.firebase:firebase-vertexai:16.x.y")} // AFTER dependencies { // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:34.12.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") }Android プロジェクトを Gradle ファイルと同期します。
Firebase Android BoM を使用しない場合は、
firebase-ai ライブラリの依存関係を追加して、最新バージョン
を Android Studio で推奨されるとおりに受け入れます。
Java
モジュール(アプリレベル)の Gradle ファイル (通常は
<project>/<app-module>/build.gradle.ktsまたは<project>/<app-module>/build.gradle)で、古い依存関係 (該当する場合)を次のものに置き換えます。古い依存関係を削除する前に、アプリのコードベースを移行する(このガイドの残りのセクションを参照)方が簡単な場合があります。
// BEFORE dependencies { implementation(platform("com.google.firebase:firebase-bom:33.x.y"))
implementation("com.google.firebase:firebase-vertexai")// OR if not using the BoMimplementation("com.google.firebase:firebase-vertexai:16.x.y")} // AFTER dependencies { // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:34.12.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") }Android プロジェクトを Gradle ファイルと同期します。
Firebase Android BoM を使用しない場合は、
firebase-ai ライブラリの依存関係を追加して、最新バージョン
を Android Studio で推奨されるとおりに受け入れます。
Web
npm を使用して、ウェブ用の Firebase JS SDK の最新バージョンを取得します。
npm i firebase@latest
または
yarn add firebase@latest
ライブラリをインポートした場所で、インポート ステートメントを更新して
firebase/aiを使用します。古いインポートを削除する前に、アプリのコードベースを移行する(このガイドの残りのセクションを参照)方が簡単な場合があります。
// BEFORE import { initializeApp } from "firebase/app";
import { getVertexAI, getGenerativeModel } from "firebase/vertexai";// AFTER import { initializeApp } from "firebase/app"; import { getAI, getGenerativeModel } from "firebase/ai";
Dart
Flutter プロジェクト ディレクトリから次のコマンドを実行して、
pubspec.yamlファイルでfirebase_aiパッケージを使用するように更新します。flutter pub add firebase_ai
Flutter プロジェクトを再ビルドします。
flutter run
アプリの移行が完了したら(このガイドの残りのセクションを参照)、古いパッケージを削除します。
flutter pub remove firebase_vertexai
Unity
Unity のサポートは 「Vertex AI in Firebase」では提供されていませんでした。
SDK for Unity を使ってみるをご覧ください。Firebase AI Logic
ステップ 4: アプリの初期化を更新する
|
Gemini API プロバイダをクリックして、このページでプロバイダ固有のコンテンツとコードを表示します。 |
選択した API プロバイダのサービスを初期化して GenerativeModel インスタンスを作成する方法を更新します。
Swift
import FirebaseAILogic
// Initialize the Vertex AI Gemini API backend service
let ai = FirebaseAI.firebaseAI(backend: .vertexAI())
// Create a `GenerativeModel` instance with a model that supports your use case
let model = ai.generativeModel(modelName: "gemini-3-flash-preview")
Kotlin
// Initialize the Vertex AI Gemini API backend service
// Create a `GenerativeModel` instance with a model that supports your use case
val model = Firebase.ai(backend = GenerativeBackend.vertexAI())
.generativeModel("gemini-3-flash-preview")
Java
// Initialize the Vertex AI Gemini API backend service
// Create a `GenerativeModel` instance with a model that supports your use case
GenerativeModel ai = FirebaseAI.getInstance(GenerativeBackend.vertexAI())
.generativeModel("gemini-3-flash-preview");
// Use the GenerativeModelFutures Java compatibility layer which offers
// support for ListenableFuture and Publisher APIs
GenerativeModelFutures model = GenerativeModelFutures.from(ai);
Web
import { initializeApp } from "firebase/app";
import { getAI, getGenerativeModel, VertexAIBackend } from "firebase/ai";
// TODO(developer) Replace the following with your app's Firebase configuration
// See: https://firebase.google.com/docs/web/learn-more#config-object
const firebaseConfig = {
// ...
};
// Initialize FirebaseApp
const firebaseApp = initializeApp(firebaseConfig);
// Initialize the Vertex AI Gemini API backend service
const ai = getAI(firebaseApp, { backend: new VertexAIBackend() });
// Create a `GenerativeModel` instance with a model that supports your use case
const model = getGenerativeModel(ai, { model: "gemini-3-flash-preview" });
Dart
import 'package:firebase_ai/firebase_ai.dart';
import 'package:firebase_core/firebase_core.dart';
import 'firebase_options.dart';
// Initialize FirebaseApp
await Firebase.initializeApp(
options: DefaultFirebaseOptions.currentPlatform,
);
// Initialize the Vertex AI Gemini API backend service
// Create a `GenerativeModel` instance with a model that supports your use case
final model =
FirebaseAI.vertexAI().generativeModel(model: 'gemini-3-flash-preview');
Unity
Unity のサポートは「Vertex AI in Firebase」では提供されていませんでした。
使用している機能によっては、常に
GenerativeModel インスタンスを作成しない場合があります。
入出力のストリーミングを行うには、Gemini Live API を使用して
、LiveModel インスタンスを作成します。
ステップ 5: 使用する機能に応じてコードを更新する
このステップでは、使用する機能に応じて必要な変更について説明します。
Cloud Storage URL を使用していて、この移行で Gemini Developer API を使用するように切り替えた場合は、 マルチモーダル リクエストを更新して、 ファイルをインライン データとして含める必要があります (動画には YouTube URL を使用します)。
SDK を導入するためにコードを変更する必要があるかどうか、次のリストを確認してください。Firebase AI Logic
Swift
追加の変更はありません。
Kotlin
Live API
- enum クラス
ResponseModalityのUNSPECIFIED値を削除しました。代わりにnullを使用してください。
- enum クラス
Java
Live API
- enum クラス
ResponseModalityのUNSPECIFIED値を削除しました。代わりにnullを使用してください。
- enum クラス
さまざまな Java ビルダー メソッドが、void ではなくクラスのインスタンスを正しく返すように変更されました。
Web
の使用を開始する場合にのみ必要な変更 Gemini Developer API (代わりに Vertex AI Gemini API):
安全性設定
- サポートされていない
SafetySetting.methodの使用を削除しました。
- サポートされていない
インライン データ
- サポートされていない
InlineDataPart.videoMetadataの使用を削除しました。
- サポートされていない
Dart
追加の変更はありません。
Unity
Unity のサポートは「Vertex AI in Firebase」では提供されていませんでした。
SDK for Unity を使ってみるをご覧ください。Firebase AI Logic
フィードバックを送信する Firebase AI Logicの使用に関する