Monitoriza, soluciona problemas y evalúa tus aplicaciones impulsadas por LLM, como chatbots o herramientas de extracción de datos,
con Amazon Bedrock.
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).
Amazon Bedrock es un servicio totalmente gestionado que pone a disposición modelos fundacionales (FMs) de Amazon y de empresas emergentes
de IA líderes a través de una API, de modo que puedas elegir entre varios FMs para encontrar el modelo que mejor
se adapte a tu caso de uso.
Habilita esta integración para ver todas tus métricas de Bedrock en Datadog.
Configuración
Observabilidad de LLM: obtén visibilidad integral de tu aplicación de LLM con Amazon Bedrock
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 tienes el Datadog Agent:
- Instala el paquete
ddtrace
:
- 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:
- 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
- Si aún no lo has hecho, instala el paquete
ddtrace
.
- 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 ejecutas la observabilidad de LLM en un entorno serverless (AWS Lambda):
- Instala las capas de Lambda Datadog-Python y Datadog-Extension como parte de tu configuración de AWS Lambda.
- 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 Lambda termina de ejecutarse.
Rastreo automático de Amazon Bedrock
La integración de Amazon Bedrock se habilita de manera automática cuando se configura la observabilidad de LLM. Esto captura latencia, errores, mensajes de entrada y salida, así como el uso de tokens para llamadas de Amazon Bedrock.
Se rastrean los siguientes métodos tanto para operaciones sincrónicas como transmitidas de Amazon Bedrock:
InvokeModel()
InvokeModelWithResponseStream()
No se requiere configuración adicional para estos métodos.
Validación
Valida que la observabilidad de LLM 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
:
Busca el siguiente mensaje para confirmar la configuración:
Depuración
Si tienes problemas durante la configuración, habilita el registro de depuración al pasar la marca --debug
:
Aquí se muestran todos los errores relacionados con la instrumentación o transmisión de datos, incluidos los problemas con las trazas de Amazon Bedrock.
APM: obtén métricas de uso para aplicaciones de Python
Si aún no lo has hecho, configura la integración Amazon Web Services.
Recopilación de métricas
- En la página de la integración de AWS, asegúrate de que
Bedrock
se encuentre habilitado en la pestaña Metric Collection
(Recopilación de métricas). - Instala la integración de Datadog con Amazon Bedrock.
Datos recopilados
Métricas
aws.bedrock.content_filtered_count (count) | The total number of times the text output content was filtered. Shown as time |
aws.bedrock.input_token_count (gauge) | The average number of input tokens used in prompts invoked for a model. Shown as token |
aws.bedrock.input_token_count.maximum (gauge) | The maximum number of input tokens used in prompts invoked for a model. Shown as token |
aws.bedrock.input_token_count.minimum (gauge) | The minimum number of input tokens used in prompts invoked for a model. Shown as token |
aws.bedrock.input_token_count.sum (count) | The total number of input tokens used in prompts invoked for a model. Shown as token |
aws.bedrock.invocation_client_errors (count) | The number of client invocation errors. Shown as error |
aws.bedrock.invocation_latency (gauge) | Average latency of the invocations in milliseconds. Shown as millisecond |
aws.bedrock.invocation_latency.maximum (gauge) | The maximum invocation latency over a 1 minute period. Shown as millisecond |
aws.bedrock.invocation_latency.minimum (gauge) | The minimum invocation latency over a 1 minute period. Shown as millisecond |
aws.bedrock.invocation_latency.p90 (gauge) | The 90th percentile of invocation latency over a 1 minute period. Shown as millisecond |
aws.bedrock.invocation_latency.p95 (gauge) | The 95th percentile of invocation latency over a 1 minute period. Shown as millisecond |
aws.bedrock.invocation_latency.p99 (gauge) | The 99th percentile of invocation latency over a 1 minute period. Shown as millisecond |
aws.bedrock.invocation_server_errors (count) | The number of server invocation errors. Shown as error |
aws.bedrock.invocation_throttles (count) | The number of invocation throttles. Shown as throttle |
aws.bedrock.invocations (count) | The number of invocations sent to a model endpoint. Shown as invocation |
aws.bedrock.output_image_count (gauge) | The average number of output images returned by model invocations over a 1 minute period. Shown as item |
aws.bedrock.output_token_count (gauge) | The average number of output tokens returned by model invocations over a 1 minute period. Shown as token |
aws.bedrock.output_token_count.maximum (gauge) | The maximum number of output tokens returned by model invocations over a 1 minute period. Shown as token |
aws.bedrock.output_token_count.minimum (gauge) | The minimum number of output tokens returned by model invocations over a 1 minute period. Shown as token |
aws.bedrock.output_token_count.sum (count) | The total number of output tokens returned by all model invocations. Shown as token |
Eventos
La integración de Amazon Bedrock no incluye eventos.
Checks de servicio
La integración de Amazon Bedrock no incluye checks de servicio.
Solucionar problemas
¿Necesitas ayuda? Ponte en contacto con el servicio de asistencia de Datadog.
Referencias adicionales
Más enlaces, artículos y documentación útiles: