Delen via


Antwoorden in de cache ophalen van API-aanvragen voor grote taalmodellen

VAN TOEPASSING OP: Alle API Management-lagen

Gebruik het llm-semantic-cache-lookup beleid om cachezoekacties uit te voeren van reacties op LLM-API-aanvragen (Large Language Model) van een geconfigureerde externe cache, op basis van vectornaleving van de prompt naar eerdere aanvragen en een opgegeven drempelwaarde voor overeenkomstenscore. Reactiecaching vermindert de bandbreedte en verwerkingsvereisten die zijn opgelegd aan de BACK-end LLM-API en verlaagt de latentie die wordt waargenomen door API-gebruikers.

Notitie

Notitie

Stel de elementen en onderliggende elementen van het beleid in de volgorde in die in de beleidsverklaring is opgegeven. Meer informatie over het instellen of bewerken van API Management-beleid.

Ondersteunde modellen

Gebruik het beleid met LLM-API's die zijn toegevoegd aan Azure API Management die beschikbaar zijn via de Azure AI-modeldeductie-API of met openAI-compatibele modellen die worden geleverd via externe deductieproviders.

Beleidsinstructie

<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>

Kenmerken

Kenmerk Beschrijving Vereist Standaardinstelling
score-threshold Drempelwaarde voor overeenkomstenscore die wordt gebruikt om te bepalen of een reactie in de cache moet worden geretourneerd naar een prompt. De waarde is een decimaal getal tussen 0,0 en 1,0. Kleinere waarden vertegenwoordigen een grotere semantische gelijkenis. Meer informatie. Ja N.v.t.
embeddings-backend-id Back-end-id voor openAI-insluitingen API-aanroep. Ja N.v.t.
embeddings-backend-auth Verificatie die wordt gebruikt voor de back-end van azure OpenAI-insluitingen van de API. Ja. Moet worden ingesteld op system-assigned. N.v.t.
ignore-system-messages Booleaans. Als deze optie is ingesteld op true (aanbevolen), verwijdert u systeemberichten uit een gpT-chatvoltooiingsprompt voordat u de overeenkomsten in de cache beoordeelt. Nee onwaar
max-message-count Indien opgegeven, het aantal resterende dialoogvensterberichten waarna caching wordt overgeslagen. Nee N.v.t.

Elementen

Naam Beschrijving Vereist
variëren per Een aangepaste expressie die tijdens runtime wordt bepaald waarvan de waardepartities in de cache worden opgeslagen. Als er meerdere vary-by elementen worden toegevoegd, worden waarden samengevoegd om een unieke combinatie te maken. Nee

Gebruik

Gebruiksnotities

  • Dit beleid kan slechts eenmaal worden gebruikt in een beleidssectie.
  • Verfijn de waarde van op basis van score-threshold uw toepassing om ervoor te zorgen dat de juiste gevoeligheid wordt gebruikt bij het bepalen welke query's in de cache moeten worden opgeslagen. Begin met een lage waarde, zoals 0,05, en pas deze aan om de verhouding tussen cachetreffers te optimaliseren.
  • Het insluitingsmodel moet voldoende capaciteit en voldoende contextgrootte hebben om het promptvolume en de prompts te kunnen verwerken.
  • Scoredrempel boven 0,2 kan ertoe leiden dat de cache niet overeenkomt. Overweeg om lagere waarde te gebruiken voor gevoelige gebruiksvoorbeelden.
  • Beheer de toegang van meerdere gebruikers tot cachevermeldingen door op te vary-bygeven met specifieke gebruikers- of gebruikersgroep-id's.
  • Overweeg om beleid voor llm-content-safety toe te voegen met promptschild om te beschermen tegen promptaanvallen.

Voorbeelden

Voorbeeld met overeenkomend beleid voor 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>

Zie voor meer informatie over het werken met beleid: