Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
El seguimiento de MLflow es una característica eficaz que proporciona observabilidad de un extremo a otro para las aplicaciones de inteligencia artificial generativa, incluidos sistemas complejos basados en agentes. Registra entradas, salidas, pasos intermedios y metadatos para proporcionarle una imagen completa de cómo se comporta la aplicación.
El seguimiento le permite:
- Depura y comprende tu aplicación
- Supervisión del rendimiento y optimización del costo
- Evaluación y mejora de la calidad de la aplicación
- Garantizar la auditoría y el cumplimiento
- Integrar el seguimiento con muchos frameworks de terceros populares
¿Quieres empezar con el seguimiento?
Consulte las guías de inicio rápido para obtener información práctica:
Local IDE: Guía rápida para el seguimiento | Databricks Notebook: Inicio rápido de seguimiento |
---|
Así de fácil es comenzar con el trazado de MLflow en solo unas pocas líneas de código.
mlflow.openai.autolog()
realiza un seguimiento automático de todas las llamadas de OpenAI en la aplicación; no se requiere ningún otro cambio de código:
import mlflow
import openai
import os # Added for environment variable configuration
# Configure Databricks Authentication (if running outside Databricks)
# If running in a Databricks notebook, these are not needed.
# os.environ["DATABRICKS_HOST"] = "https://your-workspace.databricks.com"
# os.environ["DATABRICKS_TOKEN"] = "your-databricks-token"
# Configure OpenAI API Key (replace with your actual key)
# os.environ["OPENAI_API_KEY"] = "your-api-key-here"
# Enable automatic tracing for OpenAI - that's it!
mlflow.openai.autolog()
# Set up MLflow tracking
mlflow.set_tracking_uri("databricks")
mlflow.set_experiment("/Shared/my-genai-app")
# Your existing OpenAI code works without any changes
client = openai.OpenAI()
response = client.chat.completions.create(
model="gpt-4o-mini",
messages=[{"role": "user", "content": "Explain MLflow Tracing"}],
max_tokens=100
)
# Traces are automatically captured and logged to MLflow!
Sugerencia
Si estás ejecutando dentro de un cuaderno de Databricks, las llamadas mlflow.set_tracking_uri("databricks")
y mlflow.set_experiment()
no son necesarias, ya que MLflow se configura automáticamente.
Depura y comprende tu aplicación
El seguimiento de MLflow proporciona información detallada sobre el comportamiento de la aplicación, lo que facilita una experiencia de depuración completa en distintos entornos. Al capturar el ciclo completo de solicitud-respuesta (Input/Output Tracking) y el flujo de ejecución, puede visualizar y comprender la lógica y el proceso de toma de decisiones de la aplicación.
Examinar las entradas, salidas y metadatos de cada paso intermedio (por ejemplo, recuperación, llamadas a herramientas, interacciones de LLM) y los comentarios del usuario asociados o los resultados de evaluaciones de calidad le permite:
- En desarrollo: obtenga visibilidad detallada de lo que sucede debajo de las abstracciones de bibliotecas de GenAI, lo que le ayuda a identificar con precisión dónde se producen problemas o comportamientos inesperados.
- En Producción: supervise y depure problemas en tiempo real. Los seguimientos capturan errores y pueden incluir métricas operativas como la latencia en cada paso, lo que ayuda a realizar diagnósticos rápidos.
El seguimiento de MLflow ofrece una experiencia unificada entre el desarrollo y la producción: instrumenta la aplicación una vez y el seguimiento funciona de forma coherente en ambos entornos. Esto le permite navegar por seguimientos sin problemas dentro de su entorno preferido, ya sea el IDE, el cuaderno o el panel de supervisión de producción, lo que elimina la molestia de cambiar entre varias herramientas o buscar en registros abrumadores.
Supervisión del rendimiento y optimización de los costos
Comprender y optimizar el rendimiento y el costo de las aplicaciones de GenAI es fundamental. El seguimiento de MLflow permite capturar y supervisar métricas operativas clave, como la latencia, el costo (por ejemplo, el uso de tokens) y el uso de recursos en cada paso de la ejecución de la aplicación.
Esto le permite:
- Realice un seguimiento e identifique los cuellos de botella de rendimiento dentro de canalizaciones complejas.
- Supervise el uso de recursos para garantizar una operación eficaz.
- Optimice la eficiencia de los costos mediante la comprensión de dónde se consumen los recursos o tokens.
- Identifique las áreas para mejorar el rendimiento en el código o las interacciones del modelo.
Además, el seguimiento de MLflow es compatible con OpenTelemetry, una especificación de observabilidad estándar del sector. Esta compatibilidad le permite exportar los datos de seguimiento a varios servicios de la pila de observabilidad existente. Consulte Exportación de seguimientos a otros servicios para obtener más información.
Evaluación y mejora de la calidad de la aplicación
Evaluar y mejorar sistemáticamente la calidad de las aplicaciones genAI es un desafío fundamental. El trazado de MLflow ayuda al permitirle adjuntar y realizar un seguimiento de los comentarios de los usuarios y los resultados de las evaluaciones de calidad (desde jueces LLM o métricas personalizadas) directamente a sus trazas.
Esto permite una evaluación completa de la calidad en todo el ciclo de vida de la aplicación:
-
Durante el desarrollo: evalúe los seguimientos mediante revisores humanos o jueces de LLM para:
- Mida la precisión, la relevancia y otros aspectos de calidad.
- Realice un seguimiento de las mejoras de calidad a medida que itera en las solicitudes, modelos o estrategias de recuperación.
- Identificar patrones en problemas de calidad (por ejemplo, tipos específicos de consultas que conducen a respuestas deficientes).
- Realice mejoras controladas por datos en la aplicación.
-
En producción: supervise y evalúe la calidad en tiempo real mediante:
- Seguimiento de métricas de calidad (derivadas de los resultados de evaluación y comentarios del usuario) entre implementaciones.
- Identificación de la degradación repentina de la calidad o regresiones.
- Activar alertas para problemas críticos de calidad.
- Ayudar a mantener acuerdos de nivel de servicio (SLA) de calidad.
Los seguimientos de las ejecuciones de evaluación y la supervisión de producción se pueden explorar para identificar las causas principales de los problemas de calidad, por ejemplo, documentos recuperados insuficientemente en un sistema RAG o un rendimiento degradado de un modelo específico. Los rastros le facultan para analizar estos problemas en detalle e iterar rápidamente.
Además, los seguimientos son valiosos para crear conjuntos de datos de evaluación de alta calidad. Mediante la captura de interacciones reales del usuario y sus resultados, puede hacer lo siguiente:
- Elabora casos de prueba representativos en función de los patrones de uso reales.
- Cree conjuntos de evaluación completos que abarquen diversos escenarios.
- Use estos datos para ajustar modelos o mejorar los mecanismos de recuperación.
Cuando se combina con la evaluación de LLM de MLflow, MLflow ofrece una experiencia perfecta para evaluar y mejorar la calidad de la aplicación.
Garantizar la auditoría y el cumplimiento
El seguimiento de MLflow permite capturar todas las ejecuciones de la aplicación, creando una pista de auditoría detallada de cómo se generó cada salida. Esto es esencial para mantener la transparencia, la responsabilidad y el cumplimiento en las aplicaciones de GenAI.
Con visibilidad completa del flujo de ejecución, incluidas todas las entradas, salidas, pasos intermedios y parámetros usados, puede:
- Realice un seguimiento y compruebe los orígenes de todas las salidas.
- Proporcionar evidencia para los requisitos de cumplimiento.
- Habilite un análisis exhaustivo posterior del comportamiento de la aplicación para solicitudes específicas.
- Solucionar problemas históricos mediante el examen de rastreos anteriores.
Este registro completo garantiza que tiene los registros necesarios para las auditorías internas o las necesidades normativas externas.
Amplio soporte y extensibilidad del marco
El proceso de seguimiento en MLflow está diseñado para integrarse en su flujo de trabajo de desarrollo de GenAI existente con el mínimo esfuerzo. Se integra con más de 20 bibliotecas y frameworks populares de GenAI de forma predeterminada, incluidos OpenAI, LangChain, LlamaIndex, DSPy, Anthropic y más. Para muchos de estos, el seguimiento se puede habilitar con una sola línea de código (por ejemplo, mlflow.openai.autolog()
).
Consulte la sección Seguimiento automático y la página Integraciones para obtener la lista completa de bibliotecas admitidas y cómo usarlas.
Esta amplia compatibilidad significa que puede obtener observabilidad sin cambios significativos en el código, aprovechando las herramientas que ya usa. En el caso de componentes personalizados o bibliotecas no admitidas, MLflow también proporciona eficaces API de seguimiento manual.
Recomendaciones de control de versiones de MLflow
Aunque las características de seguimiento están disponibles en MLflow 2.15.0 y versiones posteriores, se recomienda instalar MLflow 3 (específicamente 3.1 o posterior si usa mlflow[databricks]
) para las funcionalidades de inteligencia artificial de generación más recientes.
Para entornos de producción que solo necesitan seguimiento, tenga en cuenta el mlflow-tracing
paquete. Para desarrollar y experimentar mediante Databricks, use mlflow[databricks]>=3.1
.
Pasos siguientes
Continúe su recorrido con estas acciones y tutoriales recomendados.
- Instrumentar tu aplicación: elegir entre los enfoques de trazado automático y manual
- Depura y supervisa tu aplicación: aprende a usar seguimientos para la depuración y supervisión
- Uso de seguimientos para mejorar la calidad : creación de conjuntos de datos de evaluación e identificación de oportunidades de mejora
Guías de referencia
Explore la documentación detallada de los conceptos y características mencionados en esta guía.
- Conceptos de seguimiento : descripción de los aspectos básicos del seguimiento de MLflow
- Modelo de datos de seguimiento : información sobre seguimientos, intervalos y atributos
- Seguimientos de consultas - Explorar el acceso programático a los datos de seguimiento