Observabilidad
Descubra cómo la observabilidad mejora los sistemas AI/ML como Ultralytics YOLO. Obtenga información, optimice el rendimiento y garantice la fiabilidad en aplicaciones del mundo real.
La observabilidad permite a los equipos de ingeniería depurar y comprender activamente los estados internos de sistemas complejos basándose en sus salidas externas.
en sus resultados externos. En los campos en rápida evolución de la
Inteligencia Artificial (IA) y
aprendizaje automático (ML), este concepto es fundamental
para ir más allá de los despliegues de "caja negra". Mientras que las pruebas de software tradicionales pueden verificar la lógica, los modelos de ML
operan de forma probabilística, por lo que es esencial disponer de sistemas que permitan a los desarrolladores investigar las causas raíz de
de predicciones inesperadas, degradación del rendimiento o fallos tras la
el despliegue del modelo.
Observabilidad vs. Monitorización
Aunque a menudo se utilizan indistintamente, estos términos representan enfoques distintos de la fiabilidad del sistema.
-
La supervisión se centra en las "incógnitas conocidas". Implica el seguimiento de cuadros de mando predefinidos
y alertas para métricas como
latencia de inferencia o tasas de error. La supervisión
responde a la pregunta: "¿Está sano el sistema?".
-
La observabilidad aborda las "incógnitas desconocidas". Proporciona los datos granulares necesarios
para formular nuevas preguntas imprevistas sobre por qué se ha producido un fallo concreto. Como se describe en el
Google SRE Book, un sistema observable
permite comprender comportamientos novedosos sin necesidad de introducir código nuevo. Responde a la pregunta: "¿Por qué
sistema se comporta así".
Los tres pilares de la observabilidad
Para obtener información detallada, la observabilidad se basa en tres tipos principales de datos telemétricos:
-
Registros: Son registros inmutables con fecha y hora de eventos discretos. En una
visión por ordenador (CV), un registro puede
capturar las dimensiones de la imagen de entrada o
configuración de hiperparámetros.
El registro estructurado, a menudo en formato JSON, facilita la consulta por parte de herramientas de análisis de datos como Split.
herramientas de análisis de datos como Splunk.
-
Métricas: Datos numéricos agregados medidos a lo largo del tiempo, como
precisión, consumo de memoria o
GPU GPU. Sistemas como
Prometheus se utilizan ampliamente para almacenar estos datos de series temporales, lo que permite a los equipos
visualizar tendencias.
-
Rastreo: El rastreo sigue el ciclo de vida de una solicitud a medida que se propaga a través de varios microservicios.
Para las aplicaciones de IA distribuidas, las herramientas que cumplen con OpenTelemetry pueden mapear
la ruta de una solicitud, destacando los cuellos de botella en el
motor de inferencia o retrasos en la red.
Por qué la observabilidad es importante en la IA
El despliegue de modelos en el mundo real plantea retos que no existen en los entornos de formación controlados.
La observabilidad es esencial para:
-
Detección de la desviación de los datos: Con el tiempo, los datos reales pueden divergir de los
datos de entrenamiento, un fenómeno conocido como
deriva de datos. Las herramientas de observabilidad
de entrada para alertar a los ingenieros cuando es necesario un reentrenamiento.
-
Garantizar la seguridad de la IA: En los ámbitos en los que hay mucho en juego, comprender las decisiones de los modelos es vital para la seguridad de la IA.
seguridad de la IA. La información detallada ayuda a auditar las decisiones
garantizar que se ajustan a los protocolos de
seguridad y la equidad en la IA.
-
Optimización del rendimiento: Mediante el análisis de trazas detalladas,
los equipos de MLOps pueden identificar
cálculos redundantes o limitaciones de recursos, optimizando el coste y la velocidad.
-
Depuración de "cajas negras": Los modelos de aprendizaje profundo suelen ser opacos. Las plataformas de observabilidad
como Honeycomb permiten a los ingenieros rebanar y cortar datos de alta dimensionalidad para
determinar por qué un modelo ha fallado en un caso concreto.
Aplicaciones en el mundo real
La observabilidad desempeña un papel fundamental para garantizar la fiabilidad de las soluciones modernas de IA en todos los sectores.
-
Vehículos autónomos: En el desarrollo de
vehículos autónomos, la observabilidad permite
reconstruir el estado exacto del sistema durante una desconexión. Al correlacionar
con los registros de los sensores y los comandos
y los comandos de control, los equipos pueden determinar si un error de frenado se debe al ruido de los sensores o a un fallo de predicción del modelo.
-
Diagnóstico sanitario: En
la IA en la atención sanitaria, es
de confianza. La observabilidad garantiza que los modelos de imágenes médicas funcionen de forma coherente en diferentes máquinas de hospitales.
hospitales. Si el rendimiento de un modelo disminuye, las trazas pueden revelar si el problema se debe a un cambio en la resolución de la imagen o a un retraso en el proceso de preprocesamiento de datos, lo que permite una rápida solución sin comprometer la atención al paciente.
un retraso en el proceso de preprocesamiento de datos, lo que permite una solución rápida sin comprometer la atención al paciente.
Implantación de la observabilidad con Ultralytics
La observabilidad eficaz comienza con un registro y un seguimiento adecuados de los experimentos. Los modelos de Ultralytics se integran perfectamente
con herramientas como MLflow,
Weights & Biasesy
TensorBoard para registrar métricas, parámetros y
y artefactos automáticamente.
El siguiente ejemplo muestra cómo entrenar un
YOLO11 organizando los registros en una estructura de proyecto
que es la base de la observabilidad basada en archivos:
from ultralytics import YOLO
# Load the YOLO11 model
model = YOLO("yolo11n.pt")
# Train the model, saving logs and results to a specific project directory
# This creates structured artifacts useful for post-training analysis
model.train(data="coco8.yaml", epochs=3, project="observability_logs", name="experiment_1")
Para entornos de producción, los equipos suelen agregar estos registros en plataformas centralizadas como
Datadog, New Relic o
Elastic Stack para mantener una visión unificada de toda su infraestructura de IA.
AI. También se puede lograr una visualización avanzada utilizando cuadros de mando de código abierto como
Grafana.