🦐

【Azure】AOAIモデル コスト算出の考え方

に公開

記事の内容

AzureOpenAIでデプロイしたモデルの月にかかるコストの考え方についてまとめる。

使用するサイト

料金計算ツール
https://azure.microsoft.com/ja-jp/pricing/calculator/
トークン数の計算(より緻密にやりたい方向け)
https://platform.openai.com/tokenizer

コスト算出の流れ

以下はAzure料金計算ツールでAzureOpenAIを選択した際に出る画面です。
この画面から察するに、AzureOpenAIで作成したモデルの月コストを算出するには、
入力(Input)と出力(Output)で使用されるトークン数を求めればよいということです。

従って、以下の流れでコストを算出します。

  1. AOAIの使用用途、月の使用人数を把握、入力言語の確認
  2. Input, Outputで使用するトークン数の計算式を作成
  3. 開発環境、リグレ環境、本番環境でそれぞれ使用するトークン数を定める
  4. トークン数を料金計算ツールに代入してコストを算出

1. AOAIの使用用途、月の使用人数を把握

AOAIの使用料金の計算をする前に、今回使用するケースを定めます。

使用用途:社内や一般知識に対応した社内用ChatGPT
月の使用人数:1000人(本番)
入力言語:日本語

2. Input, Outputで使用するトークン数の計算式を作成

2-1. Input

Inputは1回当たりの入力文字数である。
日本語の場合、日本語1文字×2.5くらいをトークン数とする(バッファ込み)。
計算式は以下になる。

1回当たりの平均入力文字数×2.5×1人当たりの平均使用回数×毎日の平均使用人数×月営業日

例)
入力文字数:150文字
トークン倍率:文字数×2.5
使用回数:5回
使用人数:700人
月営業日:21
150×2.5×5×700×21=27,562,500トークン

2-2. Output

Outputは1回当たりの出力文字数である。社内ChatGPTとして使用する場合は質問と応答になっているので、計算式は以下になる。

1回当たりの平均出力文字数×2.5×1人当たりの平均使用回数×毎日の平均使用人数×月営業日

例)
出力文字数:500文字
トークン倍率:文字数×2.5
使用回数:5回
使用人数:700人
月営業日:21
500×2.5×5×700×21=91,875,000トークン

3. 開発環境、リグレ環境、本番環境でそれぞれ使用するトークン数を定める

3-1. 開発環境、リグレ環境で使用するトークン数

先ほど作成した式に、テストで使用する各回数を代入すればOKです。

1回当たりの平均入力文字数×2.5×1人当たりの平均使用回数×毎日の平均使用人数×月営業日
1回当たりの平均出力文字数×2.5×1人当たりの平均使用回数×毎日の平均使用人数×月営業日

下記で仮定して進めます。

開発環境

入力文字数:150文字
トークン倍率:文字数×2.5
使用回数:10回
使用人数:3人
月営業日:21
150×2.5×10×3×21=236,250トークン

出力文字数:500文字
トークン倍率:文字数×2.5
使用回数:10回
使用人数:3人
月営業日:21
500×2.5×10×3×21=787,500トークン

リグレ環境

入力文字数:150文字
トークン倍率:文字数×2.5
使用回数:10回
使用人数:10人
月営業日:21
150 × 2.5 × 10 × 10 × 21 = 787,500トークン

出力文字数:500文字
トークン倍率:文字数×2.5
使用回数:5回
使用人数:10人
月営業日:21
500 × 2.5 × 10 ×10 × 21 = 2,625,000トークン

開発環境

  • Input
    236,250 トークン
  • Output
    787,500 トークン

合計
1,023,750 トークン / 月

リグレ環境

  • Input
    787,500 トークン
  • Output
    2,625,000 トークン

合計
3,412,500 トークン / 月


3-2. 本番環境で使用するトークン数

次に、本番環境のトークン数を算出します。
本番環境は「月の使用人数 1000 人」を想定していますが、
毎日必ず全員が使うとは限らないため、以下の前提で計算します。

本番環境の前提

  • 入力文字数:150文字
  • 出力文字数:500文字
  • トークン倍率:文字数 × 2.5
  • 1人当たりの平均使用回数:5回 / 日
  • 毎日の平均使用人数:700人
  • 月営業日:21日
本番環境

Input
150 × 2.5 × 5 × 700 × 21
= 27,562,500 トークン

Output
500 × 2.5 × 5 × 700 × 21
= 91,875,000 トークン

本番環境 合計

  • Input:27,562,500 トークン
  • Output:91,875,000 トークン

合計
119,437,500 トークン / 月

3-3. 全環境の月間トークン数まとめ

ここまでで算出した、全環境のトークン数をまとめます。

環境 Input Output 合計
開発 236,250 787,500 1,023,750
リグレ 787,500 2,625,000 3,412,500
本番 27,562,500 91,875,000 119,437,500

4. トークン数を料金計算ツールに代入してコストを算出

最後に、算出したトークン数を Azure料金計算ツール に入力してコストを確認します。
https://azure.microsoft.com/ja-jp/pricing/calculator/
AzureOpenAI を選択すると、以下の項目を入力できます。

  • モデル(例:GPT-4o,GPT-4o-miniなど)
  • Input トークン数
  • Output トークン数

本記事では例として、GPT-4o-128k を使用した場合を想定します。
(実際には用途やレスポンス品質に応じてモデルを選択してください)

開発環境AOAIコスト

リグレ環境AOAIコスト

本番環境AOAIコスト

まとめ

今回はAzureOpenAIで作成したモデルのコスト算出の考え方についてまとめました。
今回の例では社内ChatGPTの活用であったので、InputとOutputでそこまでの差異がありませんでしたが、音声や別言語、画像データなどが含まれるとまた違った考え方になります。
状況に合わせてコスト算出ができるようにしていきます。
※計算ミスをしていたらすみません。

ヘッドウォータース

Discussion