共用方式為


提示快取

提示快取可讓您減少在提示開始時具有相同內容的較長提示的整體要求延遲和成本。 在此內容中,「提示」 是指您在聊天完成要求中傳送至模型的輸入。 服務無法一次又一次地重新處理相同的輸入令牌,而是能夠保留已處理輸入令牌計算的暫存快取,以改善整體效能。 提示快取不會影響模型響應中傳回的輸出內容,而無法降低延遲和成本。 針對支援的模型,快取的令牌會以標準部署類型的輸入令牌定價折扣計費,以及布建部署類型的輸入令牌最高 100% 折扣。

快取通常會在閑置 5-10 分鐘內清除,且一律會在快取上次使用後的一小時內移除。 Azure 訂用帳戶之間不會共用提示快取。

支援的模型

目前只有下列模型支援使用 Azure OpenAI 進行提示快取:

  • o1-2024-12-17
  • o1-preview-2024-09-12
  • o1-mini-2024-09-12
  • gpt-4o-2024-11-20
  • gpt-4o-2024-08-06
  • gpt-4o-mini-2024-07-18
  • gpt-4o-realtime-preview (2024-12-17 版)

注意

現在也會提供提示快取,作為和 gpt-4o-mini模型微調gpt-4o的一部分。 如需詳細資訊,請參閱定價頁面微調區段。

API 支援

API 版本中 2024-10-01-preview首次新增了提示快取的官方支援。 目前,只有 o1 模型系列支援 cached_tokens API 回應參數。

開始使用

若要讓要求利用提示快取,要求必須是兩者:

  • 長度至少為1,024個令牌。
  • 提示中的前 1,024 個令牌必須相同。

當在提示中的令牌計算與提示快取的目前內容之間找到相符專案時,即稱為快取叫用。 快取點擊會在聊天完成響應中顯示為 cached_tokens 下方 prompt_tokens_details

{
  "created": 1729227448,
  "model": "o1-preview-2024-09-12",
  "object": "chat.completion",
  "service_tier": null,
  "system_fingerprint": "fp_50cdd5dc04",
  "usage": {
    "completion_tokens": 1518,
    "prompt_tokens": 1566,
    "total_tokens": 3084,
    "completion_tokens_details": {
      "audio_tokens": null,
      "reasoning_tokens": 576
    },
    "prompt_tokens_details": {
      "audio_tokens": null,
      "cached_tokens": 1408
    }
  }
}

在前 1,024 個令牌快取叫用之後,每 128 個額外的相同令牌就會發生一次。

前 1,024 個令牌中的單一字元差異會導致快取遺漏,其特性 cached_tokens 為 0。 默認會啟用提示快取,而不支援的模型不需要額外的設定。

什麼是快取?

o1 系列模型只是文字,且不支援系統訊息、影像、工具使用/函式呼叫或結構化輸出。 這會將這些模型的提示快取效力限制為訊息陣列的使用者/助理部分,這些陣列不太可能具有相同的1024令牌前置詞。

支援提示快取:

支援快取 說明 支援的模型
訊息 完整的訊息陣列:系統、使用者和助理內容 gpt-4o
gpt-4o-mini
gpt-4o-realtime-preview (2024-12-17 版)
影像 使用者訊息中包含的影像,無論是連結或base64編碼的數據。 詳細數據參數必須在要求之間設定相同。 gpt-4o
gpt-4o-mini
工具使用 訊息陣列和工具定義。 gpt-4o
gpt-4o-mini
gpt-4o-realtime-preview (2024-12-17 版)
結構化輸出 結構化輸出架構會附加為系統訊息的前置詞。 gpt-4o
gpt-4o-mini

若要改善發生快取叫用的可能性,您應該建構要求,讓重複的內容發生在訊息陣列的開頭。

我可以停用提示快取嗎?

預設會為所有支援的模型啟用提示快取。 沒有提示快取的退出支援。