Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
SE APLICA A: todos los niveles de API Management
Use la directiva llm-semantic-cache-lookup
para realizar la búsqueda en caché de respuestas al modelo de lenguaje grande (LLM) y las solicitudes de API de una caché externa configurada en función de la proximidad vectorial de la solicitud a las solicitudes anteriores y un umbral de puntuación de similitud especificado. El almacenamiento en caché de respuesta reduce el ancho de banda y los requisitos de procesamiento impuestos sobre la API de LLM de back-end y disminuye la latencia percibida por los consumidores de API.
Nota:
- Esta directiva debe tener una directiva de Respuestas de caché a las solicitudes de API de modelo de lenguaje grande correspondiente.
- Para conocer los requisitos previos y los pasos para habilitar el almacenamiento en caché semántico, consulte Habilitación del almacenamiento en caché semántico para las API de Azure OpenAI en Azure API Management.
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-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>
Atributos
Atributo | Descripción | Necesario | Valor predeterminado |
---|---|---|---|
umbral de puntuación | Umbral de puntuación de similitud usado para determinar si se devuelve una respuesta almacenada en caché a un mensaje. El valor es decimal entre 0,0 y 1,0. Los valores más pequeños representan una mayor similitud semántica. Más información. | Sí | N/D |
embeddings-backend-id | Id. de back-end para la llamada API de inserción de OpenAI. | Sí | N/D |
embeddings-backend-auth | Autenticación usada para el back-end de la API de incrustaciones de Azure OpenAI. | Sí. Se debe establecer en system-assigned . |
N/D |
ignore-system-messages | booleano. Cuando se establece en true (recomendado), quita los mensajes del sistema de un mensaje de finalización de chat gpT antes de evaluar la similitud de la memoria caché. |
No | falso |
max-message-count | Si se especifica, número de mensajes de diálogo restantes después del cual se omite el almacenamiento en caché. | No | N/D |
Elementos
Nombre | Descripción | Necesario |
---|---|---|
variación por | Expresión personalizada determinada en tiempo de ejecución cuyas particiones de valor almacenan en caché. Si se agregan varios elementos vary-by , los valores se concatenan para crear una combinación única. |
No |
Uso
- Secciones de la directiva: inbound (entrada)
- Ámbitos de la directiva: global, producto, API y operación
- Puertas de enlace: clásica, v2, consumo
Notas de uso
- Esta directiva solo se puede usar una vez en una sección de directiva.
- Ajuste el valor de en función de la aplicación para asegurarse de
score-threshold
que se usa la confidencialidad correcta al determinar qué consultas almacenar en caché. Comience con un valor bajo como 0,05 y ajuste para optimizar la proporción de aciertos de caché a errores. - El modelo de incrustaciones debe tener suficiente capacidad y un tamaño de contexto suficiente para dar cabida al volumen del mensaje y las solicitudes.
- El umbral de puntuación por encima de 0,2 puede provocar que la caché no coincida. Considere la posibilidad de usar un valor inferior para casos de uso confidenciales.
- Controle el acceso entre usuarios para almacenar en caché las entradas especificando
vary-by
con identificadores de usuario o grupo de usuarios específicos. - Considere la posibilidad de agregar una directiva de seguridad de llm-content-safety con escudo de avisos para protegerse frente a ataques rápidos.
Ejemplos
Ejemplo con la directiva llm-semantic-cache-store correspondiente
<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>
Directivas relacionadas
Contenido relacionado
Para más información sobre el trabajo con directivas, vea:
- Tutorial: Transformación y protección de una API
- Referencia de directivas para una lista completa de instrucciones de directivas y su configuración
- Expresiones de directiva
- Establecimiento o edición de directivas
- Reutilización de configuraciones de directivas
- Repositorio de fragmentos de código de directiva
- Repositorio de área de juegos de directivas
- Kit de herramientas de directivas de Azure API Management
- Obtener ayuda de Copilot para crear, explicar y solucionar problemas de directivas