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 の場合、TPM やその他の上限を超えていなくても、1 分以内に 21 回のリクエストを行うとエラーが発生します。
レート上限はプロジェクト レベルで適用され、その Firebase プロジェクトを使用するすべてのアプリケーションと IP アドレスに適用されます。
上限は使用する特定のモデルによって異なり、一部の上限は特定のモデルにのみ適用されます。たとえば、画像 / 分(IPM)は画像を生成できるモデル(Imagen 3)に対してのみ計算されますが、概念的には TPM と似ています。
試験運用版モデルとプレビュー版モデルでは、レート制限が厳しくなっています。
レート制限の引き上げをリクエストする
Gemini Developer API の「有料階層」をご利用の場合は、レート制限の引き上げをリクエストできます。
「ユーザーごとの」レート制限を設定する
Firebase AI Logic を使用するには、選択した Gemini API プロバイダを有効にする必要があります。また、Firebase AI Logic API も有効にする必要があります。これは、Google のクライアント 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)に関する重要な詳細は次のとおりです。
これは、ユーザー、リージョン、分単位の「コンテンツ生成リクエスト」に基づいており、モデルに基づくものではありません。
これはプロジェクト レベルで適用され、その Firebase プロジェクトを使用するすべてのアプリケーションと IP アドレスに適用されます。
これは、Firebase AI Logic SDK からの呼び出しに適用されます。
デフォルトのレート制限は、ユーザーあたり 100 RPM です。
なお、Gemini API プロバイダの制限(上記を参照)は Firebase AI Logic API よりも優先されるため、引き続き考慮する必要があります。
「ユーザーごと」のレート制限を調整する
レート制限(割り当て)を調整するには、serviceusage.quotas.update
権限が必要です。この権限は、オーナーロールと編集者ロールにデフォルトで含まれています。
レート制限(割り当て)を編集する、または引き上げをリクエストする方法は次のとおりです。
Google Cloud コンソールで、Firebase AI Logic API のページに移動します。
[管理] をクリックします。
ページの下部にある [割り当てとシステム上限] タブをクリックします。
テーブルをフィルタして、機能(コンテンツ生成のリクエスト)やリージョンなど、関心のある割り当てを表示します。
たとえば、サポートされているアジアのいずれかのリージョンでコンテンツ リクエストを生成するユーザーごとの割り当てを表示する場合、フィルタは次のようになります。
Generate content requests
+Dimension:region:asia
目的の各割り当ての左側にあるチェックボックスをオンにします。
割り当ての行の末尾にある
をクリックし、[割り当てを編集] を選択します。[割り当ての変更] フォームで、次の操作を行います。
[新しい値] フィールドに、引き上げ後の割り当てを入力します。
この割り当てはプロジェクト レベルで適用され、その Firebase プロジェクトを使用するすべてのアプリケーションと IP アドレスで共有されます。
フォームのその他のフィールドに入力して、[完了] をクリックします。
[リクエストを送信] をクリックします。