Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Os servidores de rastreamento MLflow armazenam e gerenciam seus dados de experimento, execuções e modelos. Configure seus servidores de rastreamento para controlar onde seus dados MLflow são armazenados e como acessar experimentos em diferentes ambientes.
Servidor de rastreamento hospedado em Databricks
Por padrão, o Databricks fornece um servidor de rastreamento MLflow gerenciado que:
- Não requer nenhuma instalação ou configuração adicional
- Armazena dados de experimentos em seu espaço de trabalho
- Integra-se perfeitamente com notebooks e clusters Databricks
Definir a experiência ativa
Por padrão, todas as execuções MLflow são registradas no servidor de rastreamento do espaço de trabalho usando o experimento ativo. Se nenhum experimento for definido explicitamente, as execuções serão registradas no experimento do bloco de anotações.
Controle onde as execuções são registradas no Databricks definindo o experimento ativo:
Mlflow.set_experiment()
Defina um experimento para todas as execuções subsequentes na execução.
import mlflow
mlflow.set_experiment("/Shared/my-experiment")
Mlflow.start_run()
Defina o experimento para uma execução específica.
with mlflow.start_run(experiment_id="12345"):
mlflow.log_param("learning_rate", 0.01)
Variáveis de ambiente
Defina um experimento para todas as execuções no ambiente.
import os
os.environ["MLFLOW_EXPERIMENT_NAME"] = "/Shared/my-experiment"
# or
os.environ["MLFLOW_EXPERIMENT_ID"] = "12345"
Configurar o rastreamento para um servidor remoto de rastreamento MLflow
Talvez seja necessário configurar uma conexão com um servidor remoto de rastreamento MLflow. Isso pode ser porque você está desenvolvendo localmente e deseja rastrear em relação ao servidor hospedado Databricks, ou você deseja rastrear para um servidor de rastreamento MLflow diferente. Por exemplo, um que está em um espaço de trabalho diferente.
Cenários comuns para rastreamento remoto:
| Scenario | Caso de uso |
|---|---|
| Acompanhamento entre espaços de trabalho | Acompanhamento centralizado de experiências em vários espaços de trabalho |
| Desenvolvimento local | Desenvolva localmente, mas acompanhe experimentos no Databricks |
| Auto-hospedado remoto | Infraestrutura MLflow personalizada com requisitos de conformidade específicos |
Configurar o URI de rastreamento e experimentar
Para registrar experimentos em um servidor de rastreamento remoto, configure o URI de rastreamento e o caminho do experimento:
import mlflow
# Set the tracking URI to the remote server
mlflow.set_tracking_uri("databricks://remote-workspace-url")
# Set the experiment path in the remote server
mlflow.set_experiment("/Shared/centralized-experiments/my-project")
# All subsequent runs will be logged to the remote server
with mlflow.start_run():
mlflow.log_param("model_type", "random_forest")
mlflow.log_metric("accuracy", 0.95)
Métodos de autenticação
As conexões do servidor de rastreamento remoto exigem autenticação adequada. Escolha entre Personal Access Tokens (PAT) ou OAuth usando entidades de serviço.
PAT
Use PATs para autenticação simples baseada em token.
Prós: Configuração simples, boa para desenvolvimento
Contras: Específico do usuário, requer gerenciamento manual de token
import os
# Set authentication token
os.environ["DATABRICKS_TOKEN"] = "your-personal-access-token"
# Configure remote tracking
mlflow.set_tracking_uri("databricks://remote-workspace-url")
mlflow.set_experiment("/Shared/remote-experiment")
OAuth (entidade de serviço)
Use o OAuth com credenciais de entidade de serviço para fluxos de trabalho automatizados.
Prós: Melhor para automação, gerenciamento centralizado de identidades
Contras: Requer configuração da entidade de serviço e configuração OAuth
Crie uma entidade de serviço. Consulte Gerenciar entidades de serviço.
import os
# Set service principal credentials
os.environ["DATABRICKS_CLIENT_ID"] = "your-service-principal-client-id"
os.environ["DATABRICKS_CLIENT_SECRET"] = "your-service-principal-secret"
# Configure remote tracking
mlflow.set_tracking_uri("databricks://remote-workspace-url")
mlflow.set_experiment("/Shared/remote-experiment")