このガイドでは、選択したプラットフォーム用の Firebase AI Logic クライアント SDK を使用して、アプリから Gemini API への呼び出しを直接開始する方法について説明します。
前提条件
Swift
このガイドは、Xcode を使用して Apple プラットフォーム(iOS など)向けのアプリを開発することに精通していることを前提としています。
開発環境と Apple プラットフォーム アプリが次の要件を満たしていることを確認します。
- Xcode 26.2 以降
- アプリが iOS 15 以降または macOS 12 以降をターゲットとしている
Kotlin
このガイドは、Android Studio を使用した Android 向けアプリの開発に精通していることを前提としています。
開発環境と Android アプリが次の要件を満たしていることを確認します。
- Android Studio(最新バージョン)
- アプリが API レベル 21 以上をターゲットにしている
Java
このガイドは、Android Studio を使用した Android 向けアプリの開発に精通していることを前提としています。
開発環境と Android アプリが次の要件を満たしていることを確認します。
- Android Studio(最新バージョン)
- アプリが API レベル 21 以上をターゲットにしている
Web
このガイドは、JavaScript を使用したウェブアプリ開発に精通していることを前提としています。このガイドはフレームワークに依存していません。
開発環境とウェブアプリが次の要件を満たしていることを確認します。
- (省略可)Node.js
- 最新のウェブブラウザ
Dart
このガイドは、Flutter を使用したアプリ開発に精通していることを前提としています。
開発環境と Flutter アプリが次の要件を満たしていることを確認します。
- Dart 3.2.0 以降
Unity
このガイドは、Unity を使用したゲーム開発に精通していることを前提としています。
開発環境と Unity ゲームが次の要件を満たしていることを確認します。
- Unity Editor 2021 LTS 以降
役立つリソースを確認する
Swift
クイックスタート アプリを試す
クイックスタート アプリを使用して、SDK をすばやく試し、さまざまなユースケースの完全な実装を確認してください。独自の Apple プラットフォーム アプリがない場合は、クイックスタート アプリを使用します。クイックスタート アプリを使用するには、Firebase プロジェクトに接続する必要があります。
動画チュートリアルを視聴する
この動画では、テキスト プロンプトからレシピを生成する実際の AI 搭載の食事プランニング アプリを構築して、Firebase AI Logic の使用を開始する方法を紹介します。
動画で紹介しているアプリのコードベースをダウンロードして確認することもできます。
Kotlin
クイックスタート アプリを試す
クイックスタート アプリを使用して、SDK をすばやく試し、さまざまなユースケースの完全な実装を確認してください。独自の Android アプリがない場合は、クイックスタート アプリを使用します。クイックスタート アプリを使用するには、Firebase プロジェクトに接続する必要があります。
動画チュートリアルを視聴する
この動画では、テキスト プロンプトからレシピを生成する実際の AI 搭載の食事プランニング アプリを構築して、Firebase AI Logic の使用を開始する方法を紹介します。
動画で紹介しているアプリのコードベースをダウンロードして確認することもできます。
Java
クイックスタート アプリを試す
クイックスタート アプリを使用して、SDK をすばやく試し、さまざまなユースケースの完全な実装を確認してください。独自の Android アプリがない場合は、クイックスタート アプリを使用します。クイックスタート アプリを使用するには、Firebase プロジェクトに接続する必要があります。
動画チュートリアルを視聴する
この動画では、テキスト プロンプトからレシピを生成する AI 搭載の食事プランニング アプリを実際に作成して、Firebase AI Logic の使用を開始する方法について説明します。*
動画で紹介しているアプリのコードベースをダウンロードして確認することもできます。
* この動画とそのアプリは Kotlin で作成されていますが、Java デベロッパーが Firebase AI Logic を始めるための基本を理解するうえで役立ちます。
Web
クイックスタート アプリを試す
クイックスタート アプリを使用して、SDK をすばやく試し、さまざまなユースケースの完全な実装を確認してください。独自のウェブアプリがない場合は、クイックスタート アプリを使用します。クイックスタート アプリを使用するには、Firebase プロジェクトに接続する必要があります。
Dart
クイックスタート アプリを試す
クイックスタート アプリを使用して、SDK をすばやく試し、さまざまなユースケースの完全な実装を確認してください。独自の Flutter アプリがない場合は、クイックスタート アプリを使用します。クイックスタート アプリを使用するには、Firebase プロジェクトに接続する必要があります。
動画チュートリアルを視聴する
この動画では、テキスト プロンプトからレシピを生成する実際の AI 搭載の食事プランニング アプリを構築して、Firebase AI Logic の使用を開始する方法を紹介します。
動画で紹介しているアプリのコードベースをダウンロードして確認することもできます。
Unity
クイックスタート アプリを試す
クイックスタート アプリを使用して、SDK をすばやく試し、さまざまなユースケースの完全な実装を確認してください。独自の Unity ゲームがない場合は、クイックスタート アプリを使用します。クイック スタート アプリを使用するには、Firebase プロジェクトに接続する必要があります。
ステップ 1: Firebase プロジェクトを設定して API を有効にする
Firebase コンソールにログインし、Firebase プロジェクトを選択します。
Firebase コンソールで、[AI サービス] > [AI ロジック] に移動します。
[使ってみる] をクリックして、プロジェクトに必要な API とリソースの設定に役立つガイド付きワークフローを起動します。
メッセージが表示されたら、画面上の手順に沿ってアプリを登録し、Firebase 構成をアプリに追加します。
[Gemini API プロバイダ] を選択するよう求められたら、Gemini Developer API を選択することをおすすめします。これにより、無料で迅速に始めることができます。
後からいつでも Vertex AI Gemini API を設定できます(お支払いに関する要件も同様です)。
ワークフローを続行して、Firebase AI Logic に必要な API と関連サービスを設定します。
2026 年 7 月上旬より、ワークフローのこのステージでは、アプリから直接アクセスされたときに Gemini API を保護するのに役立つ重要なサービスである AI Logic に対して Firebase App Check が自動的に適用されます。スタートガイド(このガイドの後半のステップを参照)の一環として、App Check が適用されるときにローカル開発用の App Check デバッグ プロバイダを構成する必要があります。
このガイドの次の手順に進み、必要な SDK をアプリに追加します。
ステップ 2: 必要な SDK を追加する
Firebase プロジェクトが設定され、必要な API が有効になったら(前の手順を参照)、必要な SDK をアプリに追加できます。
Swift
Swift Package Manager を使用して Firebase の依存関係のインストールと管理を行います。必要に応じて、その他のインストール オプションについて確認します。
Firebase AI Logic ライブラリは、Gemini モデルを操作するための API へのアクセスを提供します。このライブラリは、Apple プラットフォーム用の Firebase SDK(firebase-ios-sdk)の一部として含まれています。
Firebase をすでに使用している場合は、Firebase パッケージが v12.5.0 以降であることを確認してください。
Xcode でアプリ プロジェクトを開いたまま、[File] > [Add Package Dependencies] の順に移動します。
プロンプトが表示されたら、Firebase Apple プラットフォーム SDK リポジトリを追加します。
https://github.com/firebase/firebase-ios-sdk最新の SDK バージョンを選択します。
FirebaseAILogicライブラリとFirebaseAppCheckライブラリを選択します。
上記の作業が完了すると、Xcode は依存関係の解決とバックグラウンドでのダウンロードを自動的に開始します。
Kotlin
Android 用 Firebase AI Logic SDK(firebase-ai)は、Gemini モデルを操作するための API へのアクセスを提供します。
モジュール(アプリレベル)の Gradle ファイル(<project>/<app-module>/build.gradle.kts など)に、Android 用 Firebase AI Logic ライブラリの依存関係を追加します。ライブラリのバージョニングの制御には、Firebase Android BoM を使用することをおすすめします。
dependencies { // ... other androidx dependencies // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:34.15.0")) // Add the dependencies for the Firebase AI Logic and App Check libraries // When using the BoM, you don't specify versions in Firebase library dependencies implementation("com.google.firebase:firebase-ai") implementation("com.google.firebase:firebase-appcheck-debug") }
Firebase Android BoM を使用すると、アプリは常に互換性のあるバージョンの Firebase Android ライブラリを使用します。
Java
Android 用 Firebase AI Logic SDK(firebase-ai)は、Gemini モデルを操作するための API へのアクセスを提供します。
モジュール(アプリレベル)の Gradle ファイル(<project>/<app-module>/build.gradle.kts など)に、Android 用 Firebase AI Logic ライブラリの依存関係を追加します。ライブラリのバージョニングの制御には、Firebase Android BoM を使用することをおすすめします。
Java の場合は、2 つのライブラリを追加する必要があります。
dependencies { // ... other androidx dependencies // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:34.15.0")) // Add the dependencies for the Firebase AI Logic and App Check libraries // When using the BoM, you don't specify versions in Firebase library dependencies implementation("com.google.firebase:firebase-ai") implementation("com.google.firebase:firebase-appcheck-debug") // Required for one-shot operations (to use `ListenableFuture` from Guava Android) implementation("com.google.guava:guava:31.0.1-android") // Required for streaming operations (to use `Publisher` from Reactive Streams) implementation("org.reactivestreams:reactive-streams:1.0.4") }
Firebase Android BoM を使用すると、アプリは常に互換性のあるバージョンの Firebase Android ライブラリを使用します。
Web
Firebase AI Logic ライブラリは、Gemini モデルを操作するための API へのアクセスを提供します。このライブラリは、Firebase JavaScript SDK for Web の一部として含まれています。
npm を使用してウェブ用の Firebase JS SDK をインストールします。
npm install firebaseアプリで Firebase を初期化します。
import { initializeApp } from "firebase/app"; import { initializeAppCheck, DebugProvider } from "firebase/app-check"; // 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);
Dart
Flutter 用の Firebase AI Logic プラグイン(firebase_ai)は、Gemini モデルとやり取りするための API へのアクセスを提供します。
Flutter プロジェクト ディレクトリで、次のコマンドを実行してコア プラグインと Firebase AI Logic プラグインをインストールします。
flutter pub add firebase_ai firebase_app_checklib/main.dartファイルで、Firebase AI Logic プラグインと App Check プラグインをインポートします。import 'package:firebase_core/firebase_core.dart'; import 'package:firebase_ai/firebase_ai.dart'; import 'package:firebase_app_check/firebase_app_check.dart'; import 'firebase_options.dart';また、
lib/main.dartファイルで、構成ファイルによってエクスポートされたDefaultFirebaseOptionsオブジェクトを使用して Firebase を初期化していることを確認します。await Firebase.initializeApp( options: DefaultFirebaseOptions.currentPlatform, );Flutter アプリケーションを再ビルドします。
flutter run
Unity
Firebase Unity SDK をダウンロードし、適切な場所に抽出します。
Firebase Unity SDK はプラットフォーム固有ではありません。
開いている Unity プロジェクトで、[Assets] > [Import Package] > [Custom Package] を選択します。
抽出した SDK から、
FirebaseAIパッケージとFirebaseAppCheckパッケージを選択します。[Import Unity Package] ウィンドウで [Import] をクリックします。
ステップ 3: ローカル開発用に App Check デバッグ プロバイダを構成する
2026 年 7 月上旬より、コンソールの AI Logic のガイド付き設定ワークフローの一環として、Gemini API を保護するために Firebase App Check が自動的に適用されます。ローカル開発では、App Check の適用を維持しながら、証明書をバイパスするように App Check デバッグ プロバイダを構成する必要があります。
Swift
シミュレータでインタラクティブにアプリを実行しているときに(ローカル開発中など)デバッグ プロバイダを使用するには、次の手順を行います。
Xcode プロジェクトで、
Firebaseを構成する前にFirebaseAppCheckをインポートし、デバッグ プロバイダの Factory を使用して App Check を初期化します。import SwiftUI import FirebaseCore import FirebaseAppCheck @main struct YourApp: App { init() { let providerFactory = AppCheckDebugProviderFactory() AppCheck.setAppCheckProviderFactory(providerFactory) FirebaseApp.configure() } var body: some Scene { WindowGroup { NavigationView { ContentView() } } } }デバッグ トークンを取得します。
シミュレータまたはテストデバイスでアプリを起動します。
Xcode コンソールを開き、App Check デバッグ トークンを探します。例:
<Warning> [AppCheckCore][I-GAC004001] App Check debug token: '123a4567-b89c-12d3-e456-789012345678'.トークン(
123a4567-b89c-12d3-e456-789012345678など)をコピーします。
デバッグ トークンを App Check に登録します。
Firebase コンソールで、[セキュリティ] > [App Check] > [アプリ] タブに移動します。
アプリを見つけて、オーバーフロー メニュー()をクリックし、[デバッグ トークンを管理] を選択します。
画面上の手順に沿ってデバッグ トークンを登録します。
デバッグ プロバイダの詳細(新しいデバッグ トークンの取得方法など)については、App Check の公式ドキュメントをご覧ください。
Kotlin
エミュレータでインタラクティブにアプリを実行しているときに(ローカル開発中など)デバッグ プロバイダを使用するには、次の手順を行います。
デバッグビルドで、デバッグ プロバイダ Factory を使用するように App Check を構成します。
Firebase.initialize(context = this) Firebase.appCheck.installAppCheckProviderFactory( DebugAppCheckProviderFactory.getInstance(), )
デバッグ トークンを取得します。
エミュレータまたはテストデバイスでアプリを実行します。
ログで App Check デバッグトークンを探します。例:
D DebugAppCheckProvider: Enter this debug secret into the allow list in the Firebase Console for your project: 123a4567-b89c-12d3-e456-789012345678トークン(
123a4567-b89c-12d3-e456-789012345678など)をコピーします。
デバッグ トークンを App Check に登録します。
Firebase コンソールで、[セキュリティ] > [App Check] > [アプリ] タブに移動します。
アプリを見つけて、オーバーフロー メニュー()をクリックし、[デバッグ トークンを管理] を選択します。
画面上の手順に沿ってデバッグ トークンを登録します。
デバッグ プロバイダの詳細(新しいデバッグ トークンの取得方法など)については、App Check の公式ドキュメントをご覧ください。
Java
エミュレータでインタラクティブにアプリを実行しているときに(ローカル開発中など)デバッグ プロバイダを使用するには、次の手順を行います。
デバッグビルドで、デバッグ プロバイダ Factory を使用するように App Check を構成します。
FirebaseApp.initializeApp(/*context=*/ this); FirebaseAppCheck firebaseAppCheck = FirebaseAppCheck.getInstance(); firebaseAppCheck.installAppCheckProviderFactory( DebugAppCheckProviderFactory.getInstance());
デバッグ トークンを取得します。
エミュレータまたはテストデバイスでアプリを実行します。
ログで App Check デバッグトークンを探します。例:
D DebugAppCheckProvider: Enter this debug secret into the allow list in the Firebase Console for your project: 123a4567-b89c-12d3-e456-789012345678トークン(
123a4567-b89c-12d3-e456-789012345678など)をコピーします。
デバッグ トークンを App Check に登録します。
Firebase コンソールで、[セキュリティ] > [App Check] > [アプリ] タブに移動します。
アプリを見つけて、オーバーフロー メニュー()をクリックし、[デバッグ トークンを管理] を選択します。
画面上の手順に沿ってデバッグ トークンを登録します。
デバッグ プロバイダの詳細(新しいデバッグ トークンの取得方法など)については、App Check の公式ドキュメントをご覧ください。
Web
localhost からインタラクティブにアプリを実行しているときに(ローカル開発中など)、デバッグ プロバイダを使用する方法は次のとおりです。
App Check を初期化する前に、デバッグビルドで
self.FIREBASE_APPCHECK_DEBUG_TOKENをtrueに設定して、デバッグモードを有効にします。例:self.FIREBASE_APPCHECK_DEBUG_TOKEN = true; initializeAppCheck(app, { /* App Check options */ });ウェブアプリをローカルで表示し、ブラウザのデベロッパー ツールを開きます。デバッグ コンソールに、デバッグ トークンが表示されます。
AppCheck debug token: "123a4567-b89c-12d3-e456-789012345678". You will need to safelist it in the Firebase console for it to work.デバッグ トークンを App Check に登録します。
Firebase コンソールで、[セキュリティ] > [App Check] > [アプリ] タブに移動します。
アプリを見つけて、オーバーフロー メニュー()をクリックし、[デバッグ トークンを管理] を選択します。
画面上の手順に沿ってデバッグ トークンを登録します。
デバッグ プロバイダの詳細(新しいデバッグ トークンの取得方法など)については、App Check の公式ドキュメントをご覧ください。
Dart
iOS+
シミュレータでインタラクティブにアプリを実行しているときに(ローカル開発中など)デバッグ プロバイダを使用するには、次の手順を行います。
Firebase アプリを初期化した直後に、デバッグ プロバイダで App Check を有効にします。
import 'package:flutter/material.dart'; import 'package:firebase_core/firebase_core.dart'; // Import the firebase_app_check plugin import 'package:firebase_app_check/firebase_app_check.dart'; Future<void> main() async { WidgetsFlutterBinding.ensureInitialized(); await Firebase.initializeApp(); await FirebaseAppCheck.instance.activate( // Set appleProvider to `AppleProvider.debug` appleProvider: AppleProvider.debug, ); runApp(App()); }Xcode プロジェクトでデバッグ ロギングを有効にします。
- [Product] > [Scheme] > [Edit scheme] の順に開きます。
- 左側のメニューから [Run] を選択し、[Arguments] タブを選択します。
- [Arguments Passed on Launch] セクションで
-FIRDebugEnabledを追加します。
デバッグ トークンを取得します。
Xcode を使用して
ios/Runner.xcworkspaceを開き、シミュレータまたはテスト用のデバイスでアプリを実行します。Xcode コンソールを開き、App Check デバッグ トークンを探します。例:
<Warning> [AppCheckCore][I-GAC004001] App Check debug token: '123a4567-b89c-12d3-e456-789012345678'.トークン(例:
123a4567-b89c-12d3-e456-789012345678)をコピーします。
デバッグ トークンを App Check に登録します。
Firebase コンソールで、[セキュリティ] > [App Check] > [アプリ] タブに移動します。
アプリを見つけて、オーバーフロー メニュー()をクリックし、[デバッグ トークンを管理] を選択します。
画面上の手順に沿ってデバッグ トークンを登録します。
Android
エミュレータでインタラクティブにアプリを実行しているときに(ローカル開発中など)デバッグ プロバイダを使用するには、次の手順を行います。
Firebase アプリを初期化した直後に、デバッグ プロバイダで App Check を有効にします。
import 'package:flutter/material.dart'; import 'package:firebase_core/firebase_core.dart'; // Import the firebase_app_check plugin import 'package:firebase_app_check/firebase_app_check.dart'; Future<void> main() async { WidgetsFlutterBinding.ensureInitialized(); await Firebase.initializeApp(); await FirebaseAppCheck.instance.activate( // Set androidProvider to `AndroidProvider.debug` androidProvider: AndroidProvider.debug, ); runApp(App()); }デバッグ トークンを取得します。
エミュレータまたはテストデバイスでアプリを実行します。
ログで App Check デバッグトークンを探します。例:
D DebugAppCheckProvider: Enter this debug secret into the allow list in the Firebase Console for your project: 123a4567-b89c-12d3-e456-789012345678トークン(例:
123a4567-b89c-12d3-e456-789012345678)をコピーします。
デバッグ トークンを App Check に登録します。
Firebase コンソールで、[セキュリティ] > [App Check] > [アプリ] タブに移動します。
アプリを見つけて、オーバーフロー メニュー()をクリックし、[デバッグ トークンを管理] を選択します。
画面上の手順に沿ってデバッグ トークンを登録します。
Web
localhost からインタラクティブにアプリを実行しているときに(ローカル開発中など)デバッグ プロバイダを使用する方法は次のとおりです。
ファイル
web/index.htmlで、self.FIREBASE_APPCHECK_DEBUG_TOKENをtrueに設定してデバッグモードを有効にします。<body> <script> self.FIREBASE_APPCHECK_DEBUG_TOKEN = true; </script> ... </body>ウェブアプリをローカルで実行して、ブラウザのデベロッパー ツールを開きます。デバッグ コンソールに、デバッグ トークンが表示されます。
AppCheck debug token: "123a4567-b89c-12d3-e456-789012345678". You will need to safelist it in the Firebase console for it to work.このトークンは、ブラウザのローカルに格納され、同じマシンの同じブラウザでアプリを使用するたびに使用されます。トークンを別のブラウザや別のマシンで使用する場合は、
self.FIREBASE_APPCHECK_DEBUG_TOKENをtrueではなくトークン文字列に設定します。デバッグ トークンを App Check に登録します。
Firebase コンソールで、[セキュリティ] > [App Check] > [アプリ] タブに移動します。
アプリを見つけて、オーバーフロー メニュー()をクリックし、[デバッグ トークンを管理] を選択します。
画面上の手順に沿ってデバッグ トークンを登録します。
デバッグ プロバイダの詳細(新しいデバッグ トークンの取得方法など)については、App Check の公式ドキュメントをご覧ください。
Unity
エミュレータでインタラクティブにアプリを実行しているときに(ローカル開発中など)デバッグ プロバイダを使用するには、次の手順を行います。
Firebase コンソールで、デバッグ トークンを作成します。
Firebase コンソールで、[セキュリティ] > [App Check] > [アプリ] タブに移動します。
アプリを見つけて、オーバーフロー メニュー()をクリックし、[デバッグ トークンを管理] を選択します。
画面上の手順に沿って、新しいデバッグ トークンを作成します。
アプリの初期化コードに、次のコードを追加します。
using Firebase.AppCheck; void InitializeFirebase() { // Configure the Debug Provider factory with your debug token. DebugAppCheckProviderFactory.Instance.SetDebugToken("YOUR_DEBUG_TOKEN"); // Set App Check to use the debug provider factory FirebaseAppCheck.SetAppCheckProviderFactory( DebugAppCheckProviderFactory.Instance); // Proceed to initialize Firebase as normal }
デバッグ プロバイダの詳細(新しいデバッグ トークンの取得方法など)については、App Check の公式ドキュメントをご覧ください。
ステップ 4: サービスを初期化してモデル インスタンスを作成する
|
Gemini API プロバイダをクリックして、このページでプロバイダ固有のコンテンツとコードを表示します。 |
Gemini モデルにプロンプトを送信する前に、選択した API プロバイダのサービスを初期化して、GenerativeModel インスタンスを作成します。
Swift
import FirebaseAILogic
// Initialize the Gemini Developer API backend service
let ai = FirebaseAI.firebaseAI(backend: .googleAI())
// Create a `GenerativeModel` instance with a model that supports your use case
let model = ai.generativeModel(modelName: "gemini-3.5-flash")
Kotlin
// Initialize the Gemini Developer API backend service
// Create a `GenerativeModel` instance with a model that supports your use case
val model = Firebase.ai(backend = GenerativeBackend.googleAI())
.generativeModel("gemini-3.5-flash")
Java
// Initialize the Gemini Developer API backend service
// Create a `GenerativeModel` instance with a model that supports your use case
GenerativeModel ai = 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(ai);
Web
import { initializeApp } from "firebase/app";
import { getAI, getGenerativeModel, GoogleAIBackend } 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 Gemini Developer API backend service
const ai = getAI(firebaseApp, { backend: new GoogleAIBackend() });
// Create a `GenerativeModel` instance with a model that supports your use case
const model = getGenerativeModel(ai, { model: "gemini-3.5-flash" });
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 Gemini Developer API backend service
// Create a `GenerativeModel` instance with a model that supports your use case
final model =
FirebaseAI.googleAI().generativeModel(model: 'gemini-3.5-flash');
Unity
using Firebase;
using Firebase.AI;
// Initialize the Gemini Developer API backend service.
var ai = FirebaseAI.GetInstance(FirebaseAI.Backend.GoogleAI());
// Create a `GenerativeModel` instance with a model that supports your use case.
var model = ai.GetGenerativeModel(modelName: "gemini-3.5-flash");
使用する機能によっては、必ずしも GenerativeModel インスタンスを作成するとは限りません。Gemini Live API を使用して入出力をストリーミングするには、LiveModel インスタンスを作成します。
また、このスタートガイドを完了したら、ユースケースとアプリに適したモデルを選択する方法も学習してください。
ステップ 5: モデルにリクエストを送信する
これで、Gemini モデルにリクエストを送信する準備が整いました。
generateContent() を使用すると、テキストを含むプロンプトからテキストを生成できます。
Swift
import FirebaseAILogic
// Initialize the Gemini Developer API backend service
let ai = FirebaseAI.firebaseAI(backend: .googleAI())
// Create a `GenerativeModel` instance with a model that supports your use case
let model = ai.generativeModel(modelName: "gemini-3.5-flash")
// Provide a prompt that contains text
let prompt = "Write a story about a magic backpack."
// To generate text output, call generateContent with the text input
let response = try await model.generateContent(prompt)
print(response.text ?? "No text in response.")
Kotlin
Kotlin の場合、この SDK のメソッドは suspend 関数であり、コルーチン スコープから呼び出す必要があります。
// Initialize the Gemini Developer API backend service
// Create a `GenerativeModel` instance with a model that supports your use case
val model = Firebase.ai(backend = GenerativeBackend.googleAI())
.generativeModel("gemini-3.5-flash")
// Provide a prompt that contains text
val prompt = "Write a story about a magic backpack."
// To generate text output, call generateContent with the text input
val response = model.generateContent(prompt)
print(response.text)
Java
Java の場合、この SDK のメソッドはListenableFuture を返します。
// Initialize the Gemini Developer API backend service
// Create a `GenerativeModel` instance with a model that supports your use case
GenerativeModel ai = 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(ai);
// Provide a prompt that contains text
Content prompt = new Content.Builder()
.addText("Write a story about a magic backpack.")
.build();
// To generate text output, call generateContent with the text input
ListenableFuture<GenerateContentResponse> response = model.generateContent(prompt);
Futures.addCallback(response, new FutureCallback<GenerateContentResponse>() {
@Override
public void onSuccess(GenerateContentResponse result) {
String resultText = result.getText();
System.out.println(resultText);
}
@Override
public void onFailure(Throwable t) {
t.printStackTrace();
}
}, executor);
Web
import { initializeApp } from "firebase/app";
import { getAI, getGenerativeModel, GoogleAIBackend } 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 Gemini Developer API backend service
const ai = getAI(firebaseApp, { backend: new GoogleAIBackend() });
// Create a `GenerativeModel` instance with a model that supports your use case
const model = getGenerativeModel(ai, { model: "gemini-3.5-flash" });
// Wrap in an async function so you can use await
async function run() {
// Provide a prompt that contains text
const prompt = "Write a story about a magic backpack."
// To generate text output, call generateContent with the text input
const result = await model.generateContent(prompt);
const response = result.response;
const text = response.text();
console.log(text);
}
run();
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 Gemini Developer API backend service
// Create a `GenerativeModel` instance with a model that supports your use case
final model =
FirebaseAI.googleAI().generativeModel(model: 'gemini-3.5-flash');
// Provide a prompt that contains text
final prompt = [Content.text('Write a story about a magic backpack.')];
// To generate text output, call generateContent with the text input
final response = await model.generateContent(prompt);
print(response.text);
Unity
using Firebase;
using Firebase.AI;
// Initialize the Gemini Developer API backend service.
var ai = FirebaseAI.GetInstance(FirebaseAI.Backend.GoogleAI());
// Create a `GenerativeModel` instance with a model that supports your use case.
var model = ai.GetGenerativeModel(modelName: "gemini-3.5-flash");
// Provide a prompt that contains text
var prompt = "Write a story about a magic backpack.";
// To generate text output, call GenerateContentAsync with the text input
var response = await model.GenerateContentAsync(prompt);
UnityEngine.Debug.Log(response.Text ?? "No text in response.");
Google アシスタントの機能
サポートされているモデルの詳細
さまざまなユースケースで利用可能なモデルとその割り当てと料金について学習します。
その他の機能を試す
- テキストのみのプロンプトからテキストを生成する方法(レスポンスをストリーミングする方法など)について学習する。
- 画像、PDF、動画、音声などのさまざまなファイル形式でプロンプトを入力して、テキストを生成します。
- マルチターン会話(チャット)を構築します。
- テキスト プロンプトとマルチモーダル プロンプトの両方から構造化出力(JSON など)を生成します。
- テキスト プロンプトとマルチモーダル プロンプトの両方から画像を生成、編集します。
- Gemini Live API を使用したストリームの入出力(音声を含む)。
- ツール(関数呼び出しや Google 検索によるグラウンディングなど)を使用して、Gemini モデルをアプリの他の部分や外部システム、情報に接続します。
コンテンツ生成を制御する方法
- ベスト プラクティス、戦略、プロンプトの例など、プロンプト設計について理解する。
- 最大出力トークン、出力トークンの繰り返し確率などのモデル パラメータを構成します。
- 安全性設定を使用する: 有害とみなされる可能性のあるレスポンスが返される可能性を調整します。
Firebase AI Logic の使用感についてフィードバックを送信する