Azure OpenAI

Información general

Monitoriza, soluciona problemas y evalúa tus aplicaciones impulsadas por LLM, como chatbots o herramientas de extracción de datos, mediante Azure OpenAI.

Si creas aplicaciones de LLM, usa la observabilidad de LLM para investigar la causa raíz de los problemas, monitorizar el rendimiento operativo y evaluar la calidad, la privacidad y la seguridad de tus aplicaciones de LLM.

Ve el vídeo sobre la vista de rastreo de observabilidad de LLM para obtener un ejemplo acerca de cómo puedes investigar una traza (trace).

Azure OpenAI permite el desarrollo de copilotos y aplicaciones de IA generativa utilizando la biblioteca de modelos de OpenAI. Utiliza la integración de Datadog para realizar un seguimiento del rendimiento y el uso de la API y los despliegues de Azure OpenAI.

Configuración

LLM Observability: visibilidad de extremo a extremo en tu aplicación de LLM mediante Azure OpenAI.

Puedes habilitar la observabilidad de LLM en diferentes entornos. Sigue la configuración adecuada en función de tu caso:

Instalación para Python

Si no dispones del Datadog Agent:
  1. Instala el paquete ddtrace:
  pip install ddtrace
  1. Inicia tu aplicación con el siguiente comando y habilita el modo sin Agent:
  DD_SITE=<YOUR_DATADOG_SITE> DD_API_KEY=<YOUR_API_KEY> DD_LLMOBS_ENABLED=1 DD_LLMOBS_AGENTLESS_ENABLED=1 DD_LLMOBS_ML_APP=<YOUR_ML_APP_NAME> ddtrace-run python <YOUR_APP>.py
Si ya tienes instalado el Datadog Agent:
  1. Asegúrate de que el Agent se encuentre en ejecución y de que se haya habilitado APM y StatsD. Por ejemplo, usa el siguiente comando con Docker:
docker run -d \
  --cgroupns host \
  --pid host \
  -v /var/run/docker.sock:/var/run/docker.sock:ro \
  -v /proc/:/host/proc/:ro \
  -v /sys/fs/cgroup/:/host/sys/fs/cgroup:ro \
  -e DD_API_KEY=<DATADOG_API_KEY> \
  -p 127.0.0.1:8126:8126/tcp \
  -p 127.0.0.1:8125:8125/udp \
  -e DD_DOGSTATSD_NON_LOCAL_TRAFFIC=true \
  -e DD_APM_ENABLED=true \
  gcr.io/datadoghq/agent:latest
  1. Si aún no lo has hecho, instala el paquete ddtrace:
  pip install ddtrace
  1. Inicia tu aplicación con el comando ddtrace-run para habilitar el rastreo de manera automática:
   DD_SITE=<YOUR_DATADOG_SITE> DD_API_KEY=<YOUR_API_KEY> DD_LLMOBS_ENABLED=1 DD_LLMOBS_ML_APP=<YOUR_ML_APP_NAME> ddtrace-run python <YOUR_APP>.py

Nota: Si el Agent se ejecuta en un host o puerto personalizado, configura DD_AGENT_HOST y DD_TRACE_AGENT_PORT según corresponda.

Si estás ejecutando LLM Observability en un entorno serverless (funciones de Azure):

Habilita la observabilidad de LLM al configurar las siguientes variables de entorno:

DD_SITE=<YOUR_DATADOG_SITE> DD_API_KEY=<YOUR_API_KEY> DD_LLMOBS_ENABLED=1 DD_LLMOBS_ML_APP=<YOUR_ML_APP_NAME>

Nota: En entornos serverless, Datadog vacía de manera automática los tramos (spans) cuando la función de Azure termina de ejecutarse.

Rastreo automático de Azure OpenAI

La integración de Azure OpenAI se activa automáticamente cuando se configura LLM Observability. Esto captura la latencia, los errores, los mensajes de entrada y salida, así como el uso de tokens para las llamadas de Azure OpenAI.

Los siguientes métodos son rastreados tanto para operaciones síncronas como asíncronas de Azure OpenAI:

  • AzureOpenAI().completions.create()
  • AsyncAzureOpenAI().completions.create()
  • AzureOpenAI().chat.completions.create()
  • AsyncAzureOpenAI().chat.completions.create()

Estos métodos no requieren ninguna configuración adicional.

Validación

Valida que LLM Observability capture tramos de manera adecuada al comprobar los logs de tu aplicación a fin de verificar si se crean de forma correcta. También puedes ejecutar el siguiente comando para comprobar el estado de la integración ddtrace:

ddtrace-run --info

Busca el siguiente mensaje para confirmar la configuración:

Agent error: None
Depuración

Si tienes problemas durante la configuración, habilita el registro de depuración al pasar la marca --debug:

ddtrace-run --debug

Aquí se muestran todos los errores relacionados con la instrumentación o transmisión de datos, incluidos los problemas con las trazas de Azure OpenAI.

Monitorización de infraestructura: métricas y visibilidad sobre tus recursos de Azure OpenAI

Si aún no lo has hecho, configura primero la integración de Microsoft Azure. No hay otros pasos de instalación.

Datos recopilados

Métricas

azure.cognitiveservices_accounts.active_tokens
(gauge)
Total tokens minus cached tokens over a period of time. Applies to PTU and PTU-managed deployments. Use this metric to understand your TPS or TPM-based utilization for PTUs and compare to your benchmarks for target TPS or TPM for your scenarios.
azure.cognitiveservices_accounts.azure_open_ai_requests
(count)
Number of calls made to the Azure OpenAI API over a period of time. Applies to PTU, PTU-Managed, and Pay-as-you-go deployments.
azure.cognitiveservices_accounts.blocked_volume
(count)
Number of calls made to the Azure OpenAI API and rejected by a content filter applied over a period of time. You can add a filter or apply splitting by the following dimensions: ModelDeploymentName, ModelName, and TextType.
azure.cognitiveservices_accounts.generated_completion_tokens
(count)
Number of Generated Completion Tokens from an OpenAI model.
azure.cognitiveservices_accounts.processed_fine_tuned_training_hours
(count)
Number of training hours processed on an OpenAI fine-tuned model.
azure.cognitiveservices_accounts.harmful_volume_detected
(count)
Number of calls made to Azure OpenAI API and detected as harmful (both block model and annotate mode) by content filter applied over a period of time.
azure.cognitiveservices_accounts.processed_prompt_tokens
(count)
Number of prompt tokens processed on an OpenAI model.
azure.cognitiveservices_accounts.processed_inference_tokens
(count)
Number of inference tokens processed on an OpenAI model.
azure.cognitiveservices_accounts.prompt_token_cache_match_rate
(gauge)
Percentage of the prompt tokens that hit the cache.
Shown as percent
azure.cognitiveservices_accounts.provisioned_managed_utilization
(gauge)
Utilization % for a provisoned-managed deployment, calculated as (PTUs consumed / PTUs deployed) x 100. When utilization is greater than or equal to 100%, calls are throttled and error code 429 is returned.
Shown as percent
azure.cognitiveservices_accounts.provisioned_managed_utilization_v2
(gauge)
Utilization % for a provisoned-managed deployment, calculated as (PTUs consumed / PTUs deployed) x 100. When utilization is greater than or equal to 100%, calls are throttled and error code 429 is returned.
Shown as percent
azure.cognitiveservices_accounts.time_to_response
(gauge)
Recommended latency (responsiveness) measure for streaming requests. Applies to PTU and PTU-managed deployments. Calculated as time taken for the first response to appear after a user sends a prompt, as measured by the API gateway.
Shown as millisecond
azure.cognitiveservices_accounts.total_volume_sent_for_safety_check
(count)
Number of calls made to the Azure OpenAI API and detected by a content filter applied over a period of time.

Checks de servicio

La integración de Azure OpenAI no incluye ningún check de servicio.

Eventos

La integración de Azure OpenAI no incluye ningún evento.

Solucionar problemas

¿Necesitas ayuda? Ponte en contacto con el servicio de asistencia de Datadog.