OpenAI APIOpenAI の機能

FEATURE

12-hour prompt caching

12-hour prompt caching (12時間プロンプトキャッシュ) は、OpenAI API のプロンプトキャッシュで、キャッシュの最低寿命を 12 時間に設定できる選択肢です。

提供中公式発表と照合済み
初出未調査
ページ更新
提供状態提供中
公式の記載で確認できた環境API
提供を確認できたプラン公式に記載なし
目次 CONTENTS
  1. できること
  2. 機能解説
  3. 使い方
  4. 利用シーン
  5. Claude・Anthropic の対応する機能
  6. これまでの変更
  7. 関連する機能
  8. 出典
CAN DO

できること

POINT 01

共通部分の再利用

後続のリクエストが同じプレフィックスを持ち、一致するキャッシュが見つかると、モデルはそのトークンを再処理せず、保存済みの状態を再利用します。

POINT 02

キャッシュを12時間保持

Responses API の prompt_cache_options.ttl で、最低限のキャッシュ寿命を既定の "30m" と "12h" から選べます。"12h" を選ぶと、リクエストが数時間離れていても、共有の指示・ツール・コンテキストに低いキャッシュ入力料金を適用できます。

POINT 03

キャッシュ効率の確認

Prompt Caching Dashboard では、次の指標をモデルとサービスティアで絞り込んで確認できます。対象は、キャッシュヒット率の推移、書き込みあたりの読み取り数、トークンの内訳です。

GUIDE

機能解説

概要

プロンプトキャッシュは、複数のリクエストが同じプロンプトのプレフィックス (先頭部分) を共有するときに、処理済みの結果を再利用する仕組みです。12 時間のキャッシュでは、共有の指示・ツール・コンテキストを長くキャッシュに保ちます。そのため、リクエストの間隔が数時間空いても、低いキャッシュ入力料金を適用できます。

プロンプトキャッシュは、対応する OpenAI のモデルでは既定で有効です。仕組みと前提は次のとおりです。

  • キャッシュに保存されるのは key-value (KV) テンソルで、トークンそのものではありません。
  • キャッシュを再利用するには、レンダリングされたプレフィックス全体が一致している必要があります。
  • プロンプトキャッシュは、モデルが出力トークンを生成する方法を変えません。モデルはキャッシュ済みのプレフィックスを使って新しい応答を生成するため、同一のリクエストでも同一の出力になるとは限りません。
  • キャッシュを手動で消去する機能はありません。キャッシュのエントリは、モデルのキャッシュ寿命と保持設定に従って失効します。

モデルごとの設定の違い

GPT-5.6 以降

  • implicit (暗黙) と explicit (明示) の両方のキャッシュに対応します。explicit では、どのコンテキストをキャッシュに書き込むかを細かく制御できます。
  • prompt_cache_options.mode が implicit のときは、OpenAI が対象となる最新のメッセージの末尾にブレークポイントを置きます。
  • explicit に設定すると、開発者が選んだブレークポイントだけが使われます。ブレークポイントは、入力メッセージ内の対応するコンテンツブロックに prompt_cache_breakpoint: { "mode": "explicit" } を加えて指定します。ブレークポイントを置かない場合、そのリクエストはプロンプトキャッシュを使わず、キャッシュへの書き込みも作りません。
  • 明示的ブレークポイントを複数置くと、変更の頻度が異なるプレフィックスを別々に保持できます。
  • トップレベルの instructions には明示的ブレークポイントを置けません。再利用する開発者向けの指示は、developer メッセージ内の input_text ブロックに入れて指定します。
  • 既知のコンテキストを前もって準備しておき、後続のリクエストで最初のトークンが返るまでの時間を縮める事前ウォームアップを使えます。まず prompt_cache_options.prewarm を true にしたリクエストを送ると、出力を生成せずにキャッシュだけを準備します。完了後、同じプレフィックスで、prewarm を省略するか false にした本来のリクエストを送ります。
  • キャッシュのルーティングは OpenAI が自動で行います。prompt_cache_key を分けて使うと、アプリケーション内の顧客やユーザーごとにキャッシュの計上を分けられます。

GPT-5.6 より前のモデル

  • implicit キャッシュだけに対応します。
  • 保持期間は prompt_cache_retention で設定します。指定できる値はモデルによって異なります。
  • 再利用可能なプレフィックスを共有する関連リクエストに、安定した prompt_cache_key を付けると、同じキャッシュへのルーティングを助けます。ただし、キャッシュヒットは保証されません。
  • GPT-5.5 のキャッシュは extended prompt caching でのみ機能し、In-memory prompt caching には対応しません。

GPT-6 以降の対応モデル

  • 会話の途中で推論努力度 (reasoning effort) を変えるときは、configuration_update 入力項目を追加し、トップレベルの reasoning.effort は元の値のままにします。こうすると、それまでのキャッシュ済みプレフィックスを保てます。

料金と監視

12 時間キャッシュへの書き込みには、入力トークン価格の 2.5 倍の料金がかかります。一方で、キャッシュされた入力には低いキャッシュ入力料金が適用されます。

キャッシュの効果は、次の方法で確認できます。

  • Prompt Caching Dashboard では、キャッシュヒット率の推移、書き込みあたりの読み取り数、キャッシュ読み取り・キャッシュ書き込み・非キャッシュのトークンの内訳を確認できます。指標はモデルとサービスティアで絞り込めます。
  • Prompt Cache Diagnostics tool を使うと、キャッシュミスの原因を診断できます。
  • prompt_cache_options に対応する Responses API のモデルでは、レスポンスの input_tokens_details.cache_write_tokens_details に書き込み量が ttl_30m_tokens と ttl_12h_tokens に分けて示されます。

提供状況の注意

12時間プロンプトキャッシュは API で選択できます。対象となるプランや提供地域は、公式のリリースノートには記載がありません。

管理者・導入時に確認したい点

  • ZDR が有効でない組織では、prompt_cache_retention の既定値が in_memory から 24h に変わり、extended prompt caching が既定で有効です。
  • プロンプトキャッシュのすべての機能は Zero Data Retention (ZDR) と両立します。
  • キャッシュは組織をまたいで共有されません。また、地域ごとの処理の境界 (regional processing boundaries) を越えて再利用されることもありません。
  • キャッシュを手動で消去する機能はなく、エントリは寿命と保持設定に従って失効します。
HOW TO USE

使い方

Responses API で、キャッシュの最低寿命を 12 時間にする場合の流れです。

  1. Responses API のリクエストで、prompt_cache_options.ttl を "12h" に設定します。この値は最低限のキャッシュ寿命を表し、既定値は "30m" です。
  2. 明示的ブレークポイントを使っている場合は、個々のブレークポイントに prompt_cache_breakpoint.ttl を設定できます。設定すると、そのブレークポイントだけリクエスト単位の ttl が上書きされます。
  3. レスポンスの input_tokens_details.cache_write_tokens_details を確認します。キャッシュへの書き込みは ttl_30m_tokens と ttl_12h_tokens に分けて示されます。
公式ヘルプを開く ↗
USE CASES

利用シーン

CASE 01

共通の長い指示・ツール定義・コンテキストを、数時間おきのリクエストで繰り返し使う API 連携に向いています。

CASE 02

アプリケーション内の顧客やユーザーごとに、キャッシュの計上を分けて把握したい場面に使えます (GPT-5.6 以降)。

CASE 03

内容が決まっているコンテキストを事前ウォームアップで準備し、後続のリクエストに備える場面に使えます (GPT-5.6 以降)。

CASE 04

キャッシュヒット率やトークン内訳を、モデル別・サービスティア別に追う運用の監視に使えます。

COMPARISON

Claude・Anthropic の対応する機能

比較の単位となる業務: 共有プロンプトの長時間キャッシュによる API 入力コスト削減とキャッシュ効率の監視

プロンプトキャッシュのミスを調べる手段は、どちらにもあります。OpenAI API では、Prompt Cache Diagnostics tool でキャッシュミスを診断できます。Claude の API のキャッシュ診断はベータとして提供されており、Messages リクエストに diagnostics.previous_message_id を渡すと cache_miss_reason が返ります。この値は、プレフィックスが前のターンとどこで分岐したかを示します。ベータ期間中は、リクエストに cache-diagnosis-2026-04-07 ベータヘッダーを含める必要があります。

会話の途中で設定を変えても、キャッシュ済みのプレフィックスを保つ仕組みも両方にあります。OpenAI API では、対応する GPT-6 以降のモデルで configuration_update 入力項目を追加し、推論努力度を途中で変更します。Claude Opus 4.8 では、ユーザーターンの後に role: "system" メッセージを送れます (配置ルールあり)。これにより、長時間のセッション中に指示を変えても、プロンプトキャッシュのヒットが保たれます。

TIMELINE

これまでの変更

  1. API で 12時間プロンプトキャッシュを選択できる機能が追加されました。12 時間キャッシュへの書き込みは、入力トークン価格の 2.5 倍です。

  2. OpenAI API プラットフォームで Prompt Caching Dashboard がリリースされました。キャッシュヒット率の推移やトークン内訳を、モデルとサービスティアで絞り込んで確認できます。

  3. GPT-5.6 で、明示的なプロンプトキャッシュ制御 (explicit prompt caching controls) が追加されました。

  4. ZDR が有効でない組織で、prompt_cache_retention の既定値が in_memory から 24h に変わりました。これにより、extended prompt caching が既定で有効になりました。

  5. GPT-5.5 がプロンプトキャッシュに対応しました。GPT-5.5 のキャッシュは extended prompt caching でのみ機能し、In-memory prompt caching には対応しません。

SOURCES

出典

出典 4 件を表示