Skip to content
Latchkey

O Que É MLflow? A Plataforma Open-Source de Ciclo de Vida de ML Explicada

MLflow é uma plataforma open-source que gerencia o ciclo de vida de machine learning: experiment tracking, runs reproduzíveis, empacotamento de modelos e um model registry.

MLflow é uma das ferramentas de MLOps mais adotadas. Ele é modular: você pode usar apenas seu experiment tracking, ou também seu empacotamento de modelos e registry. Por ser agnóstico de framework e open source, ele se encaixa em quase qualquer stack de ML e integra de forma limpa com CI/CD.

O que é MLflow

MLflow é uma plataforma open-source para gerenciar o ciclo de vida de ML. Seus principais componentes são o Tracking (registrar parâmetros, métricas e artifacts por run), o Models (um formato de empacotamento padrão), o Model Registry (versionamento e stages) e o Projects (definições de run reproduzíveis).

MLflow Tracking

O componente Tracking registra cada run com seus parâmetros, métricas e artifacts, visualizáveis em uma UI para comparação. Algumas chamadas de logging no seu código de treino transformam um run ad hoc em um experimento armazenado e comparável.

Models e registry

O MLflow Models empacota um modelo treinado em um formato padrão que pode ser servido em muitos ambientes. O Model Registry então versiona esses modelos, rastreia stages como Staging e Production, e fornece o ponto de handoff entre treino e deploy.

MLflow no CI/CD

Um job de treino no CI registra o run, e uma avaliação bem-sucedida registra o modelo, para que a melhor versão esteja sempre disponível para o pipeline de deploy.

Logging and registering with MLflow in CI
import mlflow
with mlflow.start_run():
    mlflow.log_metric("auc", auc)
    mlflow.sklearn.log_model(model, "model",
        registered_model_name="fraud-model")

Nota Latchkey

MLflow roda em Python e faz upload de artifacts de modelo para um servidor de tracking ou object store. No Latchkey, cachear o ambiente Python e os dados de treino acelera cada run, e o auto-retry cobre uma falha transitória ao registrar artifacts no backend do MLflow.

Principais conclusões

  • MLflow é uma plataforma open-source para rastrear, empacotar, registrar e reproduzir trabalho de ML.
  • Seus componentes - Tracking, Models, Registry, Projects - podem ser usados juntos ou de forma independente.
  • No CI, o MLflow registra cada run de treino e registra o modelo vencedor para o pipeline de deploy.

Guias relacionados