プロンプトキャッシュ & コスト最適化
多くのリクエストが大きく変化しない塊 — 長いシステムプロンプト、大きなドキュメント、ツールカタログ — を共有している場合、プロンプトキャッシュを使うと、処理済みの先頭部分を毎回読み直す代わりに API が再利用できます。これにより、キャッシュされた部分についてコストとレイテンシーの両方が削減されます。
仕組み(メンタルモデル)
安定した先頭部分の後にキャッシュのブレークポイントを置きます。最初の呼び出しでそれが処理されてキャッシュされ、まったく同じ先頭部分を共有する後続の呼び出しはキャッシュにヒットし、その分の支払いが大幅に少なくなります。
成否を分ける不変条件
:::warning キャッシュは先頭部分が完全一致でなければならない キャッシュヒットには、キャッシュされた先頭部分がバイト単位で同一である必要があります。最もよくあるバグは、プロンプトの先頭付近にある無言の無効化要因 — タイムスタンプ、変化するユーザー名、並び替えられたツールリスト — が先頭部分を変え、ヒット率を静かにゼロに落とすことです。 :::
安定したものはすべて先頭に、変化するものはすべて末尾に置き、先頭部分を本当に一定に保ちましょう。
最も効果が出る場面
- 複数のユーザーで再利用される長いシステムプロンプト。
- 同じソーステキストが繰り返し問い合わされる RAG / ドキュメント Q&A。
- 多数のターンにわたり、固定のツールカタログと指示を持つエージェント。
オフラインのワークロードではバッチ処理と組み合わせ、さらにモデルの適正サイズ化(モデルの選び方)と組み合わせると、合計で最大の節約になります — コストとレイテンシーを参照。