Obtención de respuestas almacenadas en caché de solicitudes de API de Azure OpenAI
SE APLICA A: todos los niveles de API Management
Use la directiva azure-openai-semantic-cache-lookup
para realizar la búsqueda en caché de respuestas a la API de finalización de chat de Azure OpenAI y las solicitudes de API de finalización 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 Azure OpenAI 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 Azure OpenAI 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.
- Esta directiva está actualmente en versión preliminar.
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 de Azure OpenAI Service
La directiva se usa con las API agregadas a API Management desde el Azure OpenAI Service de los siguientes tipos:
Tipo de API | Modelos admitidos |
---|---|
Finalización del chat | gpt-3.5 gpt-4 |
Completion | gpt-3.5-turbo-instruct |
Inserciones | text-embedding-3-large text-embedding-3-small text-embedding-ada-002 |
Para obtener más información, consulte Modelos de servicio de OpenAI de Azure.
Instrucción de la directiva
<azure-openai-semantic-cache-lookup
score-threshold="similarity score threshold"
embeddings-backend-id ="backend entity ID for embeddings API"
ignore-system-messages="true | false"
max-message-count="count" >
<vary-by>"expression to partition caching"</vary-by>
</azure-openai-semantic-cache-lookup>
Atributos
Atributo | Descripción | Necesario | Valor predeterminado |
---|---|---|---|
score-threshold | 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. 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 |
ignore-system-messages | booleano. Si se establece en true , quita los mensajes del sistema de un mensaje de finalización del chat GPT antes de evaluar la similitud de caché. |
No | false |
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 | Obligatorio |
---|---|---|
vary-by | 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.
Ejemplos
Ejemplo con la directiva azure-openai-semantic-cache-store correspondiente
<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>
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
- Kit de herramientas de directivas de Azure API Management
- Creación de directivas mediante Microsoft Copilot en Azure