Azure OpenAI のデプロイ選択(GlobalStandard/Standard/PTU)について考える
やりたいこと
Azure OpenAIを使うにあたり、モデル選択、レート制限、リージョンなどを決める必要があり、
それらは、コスト、性能要件、セキュリティ(データ的にリージョンの制約があったり)などで決まるかなと。
現在、AOAIのデプロイ選択には下記の4つの選択があります。
Global-Batch / グローバル標準 / Standard / プロビジョニング済み
そこで、GlobalStandardとStandardの違いと、PTUを選択する必要がある場合について簡単にメモします。
GlobalStandardとStandardの違い
まず、公式ページを見ると下記の記載があります。
Global-Standard では、Standard よりも高い既定クォータとより多くのモデルを利用できます。
データ処理の場所に関する要件がない運用アプリケーション向け。
つまり、セキュリティ的にデータ処理が許可されるリージョンが決まっているわけでない場合は、
レート制限の上限が高いGlobal-Standardを選択したら良いかと。
どのくらいレート制限が違うのか見てみると、リージョンでも少し違いがあるみたいですが、
Global-Standardのeastusだと440K、japaneastだと450Kがレート制限の上限でした。
Standardのレート制限は100Kのようです。
約4倍くらいGlobal-Standardはレート制限の上限が引き上げられるみたいです。
ちなみに、コスト的な違いはGPT-4oに関してはStandardとGlobal-Standardで違いはないのかなと。
4o-miniでは若干Global-Standardがトークンあたりのコストは安そうです。
PTUを選択する場合
PTUの説明には下記があります。
非常に高く予測可能なスループットでのリージョン アクセス。 提供されている容量計算ツールを使用して PTU あたりのスループットを決定します
つまり、性能要件でどのくらいのスループットを捌く必要があるかが定められた場合、ピーク時のリクエスト数、入力や出力(max_tokens)などのトークン消費の見積もりから、PTUを利用することで、AOAIでのスループットを確保します。
PTUのコスト見積もりはAOAI Studioでできます。
仮に、インプットのトークン数がある程度決まっていて、1分あたりのピーク時の呼び出し数を100にすると最低限のPTU:50(32)で良いとか、呼び出し数が1000だとPTU:350(320)が必要だとか計算してくれます。
※()内の数字は実際に必要なPTUだと思われます。
ちなみに、PTUのコストは以前は問い合わせでしたが、今は料金ツールに表示されてるんですね。
ただ、ボリュームディスカウントとかある気がするんだけど、その辺は不明です。
あと、PTUはリージョンに紐づくみたいなので、Global-StandardでPTUの利用はできなさそうです。
まとめ
Global-StandardとStandardの違いは明確で、PTUの計算もツールを使えば簡単でした。
ただ実際は、AOAIのスループットだけでなく色々なところがボトルネックになると思うので、負荷テストはやった方が良いのかなと。
Discussion