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 は、Firebase プロジェクトまたはアプリの識別にのみ API キーを使用します。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 を使用して各ユーザーのロケーションに基づいてロケーションを動的に変更することもできます。