AI 機能の費用、使用状況、その他の指標をモニタリングすることは、本番環境アプリの実行において重要な部分です。アプリの通常の使用パターンがどのようになっているかを把握して、重要なしきい値を超えないようにする必要があります。
このページでは、Firebase コンソールと Google Cloud コンソールの両方で費用、使用量、その他の指標をモニタリングするための推奨オプションについて説明します。
費用をモニタリングする
Firebase コンソールの [使用量と請求額] ダッシュボードで、Vertex AI Gemini API と Gemini Developer API の呼び出しにかかるプロジェクトの費用を確認できます(Blaze プランの場合)。
ダッシュボードに表示される費用は、Firebase AI Logic クライアント SDK を使用する呼び出しに固有のものであるとは限りません。表示される費用は、Firebase AI Logic クライアント SDK、Google GenAI サーバー SDK、Genkit、Gemini API の Firebase Extensions、REST 呼び出し、AI Studio のいずれか、またはその他の API クライアントを使用しているかどうかにかかわらず、これらの「Gemini API」へのすべての呼び出しに関連付けられています。
Firebase AI Logic の使用に関連する商品の価格について確認する。
アラートの設定
想定外の請求が発生しないように、Blaze お支払いプランを使用している場合は、予算アラートを設定してください。
予算アラートは予算の上限ではありません。構成したしきい値に近づいたときやしきい値を超えたときにアラートが送信されるため、アプリやプロジェクトで適切な対応を取ることができます。
Firebase コンソールで AI 機能の使用状況を確認する
Firebase コンソールの Firebase AI Logic ページで AI モニタリングを有効にすると、さまざまなアプリレベルの指標と使用状況をモニタリングして、Firebase AI Logic クライアント SDK からのリクエストを包括的に把握できます。これらのダッシュボードは、トークン数をカウントする API の呼び出しで取得できる基本的なトークン数よりも詳細な情報を提供します。
Firebase コンソールの AI モニタリングの主な機能は次のとおりです。
各アプリのリクエスト量、レイテンシ、エラー、モードごとのトークン使用量などの定量的な指標を表示します。
トレースを調べてリクエストの属性、入力、出力を確認します。これは、デバッグと品質の向上に役立ちます。
リクエスト ステータス、最小レイテンシ、モデル名などのディメンションでデータをスライスします。
これらの機能はすべて Google Cloud Observability Suite を使用して構築されています(以下のプロダクトの詳細情報を参照)。
AI モニタリングを有効にする
Firebase コンソールで AI モニタリングを有効にする方法は次のとおりです。
Firebase AI Logic ページから初期設定のガイド付きワークフローを実行する場合
Firebase AI Logic [設定] タブでいつでも変更できます。
AI モニタリングを有効にして使用するための要件:
プロジェクトのオーナー、編集者、または Firebase Vertex AI 管理者である必要があります。
アプリでは、少なくとも次のバージョンの Firebase ライブラリを使用する必要があります。
iOS+: v11.13.0 以降 | Android: v16.0.0 以降(BoM: v33.14.0 以降)| ウェブ: v11.8.0 以降 | Flutter: v2.0.0 以降(BoM: v3.11.0 以降)| Unity: v12.9.0 以降アプリでオプトイン データ収集が有効になっている必要があります(デフォルトで有効になっています)。
アプリがこれらの要件を満たし、コンソールで AI モニタリングを有効にすると、アプリやコンソールで他の操作をしなくても、Firebase AI Logic [AI モニタリング] タブのダッシュボードにデータが入力されるようになります。リクエストのテレメトリーが Firebase コンソールで使用可能になるまでに、わずかな遅延(最大 5 分)が発生する可能性があります。
高度な使い方
このセクションでは、サンプリング レートの構成と、データの表示と操作のさまざまなオプションについて説明します。
サンプリング レート
リクエストを大量に送信する場合は、サンプリング レートの構成を利用することをおすすめします。サンプリング レートは、トレースの詳細が実際に収集されるリクエストの割合を示します。
Firebase コンソールの [Firebase AI Logic 設定] タブで、プロジェクトのサンプリング レートを 1 ~ 100% の値に構成できます。100% は、AI モニタリングがすべてのトラフィックからトレースを収集することを意味します。デフォルトは 100% です。収集するトレースの数を減らすと、費用は削減されますが、モニタリングできるトレースの数も減ります。サンプリング レートに関係なく、モニタリング ダッシュボードに表示されるグラフには常に実際のトラフィック量が反映されます。
Firebase コンソール以外の追加オプション
Firebase コンソールで利用可能な AI モニタリングに加えて、次のオプションも検討してください。
Vertex AI Model Garden を確認する。
これらのダッシュボードは、マネージド モデルのレイテンシとスループットに関する傾向の分析情報をさらに提供し、Firebase コンソールの AI モニタリングから得られる分析情報を補完します。Google Cloud Observability Suite
を使用してデータを探索し、使用する: AI モニタリングのテレメトリー データは、プロジェクトに関連付けられた Google Cloud Observability Suite に保存されるため、Firebase コンソールで個々のトレースを検査するときにリンクされる Trace Explorer や Logs Explorer などのダッシュボードでデータを探索できます。データを使用して、カスタム ダッシュボードの作成やアラートの設定なども行えます。
AI モニタリングに使用されるプロダクトの詳細情報
AI モニタリングは、Google Cloud Observability Suite で利用可能なさまざまなプロダクト(Cloud Monitoring、Cloud Trace、Cloud Logging など)にテレメトリー データを保存します。
Cloud Monitoring: リクエスト数、成功率、リクエスト レイテンシなどの指標を保存します。
Cloud Trace: 各リクエストのトレースを保存します。これにより、集計ではなく個別に詳細を表示できます。通常、トレースはログに関連付けられているため、各インタラクションの内容とタイミングを調べることができます。
Cloud Logging: 入力、出力、構成のメタデータをキャプチャして、AI リクエストの各部分に関する詳細な情報を提供します。
テレメトリー データはこれらのプロダクトに保存されるため、各プロダクト内で直接保持設定とアクセス設定を指定できます(詳細については、Cloud Monitoring、Cloud Trace、Cloud Logging のドキュメントをご覧ください)。
AI モニタリングでは、各サンプリング リクエストからの実際のプロンプトと生成された出力が Cloud Logging に保存され、このデータに Firebase コンソールからアクセスできるようになります。必要に応じて、プロンプトとレスポンスの保存を無効にすることができます。
料金
無料の Spark 料金プランのプロジェクト(Gemini Developer API を使用する場合のみ利用可能): AI モニタリングの基盤となるサービスの使用は無料です。
従量課金制の Blaze 料金プランのプロジェクト: AI モニタリングで使用される基盤となる Google Cloud Observability Suite プロダクトの使用量に対して課金されます(選択した Gemini API プロバイダに関係なく)。ただし、各 Google Cloud Observability Suite プロダクトには無料枠が用意されています。詳しくは、Google Cloud Observability Suite の料金に関するドキュメントをご覧ください。
(省略可)プロンプトとレスポンスの保存を無効にする
デフォルトでは、AI モニタリングは、モデルに送信された実際のプロンプトと、モデルによって生成されたレスポンスをキャプチャします。これには、プロンプトとレスポンスに含まれる機密情報(個人情報(PII)など)も含まれます。このデータはすべて Cloud Logging に保存され、Firebase コンソールでアクセスできます。
プロンプトとレスポンスの保存を無効にするには、Cloud Logging シンク(通常は _Default シンク)に次の除外フィルタを追加します。resource.type="firebasevertexai.googleapis.com/Model"
Google Cloud コンソールでプロジェクト レベルの API 指標を表示する
API ごとに、Google Cloud コンソールで使用状況などのプロジェクト レベルの指標を確認できます。
このセクションで説明する Google Cloud コンソール ページには、リクエストとレスポンスのコンテンツやトークン数などの情報は含まれません。このタイプの情報をモニタリングするには、Firebase コンソールの AI モニタリング(前のセクションを参照)の使用を検討してください。
Google Cloud コンソールで、表示する API の [指標] ページに移動します。
Vertex AI API: Vertex AI Gemini API への任意のリクエストに関連付けられた使用状況を表示します。
- Firebase AI Logic クライアント SDK、Google GenAI サーバー SDK、Genkit、Gemini API の Firebase Extensions、REST API、Vertex AI Studio などを使用するリクエストが含まれます。
Gemini Developer API: Gemini Developer API への任意のリクエストに関連付けられた使用状況を表示します。
- Firebase AI Logic クライアント SDK、Google GenAI サーバー SDK、Genkit、Gemini API の Firebase Extensions、REST API、Google AI Studio などを使用するリクエストが含まれます。
- Google Cloud コンソールでのこの API の表示名は「Generative Language API」です。
API の概要ページが表示された場合は、[管理] をクリックし、[指標] タブをクリックします。
プルダウン メニューを使用して、レスポンス コード別のトラフィック、API メソッド別のエラー、全体的なレイテンシ、API メソッド別のレイテンシなど、関心のある指標を表示します。