Grok API は xAI が提供しており、トークン単位で課金され、入力と出力は別々に計算されます。多くのチームが予算を立てるとき、モデルの単価だけを見ていますが、稼働後に請求と見積もりが大きく乖離します。履歴メッセージの毎ターン再送、長すぎる出力、バックオフのない再試行、長い文書の繰り返し読み込みが、いずれもコストを増幅します。
本記事では単価を固定値として書かず、Grok API の課金構造を分解し、再現可能な試算方法とコスト管理の順序を示します。具体的な単価、利用可能なモデル、コンテキスト長は xAI の公式ドキュメントとモデル価格を基準とします。
注記:xAI、Grok はそれぞれの権利者の商標です。本記事は技術的な紹介のみを目的としています。モデル名、インターフェース、価格は変更される場合があるため、調達前に公式ページとモデル価格をご確認ください。
一、Grok API の請求は何で構成されるか
Grok API は OpenAI 互換の Chat Completions 形式を採用しており、請求は通常、入力トークンと出力トークンが中心です。実際のプロジェクトでは、キャッシュ、ツール呼び出し、長コンテキスト、失敗した再試行も合わせて考える必要があります。
| 課金項目 | 発生する場面 | よくある増幅要因 | 制御方法 |
|---|---|---|---|
| 入力トークン | システムプロンプト、履歴、ツール定義、文書 | 毎ターン完全な履歴を再送 | 要約、切り詰め、検索による取得 |
| キャッシュ入力 | 同じプレフィックスを繰り返し使用 | プレフィックスが不安定でミス | system とツール順序を固定 |
| 出力トークン | モデルが生成した内容 | 回答が冗長、形式が制御されない | max_tokens の設定、構造化出力 |
| ツール呼び出し | 関数呼び出し、検索などの付加機能 | 多ターンのループ、重複クエリ | ターン数の制限、結果のキャッシュ |
| 長コンテキスト | 長い文書、長い会話 | 全文を詰め込む、繰り返し読む | 分割処理、関連断片のみ取得 |
| 再試行 | 429、タイムアウト後の再送 | バックオフなし、同時実行過多 | 指数バックオフ、冪等性の確認 |
モデルや機能ごとに個別の課金基準がある場合があります。たとえばキャッシュ入力が課金対象か、ツール呼び出しが別計算かは、xAI の公式課金説明に従ってください。予算を立てるときは、まず自分が使う課金項目を確認し、それから単価の話をしてください。
二、同じ呼び出しなのに請求が数倍違う理由
呼び出し回数が同じでも、請求はまったく異なることがあります。差異は通常、次の六点から生じます。
- 入出力の比率:カスタマーサポート bot は入力が多く出力が中程度、コンテンツ生成は入力が短く出力が長い。両者のコスト構造を同じ平均値で見積もることはできません。
- コンテキストの累積:複数ターンの会話で毎回すべての履歴を付けると、入力トークンはターン数とともに急速に増えます。
- キャッシュヒット率:固定プレフィックスは再利用できますが、タイムスタンプ、ランダム ID、動的なツール一覧はキャッシュを無効にします。
- モデルの階層:Grok のモデルごとに能力と単価が異なり、簡単なタスクに上位モデルを使うと予算が膨らみます。
- 再試行回数:再試行は毎回新しいリクエストです。429 の直後に再送すると、再試行の嵐になりやすいです。
- 出力長:出力単価は通常入力より高く、長い回答、繰り返しの説明、制御されない形式はコストを増やします。
| 場面 | トークン構造 | 主なコスト | 最適化の方向 |
|---|---|---|---|
| カスタマーサポート bot | 入力多、出力中 | 履歴メッセージの繰り返し転送 | 要約とキャッシュ |
| 文書抽出 | 入力長、出力短 | 文書の繰り返し読み込み | 検索と小型モデル |
| コードアシスタント | 入出力とも大 | ツール結果と思考過程 | ツール出力の切り詰め、モデルルーティング |
| コンテンツ生成 | 入力短、出力長 | 出力トークン | 分割生成、長さ制限 |
三、一回のリクエストのコストを計算する
一回のリクエストを分解すると、コストは次の式で表せます。
1回のリクエストコスト =
非キャッシュ入力トークン × 入力単価
+ キャッシュ入力トークン × キャッシュ単価
+ 出力トークン × 出力単価
+ ツールや検索などの付加費用
式自体は難しくありません。難しいのは実際のトークン数を取得することです。文字数から推測せず、レスポンスの usage フィールドを直接読んでください。
import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ["GROK_API_KEY"],
base_url=os.environ.get("GROK_BASE_URL", "https://ai.zhongshangqihang.com/v1"),
)
resp = client.chat.completions.create(
model="grok-4",
messages=[{"role": "user", "content": "この要件を五つの開発タスクに分解してください。"}],
max_tokens=512,
)
usage = resp.usage
print("入力トークン:", usage.prompt_tokens)
print("出力トークン:", usage.completion_tokens)
print("合計トークン:", usage.total_tokens)
金額は自分のアカウントの実際の単価を掛けて計算します。単価はモデル価格から読み取り、数か月前のスクリーンショットを流用しないでください。キャッシュヒットの統計フィールドは互換実装によって名称が異なる場合があるため、実際のレスポンスに従ってください。
四、コストを下げる順序
コスト削減には順序があり、逆にすると無駄に終わりやすいです。次の七ステップをおすすめします。
- まず基準を定量化する:直近一週間の実際のリクエストログをエクスポートし、プロジェクト、モデル、場面ごとに入出力トークンを集計し、どこにお金が使われているかを把握する。
- 次にモデルをルーティングする:分類、抽出、書き換えは小型モデル、複雑な推論は上位モデルに回す。チームの習慣ではなくタスクの難易度で配分する。
- 入力を減らす:RAG では関連する断片だけを取得し、履歴は要約し、ツールの戻り値は必要なフィールドだけ残す。
- 出力を制限する:適切な
max_tokensを設定し、JSON または固定フィールドを求め、挨拶や繰り返しの説明を減らす。 - キャッシュを活用する:system prompt、ツール定義、ナレッジベースのプレフィックスを固定し、キャッシュが実際にヒットしているか検証する。
- 再試行を統制する:429 とタイムアウトには指数バックオフとランダムジッターを使い、最大再試行回数を設定する。固定間隔での連続再試行を避ける。
- 予算とアラート:プロジェクトごとに枠の上限を設定し、毎週消費ランキングを見直し、異常な増加を早めに特定する。
まず入力のガバナンスとキャッシュを行い、それから安いモデルへの変更を検討してください。そうしないと、不安定な出力を安く作るだけで、やり直しコストが戻ってきます。
五、予算と請求をどう管理するか
- 一プロジェクト一 Key とし、プロジェクトごとに予算上限を設定し、複数サービスが枠を奪い合わないようにする。
- ログには少なくとも時刻、モデル、入出力トークン、ステータスコード、リクエスト ID を記録し、完全な Key と機密内容は記録しない。
- 毎月「プロジェクト、モデル、場面」の三次元で照合し、最も速く伸びている呼び出しを見つける。
- キャッシュ、モデルルーティング、出力制限による節約は別に記録する。そうしないと最適化の効果を証明できない。
- 人民元での支払いと請求書が必要なチームは、国内 AI ゲートウェイで請求を統一できる。具体的な価格、為替、請求書規則はモデル価格を基準とする。
よくある質問
Grok API の費用は入力と出力の二項目だけですか?
一般的な請求は入力と出力トークンが中心ですが、キャッシュ入力、ツール呼び出し、検索などの機能には個別の課金基準がある場合があります。具体的な項目は公式の課金説明と請求明細に従ってください。
平均トークンで見積もると正確でないのはなぜですか?
平均値はロングテールのリクエストを覆い隠します。少数の超長コンテキスト、長出力、再試行リクエストがコストの大部分を占めることがあります。実際のログで分布を見るほうが、平均値に呼び出し回数を掛けるより信頼できます。
キャッシュでどのくらい節約できますか?
プレフィックスの再利用率とヒット率によります。キャッシュ読み取りは通常の入力単価より安いことが多いですが、キャッシュ書き込みには割増がある場合があり、プレフィックスが短すぎたり毎回変わったりするとヒットしません。まずログでヒットを確認し、それから節約額を評価してください。
出力が長いほど高くつきますか?
通常はそうです。出力トークンは別計算で、単価は入力より高いことが多いためです。回答を業務に必要な長さに制限し、構造化出力を採用するほうが、モデルを変えるより早く効果が出ます。
国内チームは人民元で決済できますか?
人民元のチャージと請求書を提供する AI ゲートウェイ経由で Grok を呼び出し、複数モデルの請求を統一できます。具体的な利用可能モデル、価格、請求書規則はモデル価格を基準とします。
次のステップ
まずZSQH AI Gatewayでテスト用 Key を作成し、実際のタスク群で入出力トークンを記録してから、上記の式で予算を立ててください。モデルの可用性と価格はモデル価格を基準とします。
関連記事:
