Teilen über


Cacheantworten für API-Anforderungen für große Sprachmodelle (LLM)

GILT FÜR: Alle API Management-Ebenen

Die llm-semantic-cache-store Richtlinie speichert Antworten auf Api-Anforderungen zum Chatabschluss an einen konfigurierten externen Cache. Das Zwischenspeichern von Antworten senkt die Bandbreitennutzung und die Prozessoranforderungen auf der Back-End-API von Azure OpenAI und verringert die Wartezeit für API-Consumer.

Hinweis

Hinweis

Legen Sie die Elemente und untergeordneten Elemente einer Richtlinie in der Reihenfolge fest, die in der Richtlinienanweisung angegeben ist. Erfahren Sie mehr darüber, wie Sie API Management-Richtlinien festlegen oder bearbeiten.

Unterstützte Modelle

Verwenden Sie die Richtlinie mit LLM-APIs, die azure API Management hinzugefügt wurden, die über die Azure AI Model Inference-API oder mit OpenAI-kompatiblen Modellen verfügbar sind, die von Drittanbietern bereitgestellt werden.

Richtlinienanweisung

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

Attribute

Attribut BESCHREIBUNG Erforderlich Standard
Dauer Lebensdauer der zwischengespeicherten Einträge, angegeben in Sekunden. Richtlinienausdrücke sind zulässig. Ja

Verwendung

Hinweise zur Verwendung

  • Diese Richtlinie kann nur einmal in einem Richtlinienabschnitt verwendet werden.
  • Wenn das Cache-Lookup fehlschlägt, löst der API-Aufruf, der den cachebezogenen Vorgang verwendet, keinen Fehler aus, und der Cachevorgang wird erfolgreich abgeschlossen.
  • Es wird empfohlen, eine Richtlinie für Die Rate-Limit -Richtlinie (oder eine Richtlinie mit einem Satzgrenzwert nach Schlüsseln ) unmittelbar nach jeder Cachesuche zu konfigurieren. Dadurch wird verhindert, dass Ihr Back-End-Dienst überlastet wird, wenn der Cache nicht verfügbar ist.

Beispiele

Beispiel mit entsprechender Richtlinie „llm-semantic-cache-lookup“

Das folgende Beispiel zeigt, wie Sie die llm-semantic-cache-lookup Richtlinie zusammen mit der llm-semantic-cache-store Richtlinie verwenden, um semantisch ähnliche zwischengespeicherte Antworten mit einem Schwellenwert für die Ähnlichkeitsbewertung von 0,05 abzurufen. Zwischengespeicherte Werte werden durch die Abonnement-ID des Aufrufers partitioniert.

Hinweis

Fügen Sie nach der Cache-Suche eine Rate-Limit-Policy (oder Rate-Limit-by-Key-Policy ) hinzu, um die Anzahl der Anrufe zu begrenzen und Überlastung des Backend-Services zu vermeiden, falls der Cache nicht verfügbar ist.

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

Weitere Informationen zum Arbeiten mit Richtlinien finden Sie hier: