Firebase AI Logic を使用した Gemini API
Firebase AI Logic を使用して、Gemini モデルで AI を活用したモバイルアプリとウェブアプリ、機能を構築する
Firebase AI Logic を使用すると、 Google の最新の生成 AI モデルである Gemini モデルにアクセスできます。
モバイルアプリまたはウェブアプリから Gemini API を直接呼び出す必要がある場合は、 サーバーサイドではなく、 Firebase AI Logic クライアント SDK を使用できます。これらのクライアント SDK は、モバイルアプリとウェブアプリでの使用に特化して構築されており、未承認のクライアントに対するセキュリティ オプションや、他の Firebase サービスとの統合を提供します。
これらのクライアント SDK は、Apple プラットフォーム用の Swift、Android 用の Kotlin と Java、ウェブ用の JavaScript、Flutter 用の Dart、Unity で使用できます。
これらのクライアント SDK を使用すると、アプリに AI パーソナライズ機能を追加したり、AI チャット エクスペリエンスを構築したり、AI による最適化と自動化を作成したりできます。
主な機能
| マルチモーダルと自然言語入力 |
The Gemini モデル は
マルチモーダルであるため、Gemini API に送信されるプロンプトには、テキスト、
画像、PDF、動画、音声を含めることができます。一部の Gemini モデルでは、マルチモーダル 出力も生成できます。 Gemini モデルは、自然言語入力でプロンプトを表示できます。 |
| 機能の拡充 | SDK を使用すると、モバイルアプリまたはウェブアプリから Gemini API を直接呼び出して、AI チャット エクスペ 2 リエンスの構築、画像の生成、ツール(関数呼び出しや Google 検索によるグラウンディングなど)の使用、マルチモーダル入力と出力(音声を含む)のストリーミングなどを行うことができます。 |
| 本番環境アプリのセキュリティと不正使用の防止 |
Firebase App Check を使用すると、Gemini モデルにアクセスする API を
未承認のクライアントによる不正使用から保護できます。
Firebase AI Logic には、ユーザーごとのレート制限が __デフォルトで設定されており、このユーザーごとのレート制限は完全に 構成可能です。 |
| 堅牢なインフラストラクチャ | モバイルアプリやウェブアプリでの使用を想定して構築されたスケーラブルなインフラストラクチャを活用します。たとえば、ファイルを管理したり、Firebase データベース オファリング(Cloud Firestoreなど)で構造化データを管理したり、Firebase Remote Configで実行時の構成を動的に設定したりできます。Cloud Storage for Firebase |
仕組み
Firebase AI Logic には、クライアント SDK、プロキシ サービスなどの機能 が用意されています。これにより、Google の生成 AI モデルにアクセスして、 モバイルアプリやウェブアプリに AI 機能を構築できます。
Google モデルと「Gemini API」プロバイダのサポート
最新の Gemini モデルはすべてサポートされており、 これらのモデルにアクセスするには、任意の「Gemini API」プロバイダを選択します。 Gemini Developer API と Vertex AI Gemini API の両方がサポートされています。2 つの API プロバイダの使用の 違いについてご確認ください。
Gemini Developer API を使用する場合は、「無料枠」を利用して迅速に開始できます。
モバイル クライアント SDK とウェブ クライアント SDK
Apple プラットフォーム用の Swift、Android 用の Kotlin と Java、ウェブ用の JavaScript、Flutter 用の Dart、Unity で利用できる Firebase AI Logic クライアント SDK を使用して、モバイルアプリまたはウェブアプリからモデルに直接リクエストを送信します。
Firebase プロジェクトに Gemini API プロバイダの両方が設定されている場合は、もう一方の API を有効にして初期化コードを数行変更するだけで、API プロバイダを切り替えることができます。
また、一部のクライアント SDK では、 ハイブリッド推論とオンデバイス推論にアクセスできます。この構成により、アプリはオンデバイス モデルが利用可能な場合はオンデバイス モデルを使用し、必要に応じてクラウド ホスト型モデルにシームレスにフォールバックできます(逆も同様です)。
プロキシ サービス
Google のプロキシ サービスは、クライアントと選択した Gemini API プロバイダ(および Google のモデル)間のゲートウェイとして機能します。モバイルアプリやウェブアプリにとって重要なサービスと統合を提供します。たとえば、 設定するとFirebase App Check、 選択した API プロバイダとバックエンド リソースを未承認の クライアントによる不正使用から保護できます。
Gemini Developer API を使用する場合は、特に重要です。Google のプロキシ サービスとこの App Check 統合により、Gemini API キーがサーバーに保持され、 アプリのコードベースに埋め込まれないようにします。
実装パス
| Firebase プロジェクトを設定し、アプリを Firebase に接続する | Firebase AI Logic ページの Firebase コンソールにあるガイド付きワークフローを使用して、プロジェクトを設定します(選択した Gemini API プロバイダに必要な API を有効にするなど)。アプリを Firebase プロジェクトに登録し、Firebase 構成をアプリに追加します。 | |
| SDK をインストールして初期化する | アプリのプラットフォームに固有の Firebase AI Logic SDK をインストールし、サービスを初期化して、アプリにモデル インスタンスを作成します。 | |
| Gemini モデルにプロンプト リクエストを送信する | SDK を使用して、テキストのみのプロンプトまたはマルチモーダル プロンプトを Gemini
モデルに送信し、
テキストとコード、
構造化出力(JSON など)
および
画像を生成します。
マルチターン チャット、双方向ストリーミング(音声を含む)、および関数呼び出しを使用して、よりリッチなエクスペリエンスを構築します。 |
|
| 本番環境用の準備 | モバイルアプリとウェブアプリの重要な統合を実装します。たとえば、 API を不正使用から保護したり、 Firebase App Check Firebase Remote Config を使用してコード内のパラメータ(最も重要なモデル名)をリモートで更新したりします。 |
次のステップ
モバイルアプリまたはウェブアプリからモデルにアクセスする