Compartilhar via


MLflow e Azure Machine Learning

APLICA-SE A:Extensão de ML da CLI do Azure v2 (atual)SDK do Python azure-ai-ml v2 (atual)

Este artigo descreve os recursos do MLflow, uma estrutura de software livre que gerencia o ciclo de vida completo do machine learning. O MLflow usa um conjunto consistente de ferramentas para treinar e servir modelos em diferentes plataformas. Use o MLflow se os experimentos são executados localmente, em um destino de computação remota, em uma máquina virtual ou em uma instância de computação do Azure Machine Learning.

Os workspaces do Azure Machine Learning são compatíveis com MLflow, portanto, você usa um workspace do Azure Machine Learning da mesma maneira que usa um servidor MLflow. Essa compatibilidade oferece estas vantagens:

  • O Azure Machine Learning não hospeda instâncias do servidor MLflow, mas usa as APIs do MLflow diretamente.
  • Use um workspace do Azure Machine Learning como servidor de acompanhamento para qualquer código MLflow, seja ele executado ou não no Azure Machine Learning. Basta configurar o MLflow para apontar para o workspace em que o acompanhamento acontece.
  • Execute qualquer rotina de treinamento que use o MLflow no Azure Machine Learning sem fazer alterações.

Dica

Ao contrário do SDK do Azure Machine Learning v1, o SDK do Azure Machine Learning v2 não inclui a funcionalidade de log. Use o registro em log do MLflow para manter suas rotinas de treinamento independentes de nuvem, portáteis e independentes de Azure Machine Learning.

O que está acompanhando

Quando você trabalha com tarefas, o Azure Machine Learning acompanha automaticamente informações sobre experimentos, como código, ambiente e dados de entrada e saída. Mas modelos, parâmetros e métricas são específicos para cada cenário, portanto, os construtores de modelos precisam configurar seu acompanhamento.

Os metadados de acompanhamento salvos variam de acordo com o experimento e podem incluir:

  • Code
  • Detalhes do ambiente, como a versão do sistema operacional e pacotes do Python
  • Dados de entrada
  • Configurações de parâmetro
  • Modelos
  • Métricas da avaliação
  • Visualizações de avaliação como matrizes de confusão e gráficos de importância
  • Resultados da avaliação, incluindo algumas previsões de avaliação

Benefícios de acompanhar experimentos

Se você treinar modelos com trabalhos no Azure Machine Learning ou interativamente em notebooks, o acompanhamento de experimentos ajuda você a:

  • Organize todos os experimentos de machine learning em um só lugar. Em seguida, pesquise e filtre experimentos e faça drill down para ver detalhes sobre experimentos anteriores.
  • Comparar experimentos, analisar resultados e ajustar o treinamento do modelo.
  • Reproduza ou execute novamente experimentos para validar os resultados.
  • Colabore com mais facilidade, pois você vê o que outros colegas estão fazendo, compartilha resultados de experimentos e acessa os dados do experimento programaticamente.

Acompanhamento com o MLflow

Os workspaces do Azure Machine Learning são compatíveis com MLflow. Essa compatibilidade significa que você usa o MLflow para acompanhar execuções, métricas, parâmetros e artefatos em workspaces sem alterar suas rotinas de treinamento ou adicionar qualquer sintaxe específica à nuvem. Para saber como usar o MLflow para acompanhar experimentos e execuções em workspaces do Azure Machine Learning, consulte Acompanhar experimentos e modelos com o MLflow.

O Azure Machine Learning usa o acompanhamento do MLflow para registrar métricas e armazenar artefatos para seus experimentos. Quando você estiver conectado ao Azure Machine Learning, todo o acompanhamento do MLflow aparece no workspace que você usa.

Para saber como habilitar o registro em log para monitorar métricas de execução em tempo real com o MLflow, consulte métricas de log, parâmetros e arquivos com MLflow. Você também consulta e compara experimentos e execuções com o MLflow.

O MLflow no Azure Machine Learning fornece uma maneira de centralizar o acompanhamento. Conecte o MLflow aos workspaces do Azure Machine Learning mesmo quando você trabalha localmente ou em uma nuvem diferente. O workspace do Azure Machine Learning fornece um local centralizado, seguro e escalonável para armazenar métricas de treinamento e modelos.

O MLflow no Azure Machine Learning permite que você:

Acompanhamento com o MLflow no R

O suporte ao MLflow no R tem estas limitações:

  • O acompanhamento do MLflow é limitado ao acompanhamento de métricas, parâmetros e modelos de experimentos em trabalhos do Azure Machine Learning.
  • Não há suporte para treinamento interativo no RStudio, Posit ( anteriormente RStudio Workbench) ou notebooks Jupyter com kernels R.
  • Não há suporte para o gerenciamento e registro de modelos. Use a CLI do Azure Machine Learning ou o Estúdio do Azure Machine Learning para o registro e gerenciamento de modelos.

Para exemplos de uso do cliente de acompanhamento do MLflow com modelos R no Azure Machine Learning, confira Treinar modelos R usando a CLI do Azure Machine Learning (v2).

Acompanhamento com o MLflow no Java

O suporte ao MLflow no Java tem estas limitações:

  • O acompanhamento do MLflow é limitado ao acompanhamento de métricas e parâmetros de experimentos em trabalhos do Azure Machine Learning.
  • Artefatos e modelos não podem ser acompanhados. Em vez disso, use o método mlflow.save_model com a pasta outputs em trabalhos para salvar os modelos ou artefatos que você deseja capturar.

Para um exemplo em Java que usa o cliente de acompanhamento do MLflow com o servidor de acompanhamento do Azure Machine Learning, confira azuremlflow-java.

Notebooks de exemplo para acompanhamento do MLflow

Registro de modelos com o MLflow

O Azure Machine Learning dá suporte ao MLflow para gerenciamento de modelos. Se você estiver familiarizado com o cliente MLflow, poderá usá-lo para gerenciar todo o ciclo de vida do modelo. Para saber mais sobre como gerenciar modelos com a API do MLflow no Azure Machine Learning, consulte Gerenciar registros de modelo no Azure Machine Learning com o MLflow.

Notebook de exemplo para registro de modelos no MLflow

O gerenciamento de modelos com o MLflow mostra como gerenciar modelos em registros.

Implantação de modelo com o MLflow

Implante modelos do MLflow no Azure Machine Learning para obter uma experiência aprimorada. O Azure Machine Learning dá suporte à implantação de modelos MLflow em pontos de extremidade em tempo real e em lote sem especificar um ambiente ou um script de pontuação.

O SDK do MLflow, a CLI do Azure Machine Learning, o SDK do Azure Machine Learning para Python e o Estúdio do Azure Machine Learning dão suporte a implantação de modelos do MLflow. Para obter mais informações sobre como implantar modelos do MLflow no Azure Machine Learning para inferência em tempo real e em lotes, consulte Diretrizes para implantar modelos do MLflow.

Notebooks de exemplo para implantação de modelos do MLflow

Treinamento com Projetos do MLflow (versão prévia)

Aviso

O suporte para arquivos MLproject (Projetos do MLflow) no Azure Machine Learning será totalmente desativado em setembro de 2026. O MLflow ainda tem suporte total e ainda é a maneira recomendada de acompanhar cargas de trabalho de aprendizado de máquina no Azure Machine Learning.

Conforme você continua usando o MLflow, recomendamos que você faça a transição de arquivos MLproject para Trabalhos do Azure Machine Learning, usando a CLI do Azure ou o SDK do Azure Machine Learning para Python (v2). Para obter mais informações sobre trabalhos do Azure Machine Learning, consulte Acompanhar experimentos e modelos de ML com o MLflow.

Importante

Esse recurso está atualmente em visualização pública. Essa versão prévia é fornecida sem um contrato de nível de serviço e não é recomendada para cargas de trabalho de produção. Alguns recursos podem não ter suporte ou podem ter restrição de recursos.

Para obter mais informações, consulte Termos de Uso Complementares de Versões Prévias do Microsoft Azure.

Envie trabalhos de treinamento para o Azure Machine Learning usando projetos do MLflow. Envie trabalhos localmente com o acompanhamento do Azure Machine Learning ou migre seus trabalhos para a nuvem usando a computação do Azure Machine Learning.

Saiba como enviar trabalhos de treinamento que usam projetos do MLflow para workspaces do Azure Machine Learning para acompanhamento em Treinar com projetos do MLflow no Azure Machine Learning (versão prévia).

Notebooks de exemplo para projetos do MLflow

Funcionalidades das ferramentas cliente do MLflow vs Azure Machine Learning

A tabela a seguir mostra as operações de ciclo de vida do machine learning que você pode fazer com o SDK do MLflow e as ferramentas de cliente do Azure Machine Learning.

Recurso MLflow SDK CLI/SDK v2 do Azure Machine Learning Estúdio do Azure Machine Learning
Acompanhar e registrar métricas, parâmetros e modelos
Recuperar métricas, parâmetros e modelos Você pode baixar apenas artefatos e modelos.
Enviar trabalhos de treinamento Você pode usar projetos do MLflow (versão prévia).
Enviar trabalhos de treinamento com ativos de dados do Azure Machine Learning
Enviar trabalhos de treinamento usando pipelines de machine learning
Gerenciar experimentos e execuções
Gerenciar modelos do MLflow Não há suporte para algumas operações. 1
Gerenciar modelos não MLflow
Implantar modelos do MLflow no Azure Machine Learning (online e em lote) Você não pode implantar modelos MLflow para inferência em lote no momento. 2
Implantar modelos não MLflow no Azure Machine Learning

1 Para mais informações, confira Gerenciar registros de modelos no Azure Machine Learning com o MLflow.

2 Para uma alternativa, confira Implantar e executar modelos do MLflow em trabalhos do Spark.