プロンプトキャッシングは、プロンプト内の特定のプレフィックスから再開することで、APIの使用を最適化します。これにより、反復的なタスクや一貫した要素を含むプロンプトの処理時間とコストが大幅に削減されます。
This feature is eligible for Zero Data Retention (ZDR). When your organization has a ZDR arrangement, data sent through this feature is not stored after the API response is returned.
プロンプトキャッシングを有効にする方法は2つあります:
cache_controlフィールドを追加します。システムは自動的にキャッシュブレークポイントを最後のキャッシュ可能なブロックに適用し、会話が成長するにつれて前に移動します。会話履歴が成長するにつれて自動的にキャッシュされるべき複数ターンの会話に最適です。cache_controlを配置して、キャッシュされる内容を細かく制御します。最も簡単な方法は自動キャッシングから始めることです:
Was this page helpful?
curl https://api.anthropic.com/v1/messages \
-H "content-type: application/json" \
-H "x-api-key: $ANTHROPIC_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-d '{
"model": "claude-opus-4-6",
"max_tokens": 1024,
"cache_control": {"type": "ephemeral"},
"system": "You are an AI assistant tasked with analyzing literary works. Your goal is to provide insightful commentary on themes, characters, and writing style.",
"messages": [
{
"role": "user",
"content": "Analyze the major themes in Pride and Prejudice."
}
]
}'自動キャッシングでは、システムは最後のキャッシュ可能なブロックまでのすべてのコンテンツをキャッシュします。同じプレフィックスを持つ後続のリクエストでは、キャッシュされたコンテンツが自動的に再利用されます。
プロンプトキャッシングを有効にしてリクエストを送信すると:
これは特に以下の場合に有用です:
デフォルトでは、キャッシュの有効期限は5分です。キャッシュされたコンテンツが使用されるたびに、追加コストなしでキャッシュが更新されます。
5分が短すぎる場合、Anthropicは追加コストで1時間のキャッシュ期間も提供しています。
詳細については、1時間のキャッシュ期間を参照してください。
プロンプトキャッシングは完全なプレフィックスをキャッシュします
プロンプトキャッシングは、cache_controlで指定されたブロックまでの、その順序でtools、system、messagesを含む完全なプロンプトを参照します。
プロンプトキャッシングは新しい価格体系を導入します。以下の表は、サポートされている各モデルのトークンあたりの価格を示しています:
| Model | Base Input Tokens | 5m Cache Writes | 1h Cache Writes | Cache Hits & Refreshes | Output Tokens |
|---|---|---|---|---|---|
| Claude Opus 4.6 | $5 / MTok | $6.25 / MTok | $10 / MTok | $0.50 / MTok | $25 / MTok |
| Claude Opus 4.5 | $5 / MTok | $6.25 / MTok | $10 / MTok | $0.50 / MTok | $25 / MTok |
| Claude Opus 4.1 | $15 / MTok | $18.75 / MTok | $30 / MTok | $1.50 / MTok | $75 / MTok |
| Claude Opus 4 | $15 / MTok | $18.75 / MTok | $30 / MTok | $1.50 / MTok | $75 / MTok |
| Claude Sonnet 4.6 | $3 / MTok | $3.75 / MTok | $6 / MTok | $0.30 / MTok | $15 / MTok |
| Claude Sonnet 4.5 | $3 / MTok | $3.75 / MTok | $6 / MTok | $0.30 / MTok | $15 / MTok |
| Claude Sonnet 4 | $3 / MTok | $3.75 / MTok | $6 / MTok | $0.30 / MTok | $15 / MTok |
| Claude Sonnet 3.7 (deprecated) | $3 / MTok | $3.75 / MTok | $6 / MTok | $0.30 / MTok | $15 / MTok |
| Claude Haiku 4.5 | $1 / MTok | $1.25 / MTok | $2 / MTok | $0.10 / MTok | $5 / MTok |
| Claude Haiku 3.5 | $0.80 / MTok | $1 / MTok | $1.6 / MTok | $0.08 / MTok | $4 / MTok |
| Claude Opus 3 (deprecated) | $15 / MTok | $18.75 / MTok | $30 / MTok | $1.50 / MTok | $75 / MTok |
| Claude Haiku 3 | $0.25 / MTok | $0.30 / MTok | $0.50 / MTok | $0.03 / MTok | $1.25 / MTok |
上記の表は、プロンプトキャッシングの以下の価格乗数を反映しています:
これらの乗数は、Batch APIディスカウントやデータレジデンシーなどの他の価格修飾子と組み合わさります。詳細については、価格設定を参照してください。
プロンプトキャッシング(自動と明示的の両方)は、すべてのアクティブなClaudeモデルでサポートされています。
自動キャッシングは、プロンプトキャッシングを有効にする最も簡単な方法です。個別のコンテンツブロックにcache_controlを配置する代わりに、リクエストボディのトップレベルに単一のcache_controlフィールドを追加します。システムは自動的にキャッシュブレークポイントを最後のキャッシュ可能なブロックに適用します。
curl https://api.anthropic.com/v1/messages \
-H "content-type: application/json" \
-H "x-api-key: $ANTHROPIC_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-d '{
"model": "claude-opus-4-6",
"max_tokens": 1024,
"cache_control": {"type": "ephemeral"},
"system": "You are a helpful assistant that remembers our conversation.",
"messages": [
{"role": "user", "content": "My name is Alex. I work on machine learning."},
{"role": "assistant", "content": "Nice to meet you, Alex! How can I help with your ML work today?"},
{"role": "user", "content": "What did I say I work on?"}
]
}'自動キャッシングでは、会話が成長するにつれてキャッシュポイントが自動的に前に移動します。各新しいリクエストは最後のキャッシュ可能なブロックまでのすべてをキャッシュし、以前のコンテンツはキャッシュから読み取られます。
| リクエスト | コンテンツ | キャッシュ動作 |
|---|---|---|
| リクエスト1 | システム + ユーザー(1) + アシスタント(1) + ユーザー(2) ◀ キャッシュ | すべてキャッシュに書き込み |
| リクエスト2 | システム + ユーザー(1) + アシスタント(1) + ユーザー(2) + アシスタント(2) + ユーザー(3) ◀ キャッシュ | システムからユーザー(2)までキャッシュから読み取り; アシスタント(2) + ユーザー(3)をキャッシュに書き込み |
| リクエスト3 | システム + ユーザー(1) + アシスタント(1) + ユーザー(2) + アシスタント(2) + ユーザー(3) + アシスタント(3) + ユーザー(4) ◀ キャッシュ | システムからユーザー(3)までキャッシュから読み取り; アシスタント(3) + ユーザー(4)をキャッシュに書き込み |
キャッシュブレークポイントは各リクエストの最後のキャッシュ可能なブロックに自動的に移動するため、会話が成長するにつれてcache_controlマーカーを更新する必要はありません。
デフォルトでは、自動キャッシングは5分のTTLを使用します。基本入力トークン価格の2倍で1時間のTTLを指定できます:
{ "cache_control": { "type": "ephemeral", "ttl": "1h" } }自動キャッシングは明示的なキャッシュブレークポイントと互換性があります。一緒に使用する場合、自動キャッシュブレークポイントは4つの利用可能なブレークポイントスロットの1つを使用します。
これにより、両方のアプローチを組み合わせることができます。たとえば、明示的なブレークポイントを使用してシステムプロンプトとツールを独立してキャッシュし、自動キャッシングが会話を処理します:
{
"model": "claude-opus-4-6",
"max_tokens": 1024,
"cache_control": { "type": "ephemeral" },
"system": [
{
"type": "text",
"text": "You are a helpful assistant.",
"cache_control": { "type": "ephemeral" }
}
],
"messages": [{ "role": "user", "content": "What are the key terms?" }]
}自動キャッシングは同じ基盤となるキャッシングインフラストラクチャを使用します。価格設定、最小トークン閾値、コンテキスト順序要件、および20ブロックのルックバックウィンドウはすべて、明示的なブレークポイントと同じように適用されます。
cache_controlを既に持っている場合、自動キャッシングは何もしません。cache_controlを持っている場合、APIは400エラーを返します。自動キャッシングはClaude APIおよびAzure AI Foundry(プレビュー)で利用可能です。Amazon BedrockおよびGoogle Vertex AIのサポートは後で提供される予定です。
キャッシングをより細かく制御するために、個別のコンテンツブロックに直接cache_controlを配置できます。これは、異なる頻度で変わるさまざまなセクションをキャッシュする必要がある場合、または何がキャッシュされるかについて細かく制御する必要がある場合に便利です。
静的コンテンツ(ツール定義、システム指示、コンテキスト、例)をプロンプトの最初に配置します。cache_controlパラメータを使用して、再利用可能なコンテンツの終わりをマークします。
キャッシュプレフィックスは次の順序で作成されます:tools、system、その後messages。この順序は、各レベルが前のレベルに基づいて構築される階層を形成します。
最後の静的コンテンツの終わりに1つのキャッシュブレークポイントを使用でき、システムは自動的に前のリクエストがすでにキャッシュに書き込んだ最長のプレフィックスを見つけます。これがどのように機能するかを理解することは、キャッシング戦略を最適化するのに役立ちます。
3つの中核原則:
キャッシュ書き込みはブレークポイントでのみ発生します。 ブロックをcache_controlでマークすると、正確に1つのキャッシュエントリが書き込まれます:そのブロックで終わるプレフィックスのハッシュです。システムは以前の位置のエントリを書き込みません。ハッシュは累積的であり、ブレークポイントまでのすべてをカバーするため、ブレークポイント以前のブロックを変更すると、次のリクエストで異なるハッシュが生成されます。
キャッシュ読み取りは前のリクエストが書き込んだエントリを後ろに探します。 各リクエストで、システムはブレークポイントでプレフィックスハッシュを計算し、一致するキャッシュエントリを確認します。存在しない場合、1ブロックずつ後ろに歩いて、各以前の位置でプレフィックスハッシュが既にキャッシュに存在するものと一致するかどうかを確認します。これは安定したコンテンツを探しているのではなく、前の書き込みを探しています。
ルックバックウィンドウは20ブロックです。 システムはブレークポイントあたり最大20の位置をチェックし、ブレークポイント自体を最初としてカウントします。そのウィンドウ内で一致するエントリが見つからない場合、チェックは停止します(または、別の明示的なブレークポイントがある場合は、そこから再開します)。
例:成長する会話でのルックバック
各ターンで新しいブロックを追加し、各リクエストの最後のブロックにcache_controlを設定します:
一般的な間違い:毎回変わるコンテンツのブレークポイント
プロンプトには大きな静的システムコンテキスト(ブロック1から5)があり、その後にタイムスタンプとユーザーメッセージを含むリクエストごとのブロック(ブロック6)があります。ブロック6にcache_controlを設定します:
ルックバックはブレークポイントの後ろの安定したコンテンツを見つけてキャッシュしません。前のリクエストが既に書き込んだエントリを見つけ、書き込みはブレークポイントでのみ発生します。cache_controlをブロック5(リクエスト全体で同じままのブロック)に移動すると、その後のすべてのリクエストがキャッシュされたプレフィックスを読み取ります。自動キャッシングは同じ罠に陥ります:ブレークポイントを最後のキャッシュ可能なブロックに配置しますが、この構造ではリクエストごとに変わるブロックなので、代わりにブロック5の明示的なブレークポイントを使用します。
重要なポイント: cache_controlを、共有したいリクエスト全体でプレフィックスが同じ最後のブロックに配置します。成長する会話では、各ターンが20ブロック未満を追加する限り、最後のブロックは機能します:以前のコンテンツは変わらないため、次のリクエストのルックバックは前の書き込みを見つけます。タイムスタンプ、リクエストごとのコンテキスト、受信メッセージを含む変動するサフィックスを持つプロンプトの場合、ブレークポイントを変動するブロックではなく、静的プレフィックスの終わりに配置します。
以下の場合に最大4つのキャッシュブレークポイントを定義できます:
重要な制限: ルックバックは、以前のリクエストが既に書き込んだエントリのみを見つけることができます。成長する会話がブレークポイントを最後の書き込みから20ブロック以上先に押し出す場合、ルックバックウィンドウはそれを見逃します。その位置に近い2番目のブレークポイントを最初から追加して、必要になる前にそこに書き込みが蓄積されるようにします。
キャッシュブレークポイント自体はコストを追加しません。 以下に対してのみ課金されます:
より多くのcache_controlブレークポイントを追加してもコストは増加しません。実際にキャッシュされて読み取られるコンテンツに基づいて同じ金額を支払います。ブレークポイントは、どのセクションを独立してキャッシュできるかを制御するだけです。
最小キャッシュ可能プロンプト長は:
より短いプロンプトは、cache_controlでマークされていても、キャッシュできません。この数より少ないトークンをキャッシュするリクエストは、キャッシングなしで処理され、エラーは返されません。プロンプトがキャッシュされたかどうかを確認するには、レスポンス使用フィールドを確認します:cache_creation_input_tokensとcache_read_input_tokensの両方が0の場合、プロンプトはキャッシュされませんでした(おそらく最小長要件を満たさなかったため)。
プロンプトが使用しているモデルの最小値をわずかに下回る場合、キャッシュされたコンテンツを拡張して閾値に達することは、多くの場合価値があります。キャッシュ読み取りはキャッシュされていない入力トークンよりも大幅に低コストなので、最小値に達することは頻繁に再利用されるプロンプトのコストを削減できます。
並行リクエストの場合、キャッシュエントリは最初のレスポンスが開始された後にのみ利用可能になることに注意してください。並行リクエストのキャッシュヒットが必要な場合は、最初のレスポンスを待ってから後続のリクエストを送信してください。
現在、「ephemeral」は唯一のサポートされているキャッシュタイプであり、デフォルトでは5分の有効期限があります。
リクエスト内のほとんどのブロックはキャッシュできます。これには以下が含まれます:
tools配列内のツール定義system配列内のコンテンツブロックmessages.content配列内のコンテンツブロック、ユーザーとアシスタント両方のターンmessages.content配列内のコンテンツブロック、ユーザーターンmessages.content配列内のコンテンツブロック、ユーザーとアシスタント両方のターンこれらの各要素は、自動的に、またはそれらをcache_controlでマークすることでキャッシュできます。
ほとんどのリクエストブロックはキャッシュできますが、いくつかの例外があります:
思考ブロックはcache_controlで直接キャッシュできません。ただし、思考ブロックは、以前のアシスタントターンに表示される場合、他のコンテンツと一緒にキャッシュできます。この方法でキャッシュされると、キャッシュから読み取られるときに入力トークンとしてカウントされます。
サブコンテンツブロック(引用など)自体はcache_controlで直接キャッシュできません。代わりに、トップレベルのブロックをキャッシュします。
引用の場合、引用のソース資料として機能するトップレベルのドキュメントコンテンツブロックはキャッシュできます。これにより、引用をキャッシュするドキュメントをキャッシュすることで、プロンプトキャッシングを引用で効果的に使用できます。
空のテキストブロックはキャッシュできません。
キャッシュされたコンテンツへの変更は、キャッシュの一部またはすべてを無効にする可能性があります。
プロンプトの構造化で説明されているように、キャッシュは階層に従います:tools → system → messages。各レベルでの変更は、そのレベルとそれ以降のすべてのレベルを無効にします。
以下の表は、異なるタイプの変更によってキャッシュのどの部分が無効化されるかを示しています。✘はキャッシュが無効化されることを示し、✓はキャッシュが有効なままであることを示します。
| 変更内容 | ツールキャッシュ | システムキャッシュ | メッセージキャッシュ | 影響 |
|---|---|---|---|---|
| ツール定義 | ✘ | ✘ | ✘ | ツール定義(名前、説明、パラメータ)を変更するとキャッシュ全体が無効化されます |
| ウェブ検索トグル | ✓ | ✘ | ✘ | ウェブ検索を有効/無効にするとシステムプロンプトが変更されます |
| 引用トグル | ✓ | ✘ | ✘ | 引用を有効/無効にするとシステムプロンプトが変更されます |
| 速度設定 | ✓ | ✘ | ✘ | speed: "fast"と標準速度の間で切り替えるとシステムとメッセージキャッシュが無効化されます |
| ツール選択 | ✓ | ✓ | ✘ | tool_choiceパラメータへの変更はメッセージブロックのみに影響します |
| 画像 | ✓ | ✓ | ✘ | プロンプト内の任意の場所で画像を追加/削除するとメッセージブロックに影響します |
| 思考パラメータ | ✓ | ✓ | ✘ | 拡張思考設定(有効/無効、予算)への変更はメッセージブロックに影響します |
| 拡張思考リクエストに渡される非ツール結果 | ✓ | ✓ | ✘ | 拡張思考が有効な状態でリクエストに非ツール結果が渡される場合、以前にキャッシュされたすべての思考ブロックはコンテキストから削除され、それらの思考ブロックに続くコンテキスト内のメッセージはキャッシュから削除されます。詳細については、思考ブロックでのキャッシングを参照してください。 |
レスポンス内のusage(またはストリーミングの場合はmessage_startイベント)内のこれらのAPIレスポンスフィールドを使用してキャッシュパフォーマンスを監視します:
cache_creation_input_tokens:新しいエントリを作成するときにキャッシュに書き込まれたトークン数。cache_read_input_tokens:このリクエストのキャッシュから取得されたトークン数。input_tokens:キャッシュから読み取られたり、キャッシュを作成するために使用されなかったトークン数(つまり、最後のキャッシュブレークポイント後のトークン)。トークン分解の理解
input_tokensフィールドは、リクエスト内の最後のキャッシュブレークポイント後のトークンのみを表します。送信したすべての入力トークンではありません。
総入力トークンを計算するには:
total_input_tokens = cache_read_input_tokens + cache_creation_input_tokens + input_tokens空間的説明:
cache_read_input_tokens = ブレークポイント前のトークンで既にキャッシュされている(読み取り)cache_creation_input_tokens = ブレークポイント前のトークンで今キャッシュされている(書き込み)input_tokens = 最後のキャッシュブレークポイント後のトークン(キャッシュに適格ではない)例: 100,000トークンのキャッシュされたコンテンツ(キャッシュから読み取り)、キャッシュされている0トークンの新しいコンテンツ、ユーザーメッセージの50トークン(キャッシュブレークポイント後)を持つリクエストがある場合:
cache_read_input_tokens: 100,000cache_creation_input_tokens: 0input_tokens: 50これはコストとレート制限の両方を理解するために重要です。キャッシングを効果的に使用する場合、input_tokensは通常、総入力よりもはるかに小さくなります。
拡張シンキングをプロンプトキャッシングと一緒に使用する場合、シンキングブロックには特別な動作があります:
他のコンテンツと一緒に自動キャッシング: シンキングブロックはcache_controlで明示的にマークすることはできませんが、ツール結果を含む後続のAPI呼び出しを行う際に、リクエストコンテンツの一部としてキャッシュされます。これは通常、シンキングブロックを会話に戻して続行するツール使用時に発生します。
入力トークンカウント: シンキングブロックがキャッシュから読み込まれる場合、使用メトリクスの入力トークンとしてカウントされます。これはコスト計算とトークン予算に重要です。
キャッシュ無効化パターン:
cache_controlマーカーがなくても発生しますキャッシュ無効化の詳細については、キャッシュを無効化するものを参照してください。
ツール使用の例:
リクエスト1: ユーザー: "パリの天気は?"
レスポンス: [thinking_block_1] + [tool_use block 1]
リクエスト2:
ユーザー: ["パリの天気は?"],
アシスタント: [thinking_block_1] + [tool_use block 1],
ユーザー: [tool_result_1, cache=True]
レスポンス: [thinking_block_2] + [text block 2]
# リクエスト2はそのリクエストコンテンツをキャッシュします(レスポンスではなく)
# キャッシュには以下が含まれます: ユーザーメッセージ、thinking_block_1、tool_use block 1、tool_result_1
リクエスト3:
ユーザー: ["パリの天気は?"],
アシスタント: [thinking_block_1] + [tool_use block 1],
ユーザー: [tool_result_1, cache=True],
アシスタント: [thinking_block_2] + [text block 2],
ユーザー: [テキストレスポンス, cache=True]
# ツール結果以外のユーザーブロックはすべてのシンキングブロックを無視するよう指定します
# このリクエストはシンキングブロックが存在しないかのように処理されますツール結果以外のユーザーブロックが含まれる場合、それは新しいアシスタントループを指定し、すべての以前のシンキングブロックはコンテキストから削除されます。
詳細については、拡張シンキングドキュメントを参照してください。
2026年2月5日より、プロンプトキャッシングは組織レベルの分離ではなくワークスペースレベルの分離を使用します。キャッシュはワークスペースごとに分離され、同じ組織内のワークスペース間でのデータ分離が確保されます。この変更はClaude APIとAzure AI Foundry(プレビュー)に適用されます。Amazon BedrockとGoogle Vertex AIは組織レベルのキャッシュ分離を維持します。複数のワークスペースを使用する場合は、この変更に対応するためにキャッシング戦略を確認してください。
組織の分離: キャッシュは組織間で分離されます。異なる組織は、同じプロンプトを使用していても、キャッシュを共有することはありません。
完全一致: キャッシュヒットには、キャッシュコントロールでマークされたブロックまでのすべてのテキストと画像を含む、100%同一のプロンプトセグメントが必要です。
出力トークン生成: プロンプトキャッシングは出力トークン生成に影響を与えません。受け取るレスポンスは、プロンプトキャッシングが使用されていない場合と同じになります。
プロンプトキャッシングのパフォーマンスを最適化するには:
シナリオに合わせてプロンプトキャッシング戦略をカスタマイズしてください:
予期しない動作が発生している場合:
cache_controlマーカーが同じ場所にあることを確認してくださいtool_choiceと画像の使用が呼び出し間で一貫していることを確認してくださいcache_creation_input_tokensとcache_read_input_tokensの両方が0になりますtool_useコンテンツブロック内のキーが安定した順序を持つことを確認してください。一部の言語(例えば、Swift、Go)はJSON変換中にキーの順序をランダム化し、キャッシュを破壊しますtool_choiceへの変更またはプロンプト内のどこかでの画像の有無/不在の変更は、キャッシュを無効化し、新しいキャッシュエントリを作成する必要があります。キャッシュ無効化の詳細については、キャッシュを無効化するものを参照してください。
5分が短すぎる場合、Anthropicは追加コストで1時間のキャッシュ期間も提供しています。
拡張キャッシュを使用するには、cache_control定義にttlを含めてください:
"cache_control": {
"type": "ephemeral",
"ttl": "1h"
}レスポンスには、以下のような詳細なキャッシュ情報が含まれます:
{
"usage": {
"input_tokens": 2048,
"cache_read_input_tokens": 1800,
"cache_creation_input_tokens": 248,
"output_tokens": 503,
"cache_creation": {
"ephemeral_5m_input_tokens": 456,
"ephemeral_1h_input_tokens": 100
}
}
}現在のcache_creation_input_tokensフィールドはcache_creationオブジェクト内の値の合計に等しいことに注意してください。
5分ごとより頻繁に使用されるプロンプト(つまり、システムプロンプト)がある場合は、5分キャッシュを引き続き使用してください。これは追加料金なしで引き続き更新されるためです。
1時間キャッシュは、以下のシナリオで最適に使用されます:
5分と1時間のキャッシュはレイテンシに関して同じように動作します。通常、長いドキュメントの初回トークンまでの時間が改善されます。
同じリクエストで1時間と5分のキャッシュコントロールの両方を使用できますが、重要な制約があります: より長いTTLを持つキャッシュエントリは、より短いTTLより前に表示される必要があります(つまり、1時間のキャッシュエントリは5分のキャッシュエントリより前に表示される必要があります)。
TTLを混合する場合、APIはプロンプト内の3つの請求位置を決定します:
A: 最高のキャッシュヒット(またはヒットがない場合は0)でのトークンカウント。B: Aの後の最高の1時間cache_controlブロックでのトークンカウント(存在しない場合はAに等しい)。C: 最後のcache_controlブロックでのトークンカウント。Bおよび/またはCがAより大きい場合、Aが最高のキャッシュヒットであるため、必ずキャッシュミスになります。
請求対象:
Aのキャッシュ読み取りトークン。(B - A)の1時間キャッシュ書き込みトークン。(C - B)の5分キャッシュ書き込みトークン。以下は3つの例です。これは3つのリクエストの入力トークンを示しており、各リクエストは異なるキャッシュヒットとキャッシュミスを持っています。各リクエストは異なる計算された価格を持ち、カラーボックスで示されています。
プロンプトキャッシングを始めるのに役立つように、プロンプトキャッシングクックブックには詳細な例とベストプラクティスが記載されています。
以下のコードスニペットは、様々なプロンプトキャッシングパターンを紹介しています。これらの例は、異なるシナリオでキャッシングを実装する方法を示し、この機能の実用的な応用を理解するのに役立ちます。
プロンプトキャッシング(自動と明示的の両方)はZDR対象です。Anthropicはプロンプトの生テキストやClaudeの応答を保存しません。
KV(キー値)キャッシュ表現とキャッシュされたコンテンツの暗号化ハッシュはメモリ内にのみ保持され、保存時には保存されません。キャッシュエントリの最小ライフタイムは5分(標準)または60分(拡張)で、その後は迅速に(ただし即座ではなく)削除されます。キャッシュエントリは組織間で分離されます。
すべての機能のZDR適格性については、API とデータ保持を参照してください。