跳到主要内容

将您的开发环境连接到 MLflow

MLflow 助手

需要有关设置 MLflow 的帮助? 尝试 MLflow 助手 - 一个强大的 AI 助手,可以帮助您为您的项目设置 MLflow。

本指南向您展示如何将开发环境连接到 MLflow 实验。您可以在本地计算机上运行 MLflow,自托管开源 MLflow 服务,或使用托管服务,例如 Databricks 托管 MLflow。

先决条件

  • Python 环境:安装了 pip 的 Python 3.9+

设置说明

步骤 1:安装 MLflow

bash
pip install --upgrade "mlflow>=3.1"

步骤 2:配置跟踪

MLflow 支持不同的后端来跟踪您的实验数据。选择以下选项之一开始。有关详细的设置和配置,请参阅自托管指南

选项 A:数据库(推荐)

将跟踪 URI 设置为本地数据库 URI(例如 sqlite:///mlflow.db)。这是快速入门和本地开发的推荐选项。

python
import mlflow

mlflow.set_tracking_uri("sqlite:///mlflow.db")
mlflow.set_experiment("my-first-experiment")

选项 B:文件系统

如果未指定跟踪 URI,MLflow 将自动使用本地文件存储

python
import mlflow

# Creates local mlruns directory for experiments
mlflow.set_experiment("my-first-experiment")
即将弃用

文件系统后端处于“保持灯亮”(KTLO)模式,将不会接收 MLflow 中的大部分新功能。我们建议改用数据库后端。数据库后端也很快会成为默认选项。

选项 C:远程跟踪服务器

按照自托管指南启动远程 MLflow 跟踪服务器。然后配置您的客户端以使用远程服务器

python
import mlflow

# Connect to remote MLflow server
mlflow.set_tracking_uri("https://:5000")
mlflow.set_experiment("my-first-experiment")

或者,您可以使用环境变量配置跟踪 URI 和实验

bash
export MLFLOW_TRACKING_URI="https://:5000"
export MLFLOW_EXPERIMENT_NAME="my-first-experiment"

步骤 3:验证您的连接

创建一个测试文件并运行此代码

python
import mlflow

# Print connection information
print(f"MLflow Tracking URI: {mlflow.get_tracking_uri()}")
print(f"Active Experiment: {mlflow.get_experiment_by_name('my-first-experiment')}")

# Test logging
with mlflow.start_run():
mlflow.log_param("test_param", "test_value")
print("✓ Successfully connected to MLflow!")

步骤 4:访问 MLflow UI

如果您使用本地跟踪(选项 A 或 B),请运行以下命令并通过 https://:5000 访问 MLflow UI。

bash
# For Option A
mlflow server --backend-store-uri sqlite:///mlflow.db --port 5000
# For Option B
mlflow server --port 5000

如果您正在运行远程跟踪服务器(选项 C),请访问相同 URI 处的 MLflow UI。

访问被拒绝?

当使用远程跟踪服务器时,您在浏览器中访问 MLflow UI 时可能会遇到访问被拒绝的错误。

无效的主机头 - 检测到可能的 DNS 重新绑定攻击

此错误的常见原因是跟踪服务器不允许来自您来源的请求,以防止点击劫持攻击。在这种情况下,您需要在跟踪服务器配置中设置 CORS 源的允许列表。有关更多详细信息,请参阅网络安全指南