👀 概要
パーソルホールディングス エンジニアリング部 Technical Alliance 室の武田です。
音声対話 AI プロダクトの月額コスト試算について、全 3 回に分けてご紹介します。
今回は、シリーズの第 2 回として、LLM のトークン積み上げとモデル分担による月額の求め方について記載します。
👨👩👧👦 対象者(Who)
- 音声対話 AI を構成する各サービスのコスト体系について理解したい方
📌 関連リンク
🗒️ 目次
- 本シリーズについて
- はじめに
- 本記事の前提
- 利用条件
- LLM コスト試算
- 処理に応じた LLM モデルを決める
- 会話履歴平均トークン数試算
- 平均 RAG 取得結果トークン数試算
- 入力検証トークン数試算
- 回答生成トークン数試算
- 出力検証トークン数試算
- LLM コスト合計
- 考察
- まとめ
📝 内容
本シリーズについて
本記事は、音声対話 AI の月額コストを STT、TTS、LLM、RAG に分解して試算する全 3 回シリーズの第 2 回です。
- (1)共通の利用条件と STT・TTS … (第 1 回)
- (2)LLM … 本記事
- (3)RAG と合計 … (公開後に追記)
利用条件の定義は 第 1 回 にあります。
本記事では、LLM の計算に必要な条件のみを再掲します。
また、コスト合計については、第 3 回で記載します。
はじめに
第 1 回 では、共通の利用条件を定義し、STT・TTS のコストまでを求めました。
第 2 回では、同じ利用条件を引き継ぎ、LLM のコストを求めます。
LLM は 1 ターンにつき 1 回だけ呼ばれるとは限りません。
入力検証、回答生成、出力検証のように処理が分かれる場合、処理ごとの呼び出し回数や入出力トークン、モデル単価を積み上げる必要があります。
本記事では、その手順を具体的な数値で示します。
本記事の前提
本シリーズの前提サービスは 第 1 回 と同じです。
本記事(第 2 回)の試算対象は LLM のみとします。
| 項目 | 値 |
|---|---|
| LLM | Azure OpenAI Service(GPT-5.4 mini Global、GPT-5.4 nano Global) |
| 通貨 | 米ドル |
| 料金調査日 | 2026年9月2日 |
| 本記事の試算対象 | LLM |
本記事(第 2 回)で記載しない範囲は、以下です。
- STT・TTS のコスト試算詳細(第 1 回)
- RAG の Search Unit コスト試算、Embedding コスト試算(第 3 回)
- 各サービスのコスト合計(第 3 回)
利用条件
利用条件の定義は 第 1 回 にあります。
以下は、本記事の計算で直接使う条件の再掲です。
| 項目 | 値 |
|---|---|
| 月間利用(会話)数 | 2,000 回 |
| 会話ターン数 | 16 ターン |
| ユーザー平均発話トークン数 | 60 トークン |
| AI 平均発話トークン数 | 240 トークン |
| 入力検証システムプロンプトトークン数 | 400 トークン |
| 回答生成システムプロンプトトークン数 | 800 トークン |
| 出力検証システムプロンプトトークン数 | 400 トークン |
| 入力検証出力トークン数 | 20 トークン |
| 出力検証出力トークン数 | 20 トークン |
| RAG 発動率 | 30 % |
| RAG 取得件数 | 上位 5 件 |
| チャンクサイズ | 500 トークン |
LLM コスト試算
LLM については、入力トークン数、および、出力トークン数 よりコストを試算します。
入出力トークン数を求めるためには、LLM でどのような処理がどれだけの回数実行されるのかを確認します。
処理に応じた LLM モデルを決める
今回は、LLM で以下の処理が実行されるとします。
- 入力検証
- 回答生成
- 出力検証
すべての処理で同じモデルを利用するのではなく、検証には小さなモデル、回答生成には必要な品質を満たすモデルを割り当てます。
今回は処理ごとにモデルを以下としましたが、処理の難易度、出力の精度に応じて適宜モデルを決定すると、より精度の高い試算ができます。
| 処理 | モデル | 入力単価/100万トークン | 出力単価/100万トークン |
|---|---|---|---|
| 入力検証 | GPT-5.4 nano Global | $0.20 | $1.25 |
| 回答生成 | GPT-5.4 mini Global | $0.75 | $4.50 |
| 出力検証 | GPT-5.4 nano Global | $0.20 | $1.25 |
GPT 5.4 Series
Model Pricing (1M Tokens)
GPT-5.4 mini Global Input: $0.75, Output: $4.50
GPT-5.4 nano Global Input: $0.20, Output: $1.25
https://azure.microsoft.com/ja-jp/pricing/details/azure-openai/
会話履歴平均トークン数試算
1 ターン分の履歴は、ユーザー発話 60 トークン、AI 発話 240 トークンを合わせて、300 トークンになります。
ユーザー発話 + AI 発話
= 60 + 240
= 300 トークン
会話の各ターンで全履歴を毎回渡す場合、回答生成時の過去履歴は 0 ターンから 15 ターンまで増えます。
平均は 7.5 ターンとなり、1 回の回答生成に渡る会話履歴の平均は 2,250 トークンとなります。
(0 + 15) ÷ 2 = 7.5 ターン
7.5 ターン × 300 トークン = 2,250 トークン
平均 RAG 取得結果トークン数試算
RAG は 30 % のターンで発動し、1 回に 500 トークンのチャンクを 5 件取得するとします。
1 回の回答生成に含まれる検索結果は平均すると 750 トークンとなります。
500 トークン × 5 件 × 30 % = 750 トークン
入力検証トークン数試算
入力検証には会話履歴を渡さず、判定に必要なユーザー発話のみを渡します。
入力検証の入力トークン数は、入力検証のシステムプロンプトとユーザー発話のトークン数の合計となります。
入力検証システムプロンプト + ユーザー発話
= 400 + 60
= 460 トークン
入力検証の出力トークン数は、検証結果のみを含むとし、20 トークンとします。
回答生成トークン数試算
回答生成の入力トークン数は、回答生成のシステムプロンプトと平均会話履歴、ユーザー発話、そして平均 RAG 取得結果トークン数の合計となります。
システムプロンプト + 平均会話履歴 + ユーザー発話 + 平均 RAG 取得結果
= 800 + 2,250 + 60 + 750
= 3,860 トークン
回答生成の出力トークン数は AI 発話トークン数、すなわち 240 トークンとなります。
出力検証トークン数試算
出力検証には会話履歴を渡さず、判定に必要な LLM 生成回答のみを渡します。
出力検証の入力トークン数は、出力検証のシステムプロンプトと AI 生成回答のトークン数の合計となります。
出力検証システムプロンプト + AI 生成回答
= 400 + 240
= 640 トークン
出力検証の出力トークン数は、検証結果のみを含むとし、20 トークンとします。
LLM コスト合計
ここまでの情報で、各処理の入出力トークン数を試算できたので、使用するモデルの単価から、1 会話ごとの料金を試算することができます。
| 処理 | 入力トークン/ターン | 出力トークン/ターン | 入力トークン/会話 | 出力トークン/会話 | 入力料金/会話 | 出力料金/会話 | 入出力料金合計/会話 |
|---|---|---|---|---|---|---|---|
| 入力検証 | 460 | 20 | 7,360 | 320 | $0.001472 | $0.000400 | $0.001872 |
| 回答生成 | 3,860 | 240 | 61,760 | 3,840 | $0.046320 | $0.017280 | $0.063600 |
| 出力検証 | 640 | 20 | 10,240 | 320 | $0.002048 | $0.000400 | $0.002448 |
| 合計 | $0.067920 |
月間利用(会話)数を 2,000 回としているため、LLM コストは約 $135/月 となりました。
| 処理 | 月間利用(会話)数 | 料金 |
|---|---|---|
| 入力検証 | 2,000 | $3.74/月 |
| 回答生成 | 2,000 | $127.20/月 |
| 出力検証 | 2,000 | $4.90/月 |
| 合計 | $135.84/月 |
考察
回答生成に最もコストがかかっていることが数値から見えました。
これは、モデルの単価が高いだけでなく、ターンごとに渡している会話履歴と RAG の取得結果が回答生成の入力を増やしているためです。
履歴を全件保持する設計では、ターン数が増えるほど入力トークンが増加します。
コストを抑えたい場合は、履歴を全件渡すのではなく、直近 n 件に絞る、履歴を要約して圧縮するなどの工夫が必要になります。
また、今回はプロンプトキャッシュが効かない前提で試算しましたが、もしプロンプトキャッシュが効く場合は、入力トークンを減らすことができます。
プロンプト キャッシュを利用するには、要求が次の両方の要件を満たしている必要があります。
- 最小限の長さは1,024トークンです。
- プロンプトの最初の 1,024 個のトークンは同一である必要があります。
https://learn.microsoft.com/ja-jp/azure/foundry/openai/how-to/prompt-caching
なお、今回の試算では、出力検証で拒否された後の再生成や、障害時のリトライ処理を考慮していません。
再生成やリトライの発生率と、それに伴う追加の LLM 処理を考慮するとさらに詳細な試算を行うことができます。
まとめ
第 2 回では、第 1 回 で定義した利用条件を踏まえ、LLM のコストを次の考え方で積み上げました。
- 1 ターンでどの処理を、何回実行するのかを整理する
- 各処理にどのモデルを割り当てるのかを整理する
- 各処理でどのような情報を入力し、どのような出力が得られるのかを整理する
今回のケースでは、LLM の小計は約 $135/月 でした。
内訳では回答生成が大半を占めました。
次回(第 3 回)では、本シリーズの利用条件を踏まえ、RAG(Search Unit と Embedding)のコストを求めたうえで、STT・TTS・LLM・RAG のコストを合算します。