Compartir vía


Respuestas en caché a solicitudes de API de modelos de lenguaje grande

SE APLICA A: todos los niveles de API Management

La llm-semantic-cache-store directiva almacena en caché las respuestas a las solicitudes de API de finalización de chat en una caché externa configurada. El almacenamiento en caché de respuesta reduce el ancho de banda y los requisitos de procesamiento impuestos sobre la API de Azure OpenAI de back-end y disminuye la latencia percibida por los consumidores de API.

Nota:

Nota:

Establezca los elementos de la directiva y los elementos secundarios en el orden proporcionado en la instrucción de directiva. Obtenga más información sobre el establecimiento o modificación de directivas de API Management.

Modelos admitidos

Use la directiva con las API de LLM agregadas a Azure API Management que están disponibles a través de la API de inferencia de modelos de Azure AI o con modelos compatibles con OpenAI que se proporcionan a través de proveedores de inferencia de terceros.

Instrucción de la directiva

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

Atributos

Atributo Descripción Necesario Valor predeterminado
duración Período de vida de las entradas almacenadas en caché, especificado en segundos. Se permiten expresiones de directiva. N/D

Uso

Notas de uso

  • Esta directiva solo se puede usar una vez en una sección de directiva.
  • Si se produce un error en la búsqueda de caché, la llamada API que usa la operación relacionada con la caché no genera un error y la operación de caché se completa correctamente.
  • Se recomienda configurar una directiva de límite de velocidad (o directiva de límite de velocidad por clave ) inmediatamente después de cualquier búsqueda de caché. Esto ayuda a evitar que el servicio back-end se sobrecargue si la memoria caché no está disponible.

Ejemplos

Ejemplo con la directiva llm-semantic-cache-lookup correspondiente

En el ejemplo siguiente se muestra cómo usar la llm-semantic-cache-lookup directiva junto con la llm-semantic-cache-store directiva para recuperar respuestas en caché semánticamente similares con un umbral de puntuación de similitud de 0,05. Los valores almacenados en caché se particionan mediante el identificador de suscripción del autor de la llamada.

Nota:

Añade una política de límite de velocidad (o política de límite por clave ) tras la búsqueda de caché para ayudar a limitar el número de llamadas y evitar sobrecarga en el servicio de backend en caso de que la caché no esté disponible.

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

Para más información sobre el trabajo con directivas, vea: