G-genの杉村です。Vertex API 経由での Gemini API を定額で利用できる Provisioned Throughput を解説します。
概要
Provisioned Throughput とは
Provisioned Throughput(プロビジョニングされたスループット)とは、Vertex AI 経由の Gemini や Claude などの生成 AI モデルの API 利用について、固定金額で利用できる月額サブスクリプションサービスです。
これらの生成 AI モデルは本来、インプットとアウトプットのボリュームに応じた従量課金(オンデマンド)です。事前にモデルとロケーション(リージョン)を指定して Provisioned Throughput を購入すると、月額利用料金で API を利用できるほか、優先的にリソースが割り当てられるため、多くのユーザーが API を利用しているときでもリソース枯渇による RESOURCE_EXHAUSTED
(ステータスコード 429)エラーを回避することができます。
サポートされるモデル
Provisioned Throughput が利用できるモデルは、Gemini 2.0 Flash、Gemini 1.5 Flash/Pro、Imagen 3、Anthropic's Claude 3.5 Sonnet v2/Haiku などです。
対象モデルの一覧は以下の公式ドキュメントを参照してください。
- 参考 : Supported models
購入すべきユースケース
Provisioned Throughput を購入すべきユースケースは、以下のとおりです。
- 重要なワークロードであり、高いスループットが継続的に求められる
- 生成 AI 本番環境アプリケーションのため一貫性のあるパフォーマンスが必要
- スループットが 20,000 文字/秒を超えることがある
- 月額固定料金で API 利用料金を支払いたい
従量課金モードで Gemini API 等を利用していると、しばしばエラーコード429 Resource exhausted, please try again later.
(status : RESOURCE_EXHAUSTED
)が返却され、リクエストが失敗することがあります。これは Google 側でリソースが枯渇かけており、利用制限がかけられたことを意味しています。
- 参考 : エラーコード 429
エラーコード429 (RESOURCE_EXHAUSTED
)についての詳細は、以下の記事も参照してください。
エクスポネンシャルバックオフ(指数バックオフ)を実装してリクエストをリトライする方法もありますが、Provisioned Throughput を購入することによって優先的にリソースが割り当てられ、このようなエラーを回避することができます。
購入方法と料金
GSU(Generative AI Scale Unit)
Provisioned Throughput は、GSU(Generative AI Scale Unit)という単位で購入します。1 GSU は、例えば Gemini 1.5 Pro の場合、800文字/秒です。
GSU が持つ秒あたりの文字数について、1文字のインプットは1文字としてカウントされますが、例えば Gemini 1.5 Pro の場合、1文字のアウトプットは3文字としてカウントされます。また1枚の画像は1,052文字としてカウントされます。この消費文字数をバーンダウン率といいます。
1 GSU あたりのスループット(文字/秒)やバーンダウン率はモデルによって異なるので、以下のドキュメントを参照してください。
また、必要なスループットの計算例が以下のドキュメントに示されています。
購入期間
Provisioned Throughput は1ヶ月、3ヶ月、1年の期間で購入できます。自動更新を有効にすることで、更新作業を省略することができます。一度購入すると、コミットした期間は注文をキャンセルすることはできません。
購入時にはモデルを指定する必要があり、生成 AI では頻繁に新しいモデルが登場することを考慮すると、1年単位の購入には慎重になるべきと考えられます。ただし公式ドキュメントでは、同じリージョン内でかつ同じ事業者から提供されているモデルであれば、バージョンの切り替えができることも示されています。
なお、2025年1月現在は Preview 中ですが、1週間の単位での購入も可能です。Provisioned Throughput の Preview 機能を利用するには、応募フォームから応募し、Google から承認される必要があります。
- 参考 : Preview features
購入方法と料金
購入は Google Cloud コンソールの「プロビジョニングされたスループット」画面(https://console.cloud.google.com/vertex-ai/provisioned-throughput)から購入することができます。
同画面でモデル、リージョン、GSU 数、期間を入力すると、料金見積もりが表示されます。
購入に必要な権限などの詳細は、公式ドキュメントをご参照ください。
使用方法
自動適用
Provisioned Throughput を購入すると、自動的に利用が開始されます。プログラムのソースコードを変更する必要はありません。
超過したスループットの扱い
Provisioned Throughput で購入したスループットを超過して API を利用すると、デフォルトでは従量課金が適用されます。
しかし、超過した場合に従量課金を利用せずエラーコード429を返却するようにすることもできます。REST API へのリクエスト時に、HTTP ヘッダーに X-Vertex-AI-LLM-Request-Type: dedicated
を付与します。
この場合、購入した Provisioned Throughput を超過した場合に、エラーコード429レスポンスが返ります。メッセージは Too many requests. Exceeded the Provisioned Throughput.
になります。
明示的に従量課金を指定
上記とは逆に、開発環境アプリケーションからの利用であることなどを理由に、Provisioned Throughput をバイパスして従量課金モードでのみを使用するように明示的にリクエストすることもできます。REST API へのリクエスト時に、HTTP ヘッダーに X-Vertex-AI-LLM-Request-Type: shared
を付与します。
スループットのモニタリング
Provisioned Throughput の使用状況をモニタリングするには、Cloud Monitoring が利用できます。aiplatform.googleapis.com/PublisherModel
というリソースタイプで、指標が記録されます。
インプット、アウトプットの文字数や消費されたスループット量などが記録されるため、Provisioned Throughput が過不足なく利用されているかが確認できます、。
- 参考 : Metrics
考慮事項
ファインチューンされたモデル
ファインチューニングされたモデルにも、Provisioned Throughput が適用されます。ただし2025年1月現在は Preview 中であり、利用するには応募フォームから応募して、Google から承認される必要があります。
- 参考 : Preview features
その他の考慮事項
その他の考慮事項としては、以下が挙げられます。
- 未使用のスループットは翌月に繰り越せない
- Provisioned Throughput を使用しても通常のクォータ(割り当て)は適用される
その他の考慮事項については以下の公式ドキュメントを注意深くご参照ください。
杉村 勇馬 (記事一覧)
執行役員 CTO / クラウドソリューション部 部長
元警察官という経歴を持つ現 IT エンジニア。クラウド管理・運用やネットワークに知見。AWS 12資格、Google Cloud認定資格11資格。X (旧 Twitter) では Google Cloud や AWS のアップデート情報をつぶやいています。
Follow @y_sugi_it