Amazon Bedrock

Información general

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:
  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 ejecutas la observabilidad de LLM en un entorno serverless (AWS Lambda):
  1. Instala las capas de Lambda Datadog-Python y Datadog-Extension como parte de tu configuración de AWS Lambda.
  2. 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:

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 Amazon Bedrock.

Instalación para Node.js

Si no dispones del Datadog Agent:
  1. Instala el paquete dd-trace:

      npm install dd-trace
    
  2. Inicia tu aplicación con el siguiente comando, habilitando el modo sin agente:

      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> node -r 'dd-trace/init' <your_app>.js
    
Si ya tienes instalado el Datadog Agent:
  1. Asegúrate de que el Agent se está ejecutando y que APM está activado. Por ejemplo, utiliza 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
    
  2. Instala la biblioteca Node.js de Datadog APM.

    npm install dd-trace
    
  3. Inicia tu aplicación utilizando el comando -r dd-trace/init o NODE_OPTIONS='--require dd-trace/init' para habilitar automáticamente el rastreo:

    DD_SITE=<YOUR_DATADOG_SITE> DD_API_KEY=<YOUR_API_KEY> DD_LLMOBS_ENABLED=1 DD_LLMOBS_ML_APP=<YOUR_ML_APP_NAME> node -r 'dd-trace/init' <your_app>.js
    

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):
  1. 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>
    
  2. Antes de que termine la función Lambda, llama a llmobs.flush():

    const llmobs = require('dd-trace').llmobs;
    // or, if dd-trace was not initialized via NODE_OPTIONS
    const llmobs = require('dd-trace').init({
      llmobs: {
        mlApp: <YOUR_ML_APP>,
      }
    }).llmobs; // with DD_API_KEY and DD_SITE being set at the environment level
    
    async function handler (event, context) {
      ...
      llmobs.flush()
      return ...
    }
    

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

  1. 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).
  2. Instala la integración de Datadog con Amazon Bedrock.

Datos recopilados

Métricas

Eventos

La integración de Amazon Bedrock no incluye eventos.

Checks de servicio

La integración de Amazon Bedrock no incluye checks de servicio.

Resolución de problemas

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

Referencias adicionales

Más enlaces, artículos y documentación útiles: