プロンプトキャッシュ は、AI APIで繰り返し使う長い入力の一部を再利用し、入力トークンの処理コストや応答待ち時間を下げやすくする仕組みです。
英語では Prompt Caching と呼ばれます。
一般的なキャッシュが「一度使ったデータを次回速く使う」考え方であるのに対し、プロンプトキャッシュでは、システムプロンプト、ツール定義、長いドキュメント、固定の指示文など、リクエスト間で同じになりやすい入力部分が対象になります。
まず押さえたいポイント
- AI APIの入力が長く、同じ前半部分を何度も送るときに効きやすい
- 多くの場合、完全一致する prefix が重要になる
- ユーザーごとに変わる質問や最新データは、後ろに置く方がキャッシュに乗りやすい
- キャッシュされても出力の生成自体が不要になるわけではない
- 料金、保持時間、明示設定の有無はAPI事業者ごとに違う
どんな場面で使うか
プロンプトキャッシュは、長い共通コンテキストを何度も使う場面で特に効きます。
たとえば、長いシステム指示、社内ルール、コードベースの説明、ツール定義、JSON Schema、FAQ文書などを毎回AI APIへ渡す場合です。
チャットボット、AIエージェント、コードレビュー支援、ドキュメントQA、社内ナレッジ検索の後段処理などでは、共通部分が大きくなりがちです。
その共通部分をキャッシュに乗せられると、毎回すべてを最初から処理するより、コストとレイテンシを下げやすくなります。
通常のキャッシュとの違い
Webアプリのキャッシュでは、HTMLやAPIレスポンスの結果をそのまま保存することがあります。
一方、プロンプトキャッシュは、最終回答を保存するというより、モデルが入力を処理する途中の再利用に近い考え方です。
そのため、同じ質問なら必ず同じ回答を返す、という意味ではありません。
キャッシュが効いても、モデルはそのリクエストに対する出力をあらためて生成します。
実務で見るポイント
プロンプトキャッシュを効かせたいなら、固定部分を前に、変動部分を後ろに置く設計が重要です。
システムメッセージ、ツール定義、出力形式、共通例、長い参照文書を前半にまとめ、ユーザーの質問、現在時刻、検索結果、個別データは後ろへ寄せます。
また、キャッシュヒット率をログで見ないまま「効いているはず」と考えるのは危険です。
APIレスポンスの cached tokens、cache read/write tokens、レイテンシ、入力トークン数、出力トークン数を一緒に見て、実際に費用対効果が出ているか確認します。
詳しい整理は、プロンプトキャッシュとは?AI APIのコストと応答速度に効く理由 で解説しています。