GEO

プロンプトキャッシング

プロンプトキャッシングとは、LLMプロバイダーがプロンプトの繰り返される先頭部分(システムプロンプト、会話履歴、長文ドキュメント)を複数のリクエストにわたって保存・再利用する機能です。毎回同じトークンを再処理する代わりに、モデルはそれらをキャッシュから読み込み、コストとレイテンシを劇的に削減します。Anthropicが2024年にClaudeで導入し、OpenAIとGoogleがこれに続いて、2026年までに標準的なLLM APIの機能となりました。

プロンプトキャッシングとは、LLMプロバイダーがプロンプトの繰り返される先頭部分(システムプロンプト、会話履歴、長文ドキュメント)を複数のリクエストにわたって保存・再利用する機能です。毎回同じトークンを再処理する代わりに、モデルはそれらをキャッシュから読み込み、コストとレイテンシを劇的に削減します。Anthropicが2024年にClaudeで導入し、OpenAIとGoogleがこれに続いて、2026年までに標準的なLLM APIの機能となりました。

なぜ重要なのか

RAGパイプラインやエージェントは、長いシステムプロンプト、会話履歴、取得したドキュメントをすべてのリクエストに注入します。10回繰り返せば、10回分のフルプライスの計算を意味します。Anthropicのドキュメントは、キャッシュされた部分について最大90%のコスト削減と85%のレイテンシ削減を報告しています。本番環境のAIアプリは、プロンプトキャッシングを中心に経済性を根本から再構築しています。

どのように機能するのか

  1. キャッシュ可能なセクションをマークする: 開発者は、プロンプトのどの部分がキャッシュしても安全かを明示的にマークします(Anthropicはcache_controlブロックを使い、OpenAIは自動的にキャッシュします)。
  2. 最初のリクエスト(キャッシュ書き込み): モデルはプロンプト全体を処理し、マークされた部分をキャッシュに保存します。このリクエストは、キャッシュ書き込みのオーバーヘッドにより実際にはわずかに高くなります。
  3. 以降のリクエスト(キャッシュ読み込み): 同じ先頭部分を持つリクエストが到着すると、モデルは内部状態をキャッシュから読み込みます。それらのトークンは入力価格の約10%で課金されます。
  4. キャッシュのTTL: キャッシュは通常約5分(Anthropic)かそれ以上存続し、使用されないと自動的に削除されます。

いつ使うべきか

チャットボットのシステムプロンプト: 役割、制約、例の数千トークンを毎ターン再処理する代わりにキャッシュします。

長文ドキュメントのQA: 本、PDF、マニュアルをコンテキストに詰め込んで多数の質問をする場合。ドキュメントはキャッシュされ、質問だけが変わります。

エージェントのツール定義: ツールスキーマの数千トークンをキャッシュし、各ツール呼び出しのレイテンシを下げます。

コードアシスタント: プロジェクトのコードベース全体をコンテキストに読み込んで、多数のフォローアップ質問をする場合。

RAGパイプライン: 頻繁に取得される固定のドキュメントをキャッシュし、繰り返しのクエリでコストを節約します。

注意点

完全一致: キャッシュされた先頭部分はトークン単位で一致しなければなりません。日付やユーザーIDのような可変データをシステムプロンプトに注入するとキャッシュが壊れます。可変部分はキャッシュ領域の後ろに移動しましょう。

最小キャッシュサイズ: Anthropicはキャッシュに最低1,024トークン(Sonnet/Opus)を要求します。短いプロンプトでは何も得られません。

TTLの管理: キャッシュヒットには、TTLウィンドウ内にリクエストが到着する必要があります。トラフィックの少ないサービスは、定期的なハートビートリクエストで「キャッシュを温かく保つ」必要があります。

書き込みオーバーヘッド: 最初のリクエストはわずかに高くなります。再利用しなければ損をします。

2026年の進化

より長いキャッシュ: 一部のプロバイダーは現在、数時間から数日のTTLを提供しており、エンタープライズエージェントや常時稼働のチャットボットに役立ちます。

ユーザー単位のキャッシング: パーソナライズされたシステムプロンプトをユーザーごとにキャッシュします。

ハイブリッドRAG: 頻繁に取得されるチャンクをキャッシュし、繰り返しのクエリでベクトル検索をスキップします。

GEOへの示唆

AI検索エンジンが多数のクエリにわたってブログコンテンツを再利用するためには、コンテンツが「キャッシュしやすく安定した形式」である必要があります。頻繁なURLの変更やページ内の動的なパーソナライゼーションはキャッシュを壊します。構造化されたMarkdown、安定したURL、静的生成を提供するブログは、AI検索インフラによってコスト効率の良いソースとして再利用される可能性が高くなります。

Sources: