メインコンテンツへスキップ

概要

プロバイダープロンプトキャッシュの仕組み

プロバイダープロンプトキャッシュは、プロンプトのプレフィックス(接頭辞)の処理済み表現をプロバイダーのサーバーに保存します。同じプレフィックスを持つリクエストを送信すると、プロバイダーはそれらのトークンの再処理をスキップできます。

主な特徴

  • プレフィックスベース: プロンプトの先頭部分のみがキャッシュ可能
  • 完全一致: 同一のトークンが必要(セマンティック類似性ではない)
  • 時間制限あり: キャッシュエントリには有効期限がある(通常5〜60分)
  • 自動: 特別な設定は不要
Request 1: [System prompt + Context A + Question 1]
           ^^^^^^^^^^^^^^^^^^^^^^^^
           このプレフィックスがキャッシュされる

Request 2: [System prompt + Context A + Question 2]
           ^^^^^^^^^^^^^^^^^^^^^^^^
           キャッシュヒット! Question 2 のみが処理される

サポートされているプロバイダー

プロバイダーキャッシュ読み取り割引キャッシュ書き込みコスト最小トークン数
Anthropic90%オフ25%プレミアム1024
OpenAI50%オフ入力と同じ1024
DeepSeek90%オフ入力と同じ64
Google75%オフ25%のプレミアム32768
割引は自動的に適用されます。AI Sonarはプロバイダーのキャッシュ価格設定をそのままお客様に適用します。

キャッシュ使用状況の確認

使用状況ログでの確認

使用状況ログには、詳細なキャッシュトークンの内訳が表示されます:
フィールド説明
cacheReadTokensプロバイダーキャッシュから提供されたトークン(割引適用)
cacheWriteTokensキャッシュに書き込まれたトークン(将来のリクエスト用)
nonCachedPromptTokensキャッシュなしで処理されたトークン

トランザクションでの確認

アップストリームキャッシュが使用された場合、トランザクションに プロバイダー Cache ラベルが表示されます:
  • プロバイダー Cache(ティール):アップストリームプロンプトキャッシュヒット - 割引レート

コスト計算例

Claude (Anthropic) への10,000入力トークンのリクエストの場合: キャッシュなし:
10,000 tokens × $3.00/1M = $0.030
プロバイダーキャッシュあり(8,000キャッシュ済み + 2,000新規):
キャッシュ読み取り: 8,000 tokens × $0.30/1M = $0.0024  (90%オフ)
キャッシュ書き込み: 2,000 tokens × $3.75/1M = $0.0075
合計: $0.0099 (67%の節約)

ベストプラクティス

システムプロンプトと静的なコンテキストをメッセージの先頭に配置してください。これにより、キャッシュヒットの可能性が最大化されます。
キャッシュが期限切れになる前に、同じプレフィックスを持つリクエストを短期間に集中して送信し、キャッシュの恩恵を受けられるようにします。
キャッシュ可能なプレフィックスがプロバイダーの最小要件(例:Anthropic/OpenAIの場合は1024トークン)を満たしていることを確認してください。
ダッシュボードの使用統計を確認して、キャッシュヒット率と節約額を把握してください。

キャッシュステータスの確認

レスポンスヘッダー

X-Upstream-Cache-Read: 8000   # プロバイダーキャッシュ読み取りトークン
X-Upstream-Cache-Write: 2000  # プロバイダーキャッシュ書き込みトークン

APIの使い方

使用状況ログをクエリして、キャッシュの内訳を確認します:
GET /v1/usage/logs is currently not a public endpoint.
Use X-Upstream-Cache-* response headers, plus the dashboard usage page.
レスポンスには以下が含まれます:
{
  "promptTokens": 10000,
  "cacheReadTokens": 8000,
  "cacheWriteTokens": 2000,
  "nonCachedPromptTokens": 0,
  "completionTokens": 500,
  "cost": 0.0099
}

FAQ

プロバイダーキャッシュは自動的に行われ、無効にすることはできません。ただし、これはコスト削減というメリットしかないため、無効にする理由はありません。
一般的な理由:
  • プレフィックスが変更された(1トークンの違いでも不可)
  • キャッシュが期限切れになった(通常5〜60分)
  • プレフィックスが短すぎる(最小トークン数未満)
  • 別のAPIキーが使用された
はい!独自のAPIキー(BYOK)を使用する場合でも、プロバイダーキャッシュは同様に機能します。キャッシュはアップストリームのAPIキーに関連付けられます。
  1. 静的なコンテンツを最初に配置するようにプロンプトを構成する
  2. リクエスト間でシステムプロンプトの一貫性を保つ
  3. 関連するリクエストを短時間で連続して送信する