跳到主要内容

试用托管式MLflow

Databricks 免费试用 提供了一个无需事先拥有云提供商访问权限即可体验 Databricks 平台的机会。在试用期内,大多数 Databricks 功能(包括完整的 MLflow 功能)都可用,让您能够使用试用积分探索该平台。您只需使用电子邮件创建账户,除非您决定升级到付费计划并注册您的付款信息,否则不会收费。

开始您的试用

要开始 Databricks 免费试用,请访问 Databricks 试用注册页面 并按照其中概述的说明进行操作。设置大约需要 5 分钟,之后您将可以访问一个近乎完全功能的 Databricks Workspace,用于记录您的教程实验、跟踪、模型和工件。

提示

您已经拥有 Databricks 试用账户了吗?如果您想登录并返回 MLflow UI,请 单击此处

入门

首次登录时,您将被引导至 MLflow Tracing 教程,让您有机会尝试 MLflow 最强大的 GenAI 功能之一。

只需点击其中一个教程,您就可以在几分钟内测试 MLflow 的仪器化功能。

MLflow Tracing Tutorial

在 Databricks MLflow UI 中学习 Tracing

否则,当您再次访问 Databricks Workspace 并登录后,您将看到一个如下所示的着陆页

Databricks Trial Landing Page

Databricks 着陆页

要访问 MLflow UI,您可以通过单击左侧的“Experiments”(实验)链接(由实验室烧杯图标表示)进行导航。当您首次在 Databricks 上进入 MLflow UI 时,您会看到这个

Databricks Trial MLflow UI

Databricks MLflow UI

关于在哪里运行 Notebook 的决定

使用 Databricks 托管的 MLflow 实例,您有两个选项可以运行教程 Notebook:直接将 Notebook 导入 Databricks Workspace,或者在本地运行 Notebook 并将 Databricks Workspace 用作远程跟踪服务器。

直接将 Notebook 导入 Databricks Workspace

一旦您进入 Databricks Workspace 的主页面,您就可以导入本教程中的任何 Notebook。首先,点击教程页面上的“Download this Notebook”按钮下载教程 Notebook。然后导航到左侧的“Workspace”(工作区)选项卡,点击该链接打开工作区页面。在那里,导航到 Home,然后右键单击即可弹出“Import”(导入)选项。下图显示了如果您要直接从 MLflow 文档网站导入 Notebook 时导入对话框应有的样子

Databricks Workspace import Notebook from MLflow docs website

此时,您就可以直接运行教程了。任何对 MLflow 的创建实验、启动运行、记录元数据和保存工件的调用都将由您完全管理,您的记录历史将出现在 MLflow UI 中。

注意

在 Databricks 平台上,为每个 Notebook 自动创建一个 MLflow 实验,您可以跳过教程中的 mlflow.set_tracking_uri()mlflow.set_experiment() 调用。

在本地运行 Notebook 并将 Databricks Workspace 用作远程跟踪服务器

为了保持在本地机器的舒适范围内,同时仍然可以使用托管的 MLflow 跟踪服务器,您需要

  • 生成个人访问令牌 (PAT)
  • 在您的开发环境中设置 Databricks Workspace 身份验证。
  • 在您的 MLflow 实验会话中连接到您的 Databricks Workspace。

生成 PAT

如果您正在学习 Tracing 教程,在产品内的两个教程中,这些步骤都已为您处理。您可以直接在教程中生成远程访问令牌。

否则,请按照此指南中的步骤操作,以创建 PAT 来远程访问您的 Databricks Workspace。

安装依赖项

在您的开发环境中运行以下命令来安装依赖项。

bash
%pip install -q 'mlflow[genai]'

设置 Databricks Workspace 身份验证

要设置 Databricks Workspace 身份验证,我们可以使用 API mlflow.login(),它会提示您输入所需信息

  • Databricks Host:使用“https://<your workspace host>.cloud.databricks.com/
  • Token:您 Databricks Workspace 的个人访问令牌。

如果身份验证成功,您应该会看到消息“Successfully signed in to Databricks!”。

python
import mlflow

mlflow.login()
text
2025/02/19 12:25:04 INFO mlflow.utils.credentials: No valid Databricks credentials found, please enter your credentials...
Databricks Host (should begin with https://): https://<your workspace host>.cloud.databricks.com/
Token: ········
2025/02/19 12:26:24 INFO mlflow.utils.credentials: Successfully connected to MLflow hosted tracking server! Host: https://<your workspace host>.cloud.databricks.com.

将 MLflow 会话连接到 Databricks Workspace

我们已经设置了凭据,现在我们需要告诉 MLflow 将数据发送到 Databricks Workspace。为此,我们将使用 mlflow.set_tracking_uri("databricks") 将 MLflow 端口连接到 Databricks Workspace。基本上就是下面的命令。请注意,您需要始终使用“databricks”作为关键字。

python
mlflow.set_tracking_uri("databricks")

现在您已准备就绪!让我们尝试启动一个 MLflow 实验并记录一些虚拟指标,然后在 UI 中查看。

将工件记录到 Unity Catalog(可选)

为了将所有工件保存在一个地方,您可以选择使用 Unity Catalog 的 Volumes 功能。首先,您需要按照此指南创建一个 Unity Catalog Volume test.mlflow.check-databricks-connection。然后,您可以运行以下代码来启动一个使用 Unity Catalog Volume 的实验并向其记录指标。请注意,在使用 Databricks Workspace 时,您的实验名称必须遵循 /Users/<your email>/<experiment_name> 格式。

python
mlflow.create_experiment(
"/Users/<your email>/check-databricks-connection",
artifact_location="dbfs:/Volumes/test/mlflow/check-databricks-connection",
)
mlflow.set_experiment("/Users/<your email>/check-databricks-connection")

with mlflow.start_run():
mlflow.log_metric("foo", 1)
mlflow.log_metric("bar", 2)
text
2025/02/19 12:26:33 INFO mlflow.tracking.fluent: Experiment with name '/Users/<your email>/check-databricks-connection' does not exist. Creating a new experiment.

在您的 Databricks Workspace 中查看您的实验

现在,让我们导航到您的 Databricks Workspace 来查看实验结果。登录到您的 Databricks Workspace,然后单击左上角的下拉列表以选择 Machine Learning。然后单击实验图标。请参阅下面的屏幕截图

Landing page of Databricks MLflow server

在“Experiments”(实验)视图中,您应该能够找到名为“check-databricks-connection”的实验,类似于

Experiment view of Databricks MLflow server

单击运行名称(在我们的示例中是“skillful-jay-111”——这是一个随机生成的名称,您将在 Databricks 控制台中看到不同的名称)会将您带到运行视图,类似于

Run view of Databricks MLflow server

在运行视图中,您将看到您的虚拟指标“foo”“bar”已成功记录。

此时,您已准备就绪!您可以在本地运行任何教程,它们将记录到托管的 MLflow 跟踪服务器。