
要約 — このレッスンの要点
- Prompt Caching は、同じプロンプト前半部分を Anthropic サーバー側でキャッシュし、再利用時のトークン処理コストを削減する機能。
- キャッシュ読み出し時のコストは通常入力トークンの 10%(90% 削減)。長いシステムプロンプトや参照文書を繰り返し送る場合に効果大(出典: anthropic.com/pricing — USD 税別)。
- 設定は
cache_control: {"type": "ephemeral"}をリクエストに追加するだけ。SDK が自動的にキャッシュ対象を判断する。 - キャッシュ書き込み時は通常の 1.25 倍〜 2 倍のコストが発生する。繰り返し利用することで元が取れる構造。
- コード例は出典を一次情報とする。
Prompt Caching とは
API を通じて Claude を使う場合、長いシステムプロンプトや大量の参照文書を 毎回送信すると、入力トークン料金が積み上がります。 Prompt Caching は、リクエストの先頭部分を Anthropic のサーバー側でキャッシュし、 次回以降のリクエストでそのキャッシュを再利用する機能です 出典。
キャッシュから読み出す場合のコストは通常入力トークンの **10%(USD 税別)**に抑えられます。 最新の料金単価は必ず公式サイトで確認してください (anthropic.com/pricing)。
料金の構造
| トークン種別 | コスト倍率(対通常入力) |
|---|---|
| 通常入力トークン | 1×(基準) |
| キャッシュ書き込みトークン(5 分保持) | 1.25× |
| キャッシュ書き込みトークン(1 時間保持) | 2× |
| キャッシュ読み出しトークン | 0.1×(90% 削減) |
※ USD 税別。モデルごとの具体的な単価は anthropic.com/pricing で確認。
Python — 最小コード例
以下は公式ドキュメントのコード例に準拠した構成です
出典。
cache_control をリクエストのトップレベルに追加すると、
SDK が最後のキャッシュ可能なブロックに自動でキャッシュブレークポイントを設定します。
import anthropic
client = anthropic.Anthropic()
response = client.messages.create(
model="claude-opus-4-7",
max_tokens=1024,
cache_control={"type": "ephemeral"}, # キャッシュを有効化
system="あなたは文学作品を分析する AI アシスタントです。"
"テーマ・登場人物・文体について深い考察を提供してください。",
messages=[
{
"role": "user",
"content": "「源氏物語」の主要テーマを分析してください。",
}
],
)
# 使用トークン数を確認
print(response.usage.model_dump_json())
response.usage には cache_creation_input_tokens と
cache_read_input_tokens が含まれ、キャッシュの動作状況を確認できます。
キャッシュが効くケース
- 長いシステムプロンプト — 数百〜数千トークンの業務指示を毎回送る場合
- 参照文書を含む RAG — 同じドキュメントを複数回の会話で参照する場合
- Few-shot 例の再利用 — 多数の例示を含むプロンプトを繰り返す場合
キャッシュは一致するプレフィックスが変わると無効化されます。 キャッシュの効果を最大化するには、変化しない部分をリクエストの先頭にまとめる設計が重要です。
Claude Opus 4.7 移行との関係
Prompt Caching は Claude Opus 4.7 でも引き続き利用できます。 移行時の注意点(破壊的変更・廃止パラメータ)は 「Claude Opus 4.7 移行実務ガイド」 で解説しています。
Level 5 修了
おめでとうございます。Level 5「API / SDK」の全 5 レッスンを修了しました。 API キー取得・SDK 基礎・Tool Use・ストリーミング・Prompt Caching という、 Claude をプログラムから活用するための基礎を一通り把握できました。 Level 6「ビジネス利用」では、Claude を業務フローへ組み込む実践的な視点を学びます。