Emisión de métricas para el consumo de tokens de Azure OpenAI
SE APLICA A: todos los niveles de API Management
La directiva azure-openai-emit-token-metric
envía métricas personalizadas a Application Insights sobre el consumo de tokens de modelo de lenguaje grande mediante las API de Azure OpenAI Service. Las métricas de recuento de tokens incluyen: Tokens totales, Tokens de solicitud y Tokens de finalización.
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.
Límites de métricas personalizadas
Azure Monitor impone límites de uso para métricas personalizadas que pueden afectar la capacidad de emitir métricas de API Management. Por ejemplo, Azure Monitor establece actualmente un límite de 10 claves de dimensión por métrica y un límite de 50 000 series temporales activas totales por región en una suscripción (dentro de un período de 12 horas).
Estos límites tienen las siguientes implicaciones para configurar métricas personalizadas en una directiva de API Management como emit-metric
o azure-openai-emit-token-metric
:
Puede configurar un máximo de 10 dimensiones personalizadas por directiva .
El número de series temporales activas generadas por la directiva en un período de 12 horas es el producto del número de valores únicos de cada dimensión configurada durante el período. Por ejemplo, si se configuraron tres dimensiones personalizadas en la directiva y cada dimensión tenía 10 valores posibles en el período, la directiva contribuiría a 1000 (10 x 10 x 10) series temporales activas.
Si configura la directiva en varias instancias de API Management que se encuentran en la misma región de una suscripción, todas las instancias pueden contribuir al límite regional de series temporales activas.
Obtenga más información sobre las limitaciones y consideraciones de diseño para las métricas personalizadas en Azure Monitor.
Requisitos previos
- Se deben agregar una o varias API de Azure OpenAI Service a la instancia de API Management. Para más información, consulte Incorporación de una API de Azure OpenAI Service a Azure API Management.
- La instancia de API Management debe integrarse con Application Insights. Para más información, consulte Integración de Azure API Management con Azure Application Insights.
- Habilite el registro de Application Insights para las API de Azure OpenAI.
- Habilite métricas personalizadas con dimensiones en Application Insights. Para obtener más información, consulte Emisión de métricas personalizadas.
Instrucción de la directiva
<azure-openai-emit-token-metric
namespace="metric namespace" >
<dimension name="dimension name" value="dimension value" />
...additional dimensions...
</azure-openai-emit-token-metric>
Atributos
Atributo | Descripción | Obligatorio | Valor predeterminado |
---|---|---|---|
espacio de nombres | Una cadena. Espacio de nombres de la métrica. No se permiten expresiones de directiva. | No | API Management |
Elementos
Elemento | Descripción | Obligatorio |
---|---|---|
dimensión | Agregue uno o varios de estos elementos para cada dimensión incluida en la métrica. | Sí |
Atributos de dimensión
Atributo | Descripción | Obligatorio | Valor predeterminado |
---|---|---|---|
name | Una cadena o expresión de directiva. Nombre de la dimensión. | Sí | N/D |
value | Una cadena o expresión de directiva. Valor de la dimensión. Solo se puede omitir si name coincide con una de las dimensiones predeterminadas. Si es así, el valor se proporciona según el nombre de la dimensión. |
No | N/D |
Nombres de las dimensiones predeterminadas que se pueden usar sin valor
- Id. de API
- Id. de operación
- Product ID
- Identificador de usuario
- Id. de suscripción
- Location
- Id. de puerta de enlace
Uso
- Secciones de la directiva: inbound (entrada)
- Ámbitos de la directiva: global, área de trabajo, producto, API, operación
- Puertas de enlace: clásica, v2, consumo, autohospedada y área de trabajo
Notas de uso
- Esta directiva se puede usar varias veces por definición de directiva.
- Puede configurar como máximo 10 dimensiones personalizadas para esta directiva.
- Esta directiva se puede configurar opcionalmente al agregar una API desde el Azure OpenAI Service mediante el portal.
- Si están disponibles, los valores de la sección de uso de la respuesta de la API de Azure OpenAI Service se utilizan para determinar las métricas del token.
- Algunos puntos de conexión de Azure OpenAI admiten el streaming de respuestas. Cuando
stream
se establecetrue
en la solicitud de API para habilitar el streaming, se tienen también en cuenta las métricas del token.
Ejemplo
En el ejemplo siguiente se envían métricas de recuento de tokens de Azure OpenAI a Application Insights junto con el id. de API como una dimensión personalizada.
<policies>
<inbound>
<azure-openai-emit-token-metric
namespace="AzureOpenAI">
<dimension name="API ID" />
</azure-openai-emit-token-metric>
</inbound>
<outbound>
</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
- Creación de directivas mediante Microsoft Copilot en Azure