Volver al blog
MLflow: La Plataforma Abierta para el Ciclo de Vida del Aprendizaje Automático

MLflow: La Plataforma Abierta para el Ciclo de Vida del Aprendizaje Automático

Machine learning has a tracking problem. You run an experiment, tweak a parameter, rerun. A week later, you can’t remember what you changed, which hyperparameters mattered, or which model version produced the best result. MLflow treats every run as a first-class artifact—parameters, metrics, code versions, and output models logged and queryable.

El aprendizaje automático tiene un problema de tracking. Corres un experimento, ajustas un parámetro, vuelves a correr. Una semana después, no puedes recordar qué cambiaste, cuáles hiperparámetros importaron, o cuál versión del modelo produjo el mejor resultado. MLflow trata cada run como un artefacto de primera clase—parámetros, métricas, versiones de código y modelos de output logeados y queryables.

MLflow Tracking provides the API. Log a run with mlflow.start_run(), record parameters (log_param()), metrics (log_metric()), and artifacts (log_artifact()). Each run stores git commit hashes, conda environments, and file snapshots. The tracking server stores everything in a database and serves a UI where you can compare runs, filter by metrics, and download artifacts. What was in your head is now in the system.

MLflow Tracking provee la API. Loguea un run con mlflow.start_run(), registra parámetros (log_param()), métricas (log_metric()) y artefactos (log_artifact()). Cada run almacena git commit hashes, entornos conda y snapshots de archivos. El tracking server almacena todo en una base de datos y sirve una UI donde puedes comparar runs, filtrar por métricas y descargar artefactos. Lo que estaba en tu cabeza ahora está en el sistema.

MLflow Models provides standardized packaging. Training scripts output models in a consistent format that knows how to load itself. The flavor system means a logged model includes the code to run it: PyTorch models include the prediction function, sklearn models include the preprocessing pipeline. Export once, deploy anywhere—Spark, Kubernetes, SageMaker, Databricks, or a simple Python API.

MLflow Models provee empaquetado estandarizado. Los scripts de entrenamiento output modelos en un formato consistente que sabe cómo cargarse. El sistema de flavors significa que un modelo logueado incluye el código para correrlo: modelos PyTorch incluyen la función de predicción, modelos sklearn incluyen el pipeline de preprocesamiento. Exporta una vez, despliega en cualquier lugar—Spark, Kubernetes, SageMaker, Databricks, o una simple API de Python.

MLflow Model Registry adds lifecycle management. Register a model, assign versions, tag it as “Staging” or “Production”. The registry tracks lineage—which experiment, which data, which parameters produced this version. You can query through the API or browse in the UI. Production models aren’t mysterious; they’re just registered models with stage tags.

MLflow Model Registry añade manejo del ciclo de vida. Registra un modelo, asígnale versiones, taguéalo como “Staging” o “Production”. El registry rastrea linaje—qué experimento, qué datos, qué parámetros produjeron esta versión. Puedes query a través de la API o explorar en la UI. Los modelos en producción no son misteriosos—son simplemente modelos registrados con stage tags.

MLflow Projects codifies the experiment. A project is a directory with a conda.yaml and a MLproject file specifying entry points. Run any project locally or on a remote cluster—the environment travels with the code. Projects + Tracking + Registry = reproducibility at scale. Your experiments aren’t just recorded; they’re reproducible.

MLflow Projects codifica el experimento. Un proyecto es un directorio con un conda.yaml y un archivo MLproject especificando entry points. Corre cualquier proyecto localmente o en un cluster remoto—el entorno viaja con el código. Projects + Tracking + Registry = reproducibilidad a escala. Tus experimentos no solo están grabados; son reproducibles.

MLflow Deployments provides a unified API for serving models and querying LLMs. Whether you’re deploying a scikit-learn pipeline to Kubernetes or routing prompts to OpenAI, Anthropic, or self-hosted models, the Deployments server abstracts the provider differences behind a single endpoint. MLflow Tracing, added in MLflow 2.x, brings observability to LLM applications—capturing the full execution trace of chains, agents, and retrieval steps as nested spans. You see exactly which step failed, how many tokens each call consumed, and how latency distributes across your pipeline.

MLflow Deployments provee una API unificada para servir modelos y consultar LLMs. Ya sea que estés desplegando un pipeline de scikit-learn en Kubernetes o rutando prompts a OpenAI, Anthropic, o modelos self-hosted, el Deployments server abstrae las diferencias de proveedor detrás de un solo endpoint. MLflow Tracing, añadido en MLflow 2.x, trae observabilidad a aplicaciones LLM—capturando la traza completa de ejecución de chains, agentes y pasos de retrieval como spans anidados. Ves exactamente qué paso falló, cuántos tokens consumió cada llamada, y cómo se distribuye la latencia a través de tu pipeline.

For agentic systems, MLflow provides observability. Log prompts and responses as artifacts. Track token usage and latency as metrics. Register model versions for the agent to fetch. Tag production agents by their model versions. Tracing captures the full reasoning chain—tool calls, retrieval steps, and decision points—so when your agent hallucinates, you know which version hallucinated, what it was trained on, and where in the chain the failure occurred.

Para sistemas agénticos, MLflow provee observabilidad. Loguea prompts y respuestas como artefactos. Rastrea uso de tokens y latencia como métricas. Registra versiones de modelo para que el agente las busque. Taguéa agentes de producción por sus versiones de modelo. Tracing captura la cadena de razonamiento completa—llamadas a herramientas, pasos de retrieval y puntos de decisión—para que cuando tu agente alucine, sepas qué versión alucinó, con qué fue entrenado y dónde en la cadena ocurrió el fallo.


References

Referencias

Compartir