共用方式為


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

適用於:所有 APIM 層

使用 llm-semantic-cache-lookup 原則,根據提示對先前要求和指定相似度分數閾值的向量鄰近性,執行對大型語言模型 (LLM) API 要求的回應快取查閱。 回應快取可降低加諸於後端 LLM API 的頻寬和處理需求,並縮短 API 取用者所感受的延遲時間。

注意

注意

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

支援的模型

將原則與新增至 Azure APIM 的 LLM API 搭配使用,這些 API 可透過 Azure AI 模型推斷 API 取得。

原則陳述式

<llm-semantic-cache-lookup
    score-threshold="similarity score threshold"
    embeddings-backend-id ="backend entity ID for embeddings API"
    embeddings-backend-auth ="system-assigned"             
    ignore-system-messages="true | false"      
    max-message-count="count" >
    <vary-by>"expression to partition caching"</vary-by>
</llm-semantic-cache-lookup>

屬性

屬性 描述 是必要欄位 預設
score-threshold 用來判斷是否要傳回快取回應給提示的相似度分數閾值。 值是介於 0.0 和 1.0 之間的小數。 深入了解 Yes N/A
embeddings-backend-id OpenAI 內嵌 API 呼叫的後端識別碼。 Yes N/A
embeddings-backend-auth 用於 Azure OpenAI 內嵌 API 後端的驗證。 是。 必須設定為 system-assigned N/A
ignore-system-messages 布林值。 如果設定為 true,在評估快取相似度之前,先從 GPT 聊天完成提示中移除系統訊息。 No false
max-message-count 如果指定,則會略過剩餘對話方塊訊息數目的快取。 No N/A

元素

名稱 描述 必要
vary-by 在執行階段判斷其值分割快取的自訂運算式。 如果新增多個 vary-by 元素,則會串連值以建立唯一的組合。 No

使用方式

使用注意事項

  • 此原則只能在原則區段中使用一次。

範例

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

<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>
    </inbound>
    <outbound>
        <llm-semantic-cache-store duration="60" />
        <base />
    </outbound>
</policies>

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