OverpayingForAI料金デスク
8 min read·正確性について最終確認済み · 2026-10-27·価格確認済み · 2026-11-05

AIエージェントのプロンプトキャッシングコスト:Anthropic、OpenAI、Gemini

Claude、OpenAI、GeminiのAPIでのプロンプトキャッシングの価格設定方法、キャッシュされたプレフィックスに何を入れるか、そして計算を示した12ステップのエージェント実行の実例。

記事本文には確認日が記載されています。下の料金表はデプロイのたびにライブカタログから再構築されます。

最速の勝ち方

キャッシュされた入力の読み取りは、AnthropicとOpenAIではリスト入力レートの約10%(Geminiでは約25%)のコストがかかります。エージェントは毎ステップで全コンテキストを再送信するため、この割引により12ステップのClaude Sonnet 5実行の入力コストが$0.35から約$0.09に削減されます。システムプロンプトとツール定義を最初に配置し、それらをバイト安定に保ち、`cache_read_input_tokens`がゼロでないことを確認してから他の最適化を行ってください。

プロンプトキャッシングがエージェントループで節約するもの

Claude Sonnet 5での12ステップのエージェント実行は、キャッシュなしで約$0.39、キャッシュありで約$0.14かかります。GPT-5.4では、同じ実行がキャッシュなしで約$0.50、キャッシュありで約$0.17です。理由は簡単です:エージェントは毎ステップで全コンテキストを再送信し、キャッシュされた入力の読み取りはAnthropicとOpenAIではリスト入力レートの約10%、Geminiでは約25%で課金されます。キャッシングは出力トークンには効果がありません。

これらの数値は現実的なトレースを使用しています:4,000トークンのプレフィックス(システムプロンプトとツール定義)、500トークンのタスク、および各ステップが300トークンのツール呼び出しを返し、1,500トークンのツール結果を受け取る12ステップ。完全な計算は以下にあります。

エージェントが完璧なキャッシングワークロードである理由

ツール呼び出しループの各ステップは、これまでの会話全体(システムプロンプト、すべてのツールスキーマ、タスク、以前のすべてのツール呼び出しと結果)を送信します。ステップ1は4,500トークンを送信します。ステップ12は4,500 + 11 × 1,800 = 24,300トークンを送信します。12ステップを合計すると、モデルは172,800入力トークンを読み取り、わずか4,800出力トークンを生成します。

その172,800のほぼすべてが繰り返しテキストです。プレフィックスは毎回の呼び出しで同一であり、会話は最後にだけ成長します。これはまさにプレフィックスキャッシュが構築された形状であり、エージェントを高価にするステップごとの再送信がキャッシュを非常に効果的にする理由でもあります。エージェントの請求の一般的な形状は[how much an AI agent costs to run](/guides/how-much-does-an-ai-agent-cost-to-run)でカバーされています。この記事はキャッシュについてのみです。

各ベンダーのキャッシュの仕組み

ベンダー有効化方法読み取り価格(概算)書き込み価格有効期間
Anthropic (Claude)システム、ツール、メッセージブロックに明示的な cache_control: {"type": "ephemeral"} ブレークポイントを設定。リクエストあたり最大4つリスト入力価格の約10%初回書き込み時はリスト入力価格の約125%デフォルト5分、ヒットごとにリフレッシュ。より高い書き込みプレミアムで1時間オプションあり
OpenAI最小サイズ以上のプロンプトで自動プレフィックス一致。オプションで prompt_cache_key によりルーティングを誘導リスト入力価格の約10%プレミアムなし数分の非アクティブ、オフピーク時はより長い(ベンダーは数値を保証せず)
Google Geminiclient.caches.create とTTLで明示的なキャッシュオブジェクトを作成。一部のモデルは暗黙的にもキャッシュリスト入力価格の約25%書き込みプレミアムなしだが、キャッシュされたトークンは保存時間に応じて課金設定したTTLまで。保存は有効期限まで継続課金

Anthropicはリクエストをツール、システム、メッセージの順に処理し、キャッシュは厳密なプレフィックス一致です。ブレークポイントはその前のすべてをキャッシュするため、最後のツール定義に1つ、システムプロンプトに1つブレークポイントを置くことで安定部分をカバーします。最新のユーザーメッセージに3つ目を追加すると、各ステップで以前の会話もキャッシュから読み取られます。Anthropicのキャッシュ可能な最小プレフィックスはモデル依存(約1,000トークン以上)で、短いプロンプトは静かにキャッシュされません。ベンダー別の詳細は[Claude agent API cost](/guides/claude-agent-api-cost)、[OpenAI Agents API cost](/guides/openai-agents-api-cost)、[Gemini agent API cost](/guides/gemini-agent-api-cost)をご覧ください。

キャッシュされるプレフィックスに含めるもの

実行中に変わらないものを固定順で先頭に配置します:

  • システムプロンプト(日付、ユーザー名、実行IDを含まない)
  • ツール定義(決定論的にソートし、実行中に追加しない)
  • エージェントが毎ステップ参照する取得済みドキュメント、スタイルガイド、スキーマ
  • 少数ショットの例

最後のブレークポイント以降には、変化するもの(タスク、ユーザーの質問、リクエストごとのメタデータ)をすべて配置します。Anthropicでは、タイムスタンプや実行IDをコンテキストに入れたい場合は、システムプロンプトではなく最初のユーザーメッセージに入れることで、キャッシュされるプレフィックス内ではなく後に配置されます。

具体例:12ステップのキャッシュあり・なし比較

キャッシュなしの場合、実行は172,800入力トークンを読み取り、4,800出力トークンを書き込みます。キャッシュありの場合、入力を3つのバケットに分割します。新しいトークンはキャッシュに一度だけ書き込まれます:ステップ1で4,500、残りの11ステップで各1,800、合計24,300。それ以外の148,500トークンはキャッシュ読み取りです。

モデルキャッシュなし入力キャッシュなし出力キャッシュなし合計キャッシュあり合計節約率
Claude Sonnet 5($2 / $10)172,800 × $2 = $0.3464,800 × $10 = $0.048$0.39424,300 × $2.50 + 148,500 × $0.20 + $0.048 = $0.13865%
GPT-5.4($2.50 / $15)172,800 × $2.50 = $0.4324,800 × $15 = $0.072$0.50424,300 × $2.50 + 148,500 × $0.25 + $0.072 = $0.17066%
Gemini 3.8 Flash($0.75 / $3.75)172,800 × $0.75 = $0.1304,800 × $3.75 = $0.018$0.14824,300 × $0.75 + 148,500 × $0.19 + $0.018 = $0.064 にキャッシュ保存料金加算約57%

すべて100万トークンあたりの料金。キャッシュ料金は「約10% / 25%」ルールをリスト価格に適用したもの、Anthropicの書き込みプレミアムは約125%です。書き込みプレミアムが小さいのは、各トークンが1回書き込まれ最大11回読み取られるためです。40ステップの実行では節約率は80%を超え、繰り返される入力の割合がステップごとに増加するためです。[計算機](/calculator)で自分のトレースを試してください。

スニペット:AnthropicとOpenAI

Anthropic、最後のツールとシステムプロンプトに明示的ブレークポイント、さらに最新メッセージにもう1つ追加して会話をキャッシュから読み取る:

from anthropic import Anthropic
client = Anthropic()
tools[-1]["cache_control"] = {"type": "ephemeral"}      # その前のすべてのツールもキャッシュ
messages[-1]["content"][-1]["cache_control"] = {"type": "ephemeral"}
resp = client.messages.create(
    model="claude-sonnet-5", max_tokens=2048,
    system=[{"type": "text", "text": SYSTEM_PROMPT,
             "cache_control": {"type": "ephemeral"}}],
    tools=tools, messages=messages,
)
u = resp.usage
# Sonnet 5 100万トークンあたり:入力 $2、書き込み 約$2.50、読み取り 約$0.20、出力 $10
cost = (u.input_tokens * 2 + u.cache_creation_input_tokens * 2.5
        + u.cache_read_input_tokens * 0.2 + u.output_tokens * 10) / 1_000_000

OpenAI、キャッシュは自動で確認のみ:

from openai import OpenAI
client = OpenAI()
resp = client.responses.create(
    model="gpt-5.4", instructions=SYSTEM_PROMPT, tools=tools,
    input=conversation, prompt_cache_key="research-agent-v3",
)
u = resp.usage
cached = u.input_tokens_details.cached_tokens
# GPT-5.4 100万トークンあたり:入力 $2.50、キャッシュ読み取り 約$0.25、出力 $15
cost = ((u.input_tokens - cached) * 2.5 + cached * 0.25
        + u.output_tokens * 15) / 1_000_000

各ステップで cost をログに記録します。ステップ2でキャッシュ値がゼロの場合は、停止して無効化原因を見つけてから、それ以上実行してください。

キャッシュを静かに破壊するミス

  • システムプロンプト内のタイムスタンプ、日付、または"today is"という行。呼び出しごとに変更されるため、プレフィックスが一致しません。
  • ステップ間でのツールの順序やツールセットの変更。ツールは最初にレンダリングされるため、ツールの順序を変更するとシステムプロンプトとその背後にある会話全体が無効になります。
  • キーの順序が不安定なdictからのツールスキーマのシリアル化。送信する前にキーを並べ替えてください。
  • システムプロンプト内のリクエストIDやトレースID。メタデータまたは最初のユーザーメッセージに配置してください。
  • Anthropicでは、以前のメッセージを追加ではなく編集する(例えば、古いツール結果を切り詰める)こと。キャッシュは最初に変更されたバイトで終了します。
  • 実行中のモデルの切り替え。キャッシュはモデルごとにあります。Haiku 5.5ワーカーはSonnet 5キャッシュを読み取れません。
  • Geminiでは、明示的なキャッシュの削除を忘れること。ストレージは呼び出しの有無にかかわらず1時間ごとに課金されます。

これを実行できる最も安価なモデルと、フラッグシップに支払うタイミング

キャッシングは使用するモデルを変えるのではなく、高価なモデルのコストを変えます。適切に定義されたツールループの場合、Gemini 3.8 Flash($0.75 / $3.75)またはDeepSeek V4.1 Flash($0.30 / $1.20)は、キャッシング前にそれぞれ$0.15と約$0.06で12ステップの実行を完了します。DeepSeek V4.1 Flash(API名 deepseek-flash)は、DeepSeekが廃止したV4 Flashを置き換えました。DeepSeekの行はピークレートを使用しています。オフピーク時間帯は半額。DeepSeekの価格は2026-10-27にapi-docs.deepseek.comで確認しました。信頼性のトレードオフについては[AIエージェント向け最安LLM](/guides/cheapest-llm-for-ai-agents)を参照してください。

ループに計画、曖昧な指示、または初回コンパイルが必要なコードが含まれる場合は、Claude Opus 5($5 / $25)またはGPT-5.5($5 / $30)に支払ってください。なぜなら、安価なモデルでの再試行はコンテキスト全体を再送信し、1回正しく実行するよりもコストがかかる可能性があるからです。キャッシングを使用すると、キャッシュなしの12ステップOpus実行の$0.98が約$0.35になり、キャッシュなしのSonnet 5よりも安くなります。

キャッシュループの支出上限を設定する方法

キャッシングは上限ではなく傾きを下げる。各エージェントに4つの制御を設けよ:

  • 呼び出しごとのmax_tokensは、モデルの最大値ではなく、最も長い正当なツール呼び出しに合わせる
  • 1回の実行あたりの厳格なステップ制限。12~25ステップでほとんどのタスクをカバーする
  • モデルが到達可能な停止条件(finishツールなど)。「もう一つ確認させてください」でループしないようにする
  • 上記のスニペットの使用量フィールドから計算した、1回の実行あたりのドル予算。累計がそれを超えたら中断する

[トークンバジェットガードレール](/guides/ai-agent-token-budget-guardrails)の記事には、最後の制御を実装した30行のランナーがある。エージェントが複数のMCPサーバーに接続する場合は、次に[MCPサーバートークンコスト](/guides/mcp-server-token-cost)を読んでほしい。なぜなら、大きなツールリストはキャッシングの恩恵を最も受けるプレフィックスであり、キャッシングなしでは最も損害を受けるからだ。

重要なポイント

  • →キャッシュ読み取りは、AnthropicとOpenAIでリスト入力のおおよそ10%、Geminiでおおよそ25%です。Anthropicは書き込みにリストのおおよそ125%を請求します。
  • →12ステップのSonnet 5エージェント実行は、キャッシュなしで約$0.39、キャッシュありで約$0.14です。GPT-5.4では約$0.50と$0.17です。
  • →順序はツール、システム、メッセージの順です。ブレークポイントより前で変更されたものは、それ以降のすべてを無効にします。
  • →タイムスタンプ、リクエストID、並べ替えられたツール、ソートされていないJSONが、通常の静かなキャッシュキラーです。
  • →Anthropicのデフォルトキャッシュは5分間存続し、ヒットごとにリフレッシュされます。それよりも速く呼び出すエージェントループは無料でウォーム状態を維持します。
  • →呼び出しごとに使用量フィールドで確認する:cache_read_input_tokens (Anthropic) または input_tokens_details.cached_tokens (OpenAI)

編集コンテキスト

これは誰向けですか?

Claude、OpenAI、GeminiのAPIでツール呼び出しエージェントを実行し、毎ステップで大きなプレフィックスを再送信する開発者向け。

これを使用すべきでない場合

単発の分類や短いプロンプトでのチャットでは、プレフィックスが約1,000トークン未満の場合、どのベンダーでもキャッシュされません。

料金インサイト

キャッシュ読み取りは、AnthropicとOpenAIでリスト価格の約10%、Geminiで約25%です。12ステップの実行では、入力料金が約4分の3に減少します。

検討すべき代替案

非インタラクティブ実行向けのバッチAPI(約50%割引)、短いツール結果、接続するツールの削減により、同じ入力料金を削減できます。

最終的な結論

モデルを切り替える前にキャッシュを有効にしてください。これはエージェントループで利用できる最大の単一節約であり、プレフィックスが安定している場合はコストはかかりません。

よくある質問

プロンプトキャッシングはAIエージェントでどれだけ節約できますか?

12ステップのエージェント実行で、4,000トークンのプレフィックスと1,500トークンのツール結果がある場合、キャッシングによりClaude Sonnet 5は約$0.39から約$0.14に、GPT-5.4は約$0.50から約$0.17に削減されます。節約額は実行の約65%で、そのほとんどが入力トークンです。実行が長くなるほど、再送信されるコンテキストがステップごとに増えるため、節約率は高くなります。

Anthropicはキャッシュ書き込みにいくら請求しますか?

Anthropicはキャッシュに書き込まれたトークンを通常の入力レートの約125%で請求します。つまり、Claude Sonnet 5ではリストレート$2に対して約$2.50/百万トークンです。読み取りはリストの約10%、約$0.20/百万トークンです。書き込みプレミアムは最初のキャッシュヒットで回収されるため、プレフィックスが1回しか使用されない場合にのみコストがかかります。

OpenAIのプロンプトキャッシングにはコードの変更が必要ですか?

いいえ。OpenAI APIは、プロンプトが条件を満たすのに十分な長さになると、一致するプレフィックスを自動的にキャッシュし、割引は応答のinput_tokens_details.cached_tokensに表示されます。prompt_cache_keyを渡して、繰り返しのリクエストを同じキャッシュにルーティングすることもできますが、主な作業は呼び出し間でプレフィックスをバイト単位で同一に保つことです。

Geminiのコンテキストキャッシングはどのように課金されますか?

Geminiには、TTLを設定して作成する明示的なキャッシュがあり、キャッシュされたトークンはリスト入力レートの約25%で読み取られます。AnthropicやOpenAIとは異なり、Googleはキャッシュされたトークンの存続時間1時間あたりのストレージも請求するため、作成して忘れたキャッシュはコストがかかり続けます。それに依存する前に、ベンダーページで現在のストレージレートを確認してください。

cache_read_input_tokensが常にゼロなのはなぜですか?

プレフィックスの内容が呼び出しごとに変わっている可能性があります。よくある原因は、システムプロンプト内のタイムスタンプや日付、リクエストID、ステップ間で追加または並び替えられるツール定義、そしてキーの順序が安定しないJSONシリアライズです。2つの連続したリクエストをバイト単位で比較してください。最初の違いがある場所がキャッシュの終わりです。

Anthropicで1時間のキャッシュを使うべきですか?

呼び出しが5分以上間隔をあけている場合のみです。デフォルトの5分TTLはヒットのたびに更新されるため、ビジーなエージェントループでは追加コストなくキャッシュが温かく保たれます。1時間オプションは書き込みプレミアムが高く、次のステップが30秒後に到着する場合は無駄になります。

Related

無料コース · サインアップ不要

まだ決められない?まず基本を学んでから、価格に戻ってきてください。

当社の計算ツールが隠れたAIウォレットの漏れを減らすのに役立ったなら、ご利用ありがとうございます。あなたの節約のごく一部が、当社の価格指数を毎日更新し続ける原動力となっています。

用途に対して一番安いAIが分からない? 30秒、登録不要。

AIコスト情報

AIツールに払いすぎるのをやめよう

OverpayingForAI リストに参加して、価格更新、より安い代替品、実用的な購入ガイダンスを受け取ろう。

現在、50以上のAIツール、モデル、プラットフォーム、サブスクリプション、コーディングツール、自動化製品を追跡しています。

お客様のメールアドレスはOverpayingForAIの更新情報のみに使用します。いつでも購読解除できます。