共用方式為


快取大型語言模型 API 要求的回應

適用於:所有 APIM 層

原則會 llm-semantic-cache-store 快取對已設定外部快取的聊天完成 API 要求回應。 回應快取可降低加諸於後端 Azure OpenAI API 的頻寬和處理需求,並縮短 API 取用者所感受的延遲時間。

注意

注意

請依照原則陳述式中提供的順序,來設定原則的元素和子元素。 深入了解如何設定或編輯 APIM 原則

支援的模型

將原則與新增至 Azure API 管理的 LLM API 搭配使用,這些 API 可透過 Azure AI 模型推斷 API 或透過第三方推斷提供者提供服務的 OpenAI 相容模型。

原則陳述式

<llm-semantic-cache-store duration="seconds"/>

屬性

屬性 描述 是必要欄位 預設
持續時間 快取項目的存留時間,以秒為單位進行指定。 允許使用原則運算式。 是的 N/A

使用方式

使用注意事項

  • 此原則只能在原則區段中使用一次。
  • 如果快取查閱失敗,使用快取相關作業的 API 呼叫不會引發錯誤,而且快取作業會順利完成。
  • 建議您在任何快取查閱之後立即設定 速率限制 原則 (或依 金鑰的速率限制 原則)。 這有助於防止您的後端服務在快取無法使用時過載。

範例

對應 llm-semantic-cache-lookup 原則的範例

下列範例顯示如何搭配 llm-semantic-cache-lookup 使用原則, llm-semantic-cache-store 以擷取語意上相似的快取回應,相似性分數臨界值為 0.05。 快取的值會依呼叫端的訂閱識別碼進行分割。

注意

在快取查詢後加入 速率限制 政策(或 按金鑰限制速率限制 政策),以幫助限制呼叫次數,並防止快取無法使用時後端服務過載。

<policies>
    <inbound>
        <base />
        <llm-semantic-cache-lookup
            score-threshold="0.05"
            embeddings-backend-id ="llm-backend"
            embeddings-backend-auth ="system-assigned" >
            <vary-by>@(context.Subscription.Id)</vary-by>
        </llm-semantic-cache-lookup>
        <rate-limit calls="10" renewal-period="60" />
    </inbound>
    <outbound>
        <llm-semantic-cache-store duration="60" />
        <base />
    </outbound>
</policies>

如需使用原則的詳細資訊,請參閱: