Firebase AI Logic SDK を使用して Gemini API を使ってみる

このガイドでは、選択したプラットフォーム用の 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 を有効にする

  1. Firebase コンソールにログインし、Firebase プロジェクトを選択します。

  2. Firebase コンソールで、[AI サービス] > [AI ロジック] に移動します。

  3. [使ってみる] をクリックして、プロジェクトに必要な API とリソースの設定に役立つガイド付きワークフローを起動します。

  4. メッセージが表示されたら、画面上の手順に沿ってアプリを登録し、Firebase 構成をアプリに追加します。

  5. [Gemini API プロバイダ] を選択するよう求められたら、Gemini Developer API を選択することをおすすめします。これにより、無料で迅速に始めることができます。

    後からいつでも Vertex AI Gemini API を設定できます(お支払いに関する要件も同様です)。

  6. ワークフローを続行して、Firebase AI Logic に必要な API と関連サービスを設定します。

    2026 年 7 月上旬より、ワークフローのこのステージでは、アプリから直接アクセスされたときに Gemini API を保護するのに役立つ重要なサービスである AI Logic に対して Firebase App Check が自動的に適用されます。スタートガイド(このガイドの後半のステップを参照)の一環として、App Check が適用されるときにローカル開発用の App Check デバッグ プロバイダを構成する必要があります。

  7. このガイドの次の手順に進み、必要な 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 以降であることを確認してください。

  1. Xcode でアプリ プロジェクトを開いたまま、[File] > [Add Package Dependencies] の順に移動します。

  2. プロンプトが表示されたら、Firebase Apple プラットフォーム SDK リポジトリを追加します。

    https://github.com/firebase/firebase-ios-sdk
    
  3. 最新の SDK バージョンを選択します。

  4. 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 の一部として含まれています。

  1. npm を使用してウェブ用の Firebase JS SDK をインストールします。

    npm install firebase
    
  2. アプリで 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 へのアクセスを提供します。

  1. Flutter プロジェクト ディレクトリで、次のコマンドを実行してコア プラグインと Firebase AI Logic プラグインをインストールします。

    flutter pub add firebase_ai firebase_app_check
    
  2. lib/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';
    
  3. また、lib/main.dart ファイルで、構成ファイルによってエクスポートされた DefaultFirebaseOptions オブジェクトを使用して Firebase を初期化していることを確認します。

    await Firebase.initializeApp(
      options: DefaultFirebaseOptions.currentPlatform,
    );
    
  4. Flutter アプリケーションを再ビルドします。

    flutter run
    

Unity

  1. Firebase Unity SDK をダウンロードし、適切な場所に抽出します。

    Firebase Unity SDK はプラットフォーム固有ではありません。

  2. 開いている Unity プロジェクトで、[Assets] > [Import Package] > [Custom Package] を選択します。

  3. 抽出した SDK から、FirebaseAI パッケージと FirebaseAppCheck パッケージを選択します。

  4. [Import Unity Package] ウィンドウで [Import] をクリックします。

ステップ 3: ローカル開発用に App Check デバッグ プロバイダを構成する

2026 年 7 月上旬より、コンソールの AI Logic のガイド付き設定ワークフローの一環として、Gemini API を保護するために Firebase App Check が自動的に適用されます。ローカル開発では、App Check の適用を維持しながら、証明書をバイパスするように App Check デバッグ プロバイダを構成する必要があります。

Swift

シミュレータでインタラクティブにアプリを実行しているときに(ローカル開発中など)デバッグ プロバイダを使用するには、次の手順を行います。

  1. 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()
          }
        }
      }
    }
    
  2. デバッグ トークンを取得します。

    1. シミュレータまたはテストデバイスでアプリを起動します。

    2. Xcode コンソールを開き、App Check デバッグ トークンを探します。例:

      <Warning> [AppCheckCore][I-GAC004001] App Check debug token: '123a4567-b89c-12d3-e456-789012345678'.
      
    3. トークン(123a4567-b89c-12d3-e456-789012345678 など)をコピーします。

  3. デバッグ トークンを App Check に登録します。

    1. Firebase コンソールで、[セキュリティ] > [App Check] > [アプリ] タブに移動します。

    2. アプリを見つけて、オーバーフロー メニュー()をクリックし、[デバッグ トークンを管理] を選択します。

    3. 画面上の手順に沿ってデバッグ トークンを登録します。

デバッグ プロバイダの詳細(新しいデバッグ トークンの取得方法など)については、App Check の公式ドキュメントをご覧ください。

Kotlin

エミュレータでインタラクティブにアプリを実行しているときに(ローカル開発中など)デバッグ プロバイダを使用するには、次の手順を行います。

  1. デバッグビルドで、デバッグ プロバイダ Factory を使用するように App Check を構成します。

    Firebase.initialize(context = this)
    Firebase.appCheck.installAppCheckProviderFactory(
        DebugAppCheckProviderFactory.getInstance(),
    )
  2. デバッグ トークンを取得します。

    1. エミュレータまたはテストデバイスでアプリを実行します。

    2. ログで App Check デバッグトークンを探します。例:

      D DebugAppCheckProvider: Enter this debug secret into the allow list
      in the Firebase Console for your project: 123a4567-b89c-12d3-e456-789012345678
      
    3. トークン(123a4567-b89c-12d3-e456-789012345678 など)をコピーします。

  3. デバッグ トークンを App Check に登録します。

    1. Firebase コンソールで、[セキュリティ] > [App Check] > [アプリ] タブに移動します。

    2. アプリを見つけて、オーバーフロー メニュー()をクリックし、[デバッグ トークンを管理] を選択します。

    3. 画面上の手順に沿ってデバッグ トークンを登録します。

デバッグ プロバイダの詳細(新しいデバッグ トークンの取得方法など)については、App Check の公式ドキュメントをご覧ください。

Java

エミュレータでインタラクティブにアプリを実行しているときに(ローカル開発中など)デバッグ プロバイダを使用するには、次の手順を行います。

  1. デバッグビルドで、デバッグ プロバイダ Factory を使用するように App Check を構成します。

    FirebaseApp.initializeApp(/*context=*/ this);
    FirebaseAppCheck firebaseAppCheck = FirebaseAppCheck.getInstance();
    firebaseAppCheck.installAppCheckProviderFactory(
            DebugAppCheckProviderFactory.getInstance());
  2. デバッグ トークンを取得します。

    1. エミュレータまたはテストデバイスでアプリを実行します。

    2. ログで App Check デバッグトークンを探します。例:

      D DebugAppCheckProvider: Enter this debug secret into the allow list
      in the Firebase Console for your project: 123a4567-b89c-12d3-e456-789012345678
      
    3. トークン(123a4567-b89c-12d3-e456-789012345678 など)をコピーします。

  3. デバッグ トークンを App Check に登録します。

    1. Firebase コンソールで、[セキュリティ] > [App Check] > [アプリ] タブに移動します。

    2. アプリを見つけて、オーバーフロー メニュー()をクリックし、[デバッグ トークンを管理] を選択します。

    3. 画面上の手順に沿ってデバッグ トークンを登録します。

デバッグ プロバイダの詳細(新しいデバッグ トークンの取得方法など)については、App Check の公式ドキュメントをご覧ください。

Web

localhost からインタラクティブにアプリを実行しているときに(ローカル開発中など)、デバッグ プロバイダを使用する方法は次のとおりです。

  1. App Check を初期化する前に、デバッグビルドで self.FIREBASE_APPCHECK_DEBUG_TOKENtrue に設定して、デバッグモードを有効にします。例:

    self.FIREBASE_APPCHECK_DEBUG_TOKEN = true;
    initializeAppCheck(app, { /* App Check options */ });
    
  2. ウェブアプリをローカルで表示し、ブラウザのデベロッパー ツールを開きます。デバッグ コンソールに、デバッグ トークンが表示されます。

    AppCheck debug token: "123a4567-b89c-12d3-e456-789012345678".
    You will need to safelist it in the Firebase console for it to work.
    
  3. デバッグ トークンを App Check に登録します。

    1. Firebase コンソールで、[セキュリティ] > [App Check] > [アプリ] タブに移動します。

    2. アプリを見つけて、オーバーフロー メニュー()をクリックし、[デバッグ トークンを管理] を選択します。

    3. 画面上の手順に沿ってデバッグ トークンを登録します。

デバッグ プロバイダの詳細(新しいデバッグ トークンの取得方法など)については、App Check の公式ドキュメントをご覧ください。

Dart

iOS+

シミュレータでインタラクティブにアプリを実行しているときに(ローカル開発中など)デバッグ プロバイダを使用するには、次の手順を行います。

  1. 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());
    }
    
  2. Xcode プロジェクトでデバッグ ロギングを有効にします。

    1. [Product] > [Scheme] > [Edit scheme] の順に開きます。
    2. 左側のメニューから [Run] を選択し、[Arguments] タブを選択します。
    3. [Arguments Passed on Launch] セクションで -FIRDebugEnabled を追加します。
  3. デバッグ トークンを取得します。

    1. Xcode を使用して ios/Runner.xcworkspace を開き、シミュレータまたはテスト用のデバイスでアプリを実行します。

    2. Xcode コンソールを開き、App Check デバッグ トークンを探します。例:

      <Warning> [AppCheckCore][I-GAC004001] App Check debug token: '123a4567-b89c-12d3-e456-789012345678'.
      
    3. トークン(例: 123a4567-b89c-12d3-e456-789012345678)をコピーします。

  4. デバッグ トークンを App Check に登録します。

    1. Firebase コンソールで、[セキュリティ] > [App Check] > [アプリ] タブに移動します。

    2. アプリを見つけて、オーバーフロー メニュー()をクリックし、[デバッグ トークンを管理] を選択します。

    3. 画面上の手順に沿ってデバッグ トークンを登録します。

Android

エミュレータでインタラクティブにアプリを実行しているときに(ローカル開発中など)デバッグ プロバイダを使用するには、次の手順を行います。

  1. 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());
    }
    
  2. デバッグ トークンを取得します。

    1. エミュレータまたはテストデバイスでアプリを実行します。

    2. ログで App Check デバッグトークンを探します。例:

      D DebugAppCheckProvider: Enter this debug secret into the allow list
      in the Firebase Console for your project: 123a4567-b89c-12d3-e456-789012345678
      
    3. トークン(例: 123a4567-b89c-12d3-e456-789012345678)をコピーします。

  3. デバッグ トークンを App Check に登録します。

    1. Firebase コンソールで、[セキュリティ] > [App Check] > [アプリ] タブに移動します。

    2. アプリを見つけて、オーバーフロー メニュー()をクリックし、[デバッグ トークンを管理] を選択します。

    3. 画面上の手順に沿ってデバッグ トークンを登録します。

Web

localhost からインタラクティブにアプリを実行しているときに(ローカル開発中など)デバッグ プロバイダを使用する方法は次のとおりです。

  1. ファイル web/index.html で、self.FIREBASE_APPCHECK_DEBUG_TOKENtrue に設定してデバッグモードを有効にします。

    <body>
      <script>
        self.FIREBASE_APPCHECK_DEBUG_TOKEN = true;
      </script>
    
      ...
    
    </body>
    
  2. ウェブアプリをローカルで実行して、ブラウザのデベロッパー ツールを開きます。デバッグ コンソールに、デバッグ トークンが表示されます。

    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_TOKENtrue ではなくトークン文字列に設定します。

  3. デバッグ トークンを App Check に登録します。

    1. Firebase コンソールで、[セキュリティ] > [App Check] > [アプリ] タブに移動します。

    2. アプリを見つけて、オーバーフロー メニュー()をクリックし、[デバッグ トークンを管理] を選択します。

    3. 画面上の手順に沿ってデバッグ トークンを登録します。

デバッグ プロバイダの詳細(新しいデバッグ トークンの取得方法など)については、App Check の公式ドキュメントをご覧ください。

Unity

エミュレータでインタラクティブにアプリを実行しているときに(ローカル開発中など)デバッグ プロバイダを使用するには、次の手順を行います。

  1. Firebase コンソールで、デバッグ トークンを作成します。

    1. Firebase コンソールで、[セキュリティ] > [App Check] > [アプリ] タブに移動します。

    2. アプリを見つけて、オーバーフロー メニュー()をクリックし、[デバッグ トークンを管理] を選択します。

    3. 画面上の手順に沿って、新しいデバッグ トークンを作成します。

  2. アプリの初期化コードに、次のコードを追加します。

    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 アシスタントの機能

サポートされているモデルの詳細

さまざまなユースケースで利用可能なモデルとその割り当て料金について学習します。

その他の機能を試す

コンテンツ生成を制御する方法

Google AI Studio を使用して、プロンプトとモデル構成をテストしたり、生成されたコード スニペットを取得したりすることもできます。


Firebase AI Logic の使用感についてフィードバックを送信する