Hämta cachelagrade svar på Azure OpenAI API-begäranden

GÄLLER FÖR: Alla API Management-nivåer

Använd principen för att utföra cacheuppslagning av svar på API:et azure-openai-semantic-cache-lookup för slutförande av Azure OpenAI Chat och API för slutförande från en konfigurerad extern cache, baserat på vektornärheten mellan uppmaningen och tidigare begäranden och ett angivet tröskelvärde för likhetspoäng. Cachelagring av svar minskar bandbredds- och bearbetningskrav som ställs på serverdelens Azure OpenAI API och minskar svarstiden som uppfattas av API-konsumenter.

Kommentar

Kommentar

Ange principens element och underordnade element i den ordning som anges i principbeskrivningen. Läs mer om hur du anger eller redigerar API Management-principer.

Azure OpenAI-tjänstmodeller som stöds

Principen används med API:er som lagts till i API Management från Azure OpenAI-tjänsten av följande typer:

API-typ Modeller som stöds
Chatten har slutförts gpt-3.5

gpt-4
Fullbordande gpt-3.5-turbo-instruct
Inbäddningar text-embedding-3-large

text-embedding-3-small

text-embedding-ada-002

Mer information finns i Azure OpenAI Service-modeller.

Principuttryck

<azure-openai-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>
</azure-openai-semantic-cache-lookup>

Attribut

Attribut beskrivning Obligatoriskt Standardvärde
score-threshold Tröskelvärde för likhetspoäng som används för att avgöra om ett cachelagrat svar ska returneras till en fråga. Värdet är en decimal mellan 0,0 och 1,0. Läs mer. Ja Ej tillämpligt
embeddings-backend-id Serverdels-ID för OpenAI-inbäddnings-API-anrop. Ja Ej tillämpligt
embeddings-backend-auth Autentisering som används för Azure OpenAI-inbäddnings-API-serverdelen. Ja. Måste anges till system-assigned. Ej tillämpligt
ignore-system-messages Boolesk. Om värdet är inställt på truetar du bort systemmeddelanden från en GPT-chattavslutsprompt innan cachelikheten utvärderas. Nej falskt
max-message-count Om det anges hoppas antalet återstående dialogmeddelanden efter vilka cachelagring hoppas över. Nej Ej tillämpligt

Element

Name beskrivning Obligatoriskt
vary-by Ett anpassat uttryck som bestäms vid körning vars värde partitioner cachelagring. Om flera vary-by element läggs till sammanfogas värden för att skapa en unik kombination. Nej

Användning

Användningsanteckningar

  • Den här principen kan bara användas en gång i ett principavsnitt.

Exempel

Exempel med motsvarande princip för azure-openai-semantic-cache-store

<policies>
    <inbound>
        <base />
        <azure-openai-semantic-cache-lookup
            score-threshold="0.05"
            embeddings-backend-id ="azure-openai-backend"
            embeddings-backend-auth ="system-assigned" >
            <vary-by>@(context.Subscription.Id)</vary-by>
        </azure-openai-semantic-cache-lookup>
    </inbound>
    <outbound>
        <azure-openai-semantic-cache-store duration="60" />
        <base />
    </outbound>
</policies>

Mer information om hur du arbetar med principer finns i: