プロンプトキャッシュと会話の記憶を、別の仕組みとして理解する
プロンプトキャッシュは、繰り返し使う入力の処理を再利用する仕組みです。前の会話を次の応答で使えるようにする会話履歴・状態とは、役割を分けて考えます。キャッシュが使われたという情報だけで、前の会話が次のリクエストへ正しく引き継がれたとは判断できません。
この記事は、同じ説明や資料を何度も渡すAIアプリを作る人向けです。「会話の記憶」は前の発言を次の応答で使う会話状態を指し、特定のチャット製品の長期メモリー機能は扱いません。公式資料の解説であり、モデルAPIを呼んで料金や速度を測定した記事ではありません。
同じ入力の処理を再利用し、応答はその都度生成する
OpenAIの資料は、入力の先頭から共通する部分を再利用する仕組みを説明しています。先頭からの連続部分をprefixと呼びます。同資料は、キャッシュを使っても応答は新たに生成され、同じリクエストで同じ答えになる保証はないと説明しています。以前の応答文をそのまま返す応答キャッシュとは区別します。
たとえば、長い社内用語集を使い、毎回違う文章を要約する場合を考えます。共通の用語集と今回の文章は、変化の仕方が異なります。どの入力が繰り返されるかを見つけることと、その入力が実際にキャッシュの条件を満たすことは別です。この例の用語集やリクエストを実際に送信したわけではありません。
会話の続きは、履歴や状態の渡し方で扱う
OpenAIの会話状態の資料では、過去のメッセージを渡す方法や、APIが提供する状態管理の方法を説明しています。アプリは使うAPIに合わせて、前の発言をどのように次のリクエストへ含めるかを用意します。キャッシュのヒットを示す利用量だけでは、その会話状態の内容まで確認できません。
キャッシュと会話状態は、どちらか一方だけを選ぶ機能ではありません。会話の履歴を含む入力がキャッシュの対象になる構成もあります。前の会話を正しく参照できるかは会話の内容と渡し方で、入力の処理が再利用されたかはキャッシュの利用量で確認します。
共通の入力を先頭に置くだけで、必ずヒットするわけではない
Anthropicの資料は、cache_controlを使う自動キャッシュと明示的な区切りを説明しています。キャッシュ対象となる区切りまでの内容が一致することに加え、対象モデルの最小長や有効期間なども条件になります。資料の先頭に毎回異なる時刻や個別情報を置けば、共通部分の一致にも影響します。
入力の配置例は次のとおりです。これは筆者が整理した設計用の例で、各APIへそのまま渡すJSONや、キャッシュの成功を示す実測値ではありません。指示と外部資料の権限を区別することも、配置とは別に必要です。
| 入力の部分 | 例 | 確認すること |
|---|---|---|
| 共通の処理方針 | 作業の目的・出力の約束 | 変える必要があるときだけ更新する |
| 共通の参照資料 | 同じ版の用語集など | 版や内容の差を確認する |
| 今回の入力 | 今回要約する文章・質問 | リクエストごとに変わる |
OpenAIの取得時点の資料には、共通の先頭部分があっても、再利用できる保存境界がなければヒットしない場合が記されています。モデルや設定に合うキャッシュの区切りを確かめる必要があります。「固定部分を先に置いたので必ず再利用される」とは判断できません。
Gemini APIの資料も、共通の内容を先頭に置くことを案内しています。一方、取得時点ではInteractions APIはimplicit cachingのみを扱い、explicit cachingは対応するGemini 3・2.5モデルでgenerateContent APIを使うという区分があります。各社の設定名や対応範囲を、共通の仕様として置き換えないでください。
利用量と待ち時間を分けて、実際の効果を確かめる
効果を確かめる際は、同じモデルと設定、入力の版、送信間隔、キャッシュの設定を記録します。そのうえで、入力・出力の利用量、キャッシュの読取や書込として返された利用量、応答までの待ち時間を分けて比べます。各社のusageの項目は同じ意味や構成とは限らないため、使うAPIの説明に合わせて読みます。
Anthropicの資料はキャッシュの作成と読取、通常入力を分けた項目を説明しています。キャッシュの作成に関する課金もあるため、ヒットの有無だけで支払額が下がったとはいえません。対応モデル、最小長、有効期間、課金条件を確認し、必要な入力と実際の利用回数で比べます。この記事では価格表の数値、割引率、速度の改善率を測定・確定していません。
会話の内容を保つこと、入力の再利用条件を満たすこと、利用量と待ち時間に効果が出ることを、それぞれ確認します。構造化出力など別の機能と組み合わせる場合も、キャッシュが回答内容の正しさを保証するわけではありません。出力の確認方法は、JSONの形式と内容を分ける記事で説明しています。
出典と確認日
2026年10月28日確認。各資料の取得時点のAPI説明を対象にし、料金・速度の実測やAPI間の互換確認は行っていません。