レート制限と割り当て

Gemini API プロバイダをクリックして、このページでプロバイダ固有のコンテンツとコードを表示します。


レート制限(一般に割り当てと呼ばれる)は、特定の期間内に Gemini API に対して実行できるリクエストの数を制御します。これらの上限は、公正な使用を確保し、不正行為から保護し、すべてのユーザーのシステム パフォーマンスを維持するために役立ちます。

Firebase AI Logic を使用して Gemini モデルと Imagen モデルにリクエストを送信する場合、プロジェクトのレート制限は、選択した「Gemini API」プロバイダによって異なります。Firebase AI Logic には、「ユーザーごと」のレート制限を設定する方法も用意されています。

Gemini Developer API のレート上限を表示する

レート制限(割り当て)の仕組み

レート制限(割り当て)は、次の 4 つのディメンションで測定されます。

  • 1 分あたりのリクエスト数(RPM)
  • 1 日あたりのリクエスト数(RPD)
  • 1 分あたりのトークン数(TPM)
  • 1 日あたりのトークン数(TPD)

使用量は各上限に対して評価され、いずれかの上限を超えると、429 割り当て超過エラーが発生します。たとえば、RPM の上限が 20 の場合、1 分間に 21 件のリクエストを実行すると、TPM などの上限を超えていない場合でもエラーが発生します。

レート制限はプロジェクト レベルで適用され、その Firebase プロジェクトを使用するすべてのアプリケーションと IP アドレスに適用されます。

上限は、使用しているモデルによって異なり、一部の上限は特定のモデルにのみ適用されます。たとえば、画像 / 分(IPM)は画像を生成できるモデル(Imagen 3)でのみ計算されますが、概念的には TPM に似ています。

試験運用版モデルとプレビュー版モデルでは、レート制限がより厳しくなっています。

レート制限の引き上げをリクエストする

Gemini Developer API の「有料階層」をご利用の場合は、レート制限の引き上げをリクエストできます。

「ユーザーごと」のレート制限を設定する

Firebase AI Logic を使用するには、選択した Gemini API プロバイダをプロジェクトで有効にする必要がありますが、Firebase AI Logic API も有効にする必要があります。これは、クライアント SDK と Gemini API プロバイダ間のゲートウェイとして機能します。この API は、Firebase プロジェクトで Firebase AI Logic を最初に設定するときに有効になります。

Firebase AI Logic API のレート制限(割り当て)を、アプリの「ユーザーごと」のレート制限として使用できます。特に、Firebase AI Logic に依存する AI 機能に使用できます。この上限を設定して、AI 機能にアクセスする単一ユーザーを合理的に収容し、単一ユーザーが Gemini API プロバイダの上限(すべてのユーザーが共有することを目的としています)を超えないようにする必要があります。

「ユーザーごと」のレート制限の詳細

Firebase AI Logic API のレート制限(割り当て)に関する主な重要事項は次のとおりです。特に、1 分あたりのリクエスト数(RPM)について説明します。

  • これは、ユーザー、リージョン、1 分あたりの「コンテンツ リクエストの生成」に基づいており、モデルに基づくものではありません。

  • これはプロジェクト レベルで適用され、その Firebase プロジェクトを使用するすべてのアプリケーションと IP アドレスに適用されます。

  • これは、特定の Firebase AI Logic SDK からの呼び出しに適用されます。

  • デフォルトのレート制限は、ユーザーあたり 100 RPM です。
    Firebase AI Logic API よりも優先される Gemini API プロバイダの制限(上記を参照)を考慮する必要があります。

「ユーザーごと」のレート制限を調整する

レート制限(割り当て)を調整するには、serviceusage.quotas.update 権限が必要です。この権限は、オーナーロールと編集者ロールにデフォルトで含まれています。

レート制限(割り当て)を編集する方法、または引き上げをリクエストする方法は次のとおりです。

  1. Google Cloud コンソールで、Firebase AI Logic API のページに移動します。

  2. [管理] をクリックします。

  3. ページの下部にある [割り当てとシステム上限] タブをクリックします。

  4. 表をフィルタして、関心のある割り当て(機能(コンテンツ生成リクエスト)やリージョンなど)を表示します。

    たとえば、サポートされているアジアのいずれかのリージョンでコンテンツ リクエストを生成するユーザーごとの割り当てを表示するには、フィルタは次のようになります。Generate content requests + Dimension:region:asia

  5. 対象の各割り当ての左側にあるチェックボックスをオンにします。

  6. 割り当ての行の末尾にある をクリックし、[割り当てを編集] を選択します。

  7. [割り当ての変更] フォームで、次の操作を行います。

    1. [新しい値] フィールドに、増加させた割り当てを入力します。

      この割り当てはプロジェクト レベルで適用され、その Firebase プロジェクトを使用するすべてのアプリケーションと IP アドレスで共有されます。

    2. フォームのその他のフィールドに入力して、[完了] をクリックします。

    3. [リクエストを送信] をクリックします。