Vertex AI in Firebase を使用する本番環境チェックリスト

アプリをリリースして、実際のエンドユーザーが生成 AI 機能を操作する準備ができたら、ベスト プラクティスと重要な考慮事項に関するこちらのチェックリストを確認してください。

全般

Firebase を使用するアプリの一般的なリリース チェックリストを確認する

このFirebase リリース チェックリストでは、Firebase アプリを本番環境にリリースする前に行うべき重要なベスト プラクティスについて説明します。

Firebase プロジェクトがベスト プラクティスに準拠していることを確認する

たとえば、開発環境、テスト環境、本番環境で異なる Firebase プロジェクトを使用するようにしてください。プロジェクトの管理に関するその他のベスト プラクティスを確認する。

アクセスとセキュリティ

Firebase を使用するアプリの一般的なセキュリティ チェックリストを確認する

このセキュリティ チェックリストでは、Firebase アプリとサービスのアクセスとセキュリティに関する重要なベスト プラクティスについて説明します。

Firebase App Check適用を開始

App Check は、リクエストが実際のアプリからのものであることを確認することで、Vertex AI Gemini API を保護します。Apple プラットフォーム(DeviceCheck または App Attest)、Android(Play Integrity)、ウェブ(reCAPTCHA Enterprise)の認証プロバイダをサポートしています。

Firebase API キーの制限を設定する

  • 各 Firebase API キーの API の制限許可リストを確認します。

  • 「アプリケーションの制限」を設定して、各 Firebase API キーの使用をアプリからのリクエストのみに制限します(たとえば、Apple アプリのバンドル ID でマッチングします)。キーを制限する場合でも、Firebase App Check を使用することを強くおすすめします。

Firebase 関連の API は、API キーを Firebase プロジェクトまたはアプリの識別にのみ使用します。API の呼び出しの認可には使用しません。

Firebase プロジェクトで使用されていない API を無効にする

たとえば、最初に Google AI Studio を使用して Gemini API を試した場合は、Generative Language API を無効にできます。アプリは Vertex AI in Firebase を使用するようになりました。これは、代わりに Vertex AI APIVertex AI in Firebase API に依存します。

課金と割り当て

必要な基盤となる API の割り当てを確認する

Vertex AI in Firebase を使用するには、Vertex AI API と Vertex AI in Firebase API の 2 つの API が必要です。

API ごとに割り当ての測定方法が若干異なるため、異なる目的に使用できます。重要な考慮事項については、各 API の割り当てについてをご覧ください。

割り当てはモデルとリージョンによっても異なるため、ユーザーとユースケースに応じて割り当てが設定されていることを確認してください。

必要に応じて、割り当てを編集したり、割り当ての増加をリクエストしたりすることもできます。

想定外の請求を回避する

本番環境では、使用量をモニタリングし、予算アラートを設定することをおすすめします。

構成の管理

本番環境のアプリで安定版のモデル バージョンを使用する

製品版アプリでは、プレビュー バージョンや自動更新バージョンではなく、安定版のモデル バージョンgemini-1.5-flash-002 など)のみを使用してください。

自動更新バージョンが安定バージョンを参照している場合でも、新しい安定バージョンがリリースされるたびに、参照される実際のモデル バージョンが自動的に変更されます。これにより、予期しない動作やレスポンスが生じる可能性があります。また、プレビュー版はプロトタイピング中のみ使用することをおすすめします。

また、Firebase Remote Config を使用して、アプリで使用するモデル名を制御して更新することを強くおすすめします(詳細については、次のセクションをご覧ください)。

Firebase Remote Config を設定して使用する

Remote Config を使用すると、コードに値をハードコードするのではなく、クラウドで生成 AI 機能の重要な構成を制御できます。つまり、アプリの新しいバージョンをリリースしなくても、構成を更新できます。Remote Config では多くのことができますが、生成 AI 機能でリモートで制御することをおすすめする主な値は次のとおりです。

  • アプリを最新の状態に保つ。

    • モデル名: 新しいモデルがリリースされた場合や、他のモデルが終了したときは、アプリで使用するモデルを更新します。
  • クライアント属性に基づいて、またはテストやユーザーからのフィードバックに対応して、値と入力を調整します。

    • モデルの構成: 温度、最大出力トークンなどを調整します。

    • 安全性設定: 回答が過度にブロックされている場合や、ユーザーから有害な回答が報告された場合は、安全性設定を調整します。

    • システム手順指定するプロンプト: レスポンスと動作を制御するために、モデルに送信する追加のコンテキストを調整します。たとえば、特定のクライアント タイプに合わせてプロンプトを調整したり、既存のユーザーの回答の生成に使用されるプロンプトとは異なるプロンプトを新規ユーザー向けにパーソナライズしたりできます。

必要に応じて、Remote Configminimum_version パラメータを設定して、アプリの現在のバージョンと Remote Config で定義された最新バージョンを比較し、アップグレード通知をユーザーに表示するか、ユーザーに強制的にアップグレードさせるかを選択することもできます。

Vertex AI サービスを実行してモデルにアクセスする場所を設定します。

ロケーションを設定すると、コストの削減だけでなく、ユーザーのレイテンシの防止にも役立ちます。

ロケーションを指定しない場合、デフォルトは us-central1 です。このロケーションは初期化時に設定できます。必要に応じて、Firebase Remote Config を使用して各ユーザーのロケーションに基づいてロケーションを動的に変更することもできます。