本文演示如何在工作区中启用模型服务,并将模型切换到基于无服务器计算构建的 马赛克 AI 模型服务 体验。
重要
从 2025 年 8 月 22 日起,客户将无法再使用旧版 MLflow 模型服务体验创建新的服务终结点。 2025 年 9 月 15 日,旧版体验将结束生命周期,无法使用此服务的所有现有终结点。
要求
- MLflow 模型注册表中已注册的模型。
- 已注册模型的权限,如访问控制指南中所述。
- 在工作区上启用无服务器计算。
重大更改
- 在 Model Serving 中,对终结点的请求和来自终结点的响应的格式与旧版 MLflow Model Serving 略有不同。 有关新格式协议的详细信息,请参阅为模型终结点评分。
- 在 Model Serving 中,终结点 URL 包括
serving-endpoints,不包括model。 - Model Serving 完全支持使用 API 工作流程管理资源。
- Model Serving 是生产就绪的,由 Azure Databricks SLA 提供支持。
标识使用旧版 MLflow 模型服务的服务终结点
若要标识使用旧版 MLflow 模型服务的模型服务终结点,请执行以下作:
- 导航到工作区中的 模型 UI。
- 选择 工作区模型注册表 筛选器。
- 选择 仅启用旧服务 筛选器。
将旧版 MLflow Model Serving 服务模型迁移到 Model Serving
可以创建 Model Serving 终结点并灵活地转换模型服务工作流,而无需禁用旧版 MLflow Model Serving。
以下步骤演示如何使用 UI 完成此操作。 对于已启用旧 MLflow Model Serving 的每个模型:
- 将模型注册到 Unity 目录。
- 导航到机器学习工作区侧边栏上的“服务终结点”。
- 按照创建自定义模型服务终结点中有关如何使用模型创建服务终结点的工作流进行操作。
- 将应用程序转换为使用服务终结点提供的新 URL 以及新的评分格式来查询模型。
- 转换模型后,可以导航到机器学习工作区侧边栏上的模型。
- 选择要为其禁用旧版 MLflow 模型服务的模型。
- 在“服务”选项卡上,选择“停止”。
- 一条消息随即显示,用于进行确认。 选择“停止服务”。
将已部署的模型版本迁移到 Model Serving
在 Model Serving 功能的早期版本中,服务终结点是根据注册模型版本的阶段(Staging 或 Production)创建的。 要从该体验迁移服务模型,可以在新的 Model Serving 体验中复制该行为。
本部分演示如何为 Staging 模型版本和 Production 模型版本创建单独的模型服务终结点。 以下步骤展示了如何使用每个服务模型的服务终结点 API 来完成此任务。
在示例中,注册的模型名称 modelA 在模型阶段 Production 中具有版本 1,在模型阶段 Staging 中具有版本 2。
为已注册的模型创建两个终结点,一个用于
Staging模型版本,另一个用于Production模型版本。对于
Staging模型版本:POST /api/2.0/serving-endpoints { "name":"modelA-Staging" "config": { "served_entities": [ { "entity_name":"model-A", "entity_version":"2", // Staging Model Version "workload_size":"Small", "scale_to_zero_enabled":true }, ], }, }对于
Production模型版本:POST /api/2.0/serving-endpoints { "name":"modelA-Production" "config": { "served_entities": [ { "entity_name":"model-A", "entity_version":"1", // Production Model Version "workload_size":"Small", "scale_to_zero_enabled":true }, ], }, }验证终结点的状态。
对于暂存终结点:
GET /api/2.0/serving-endpoints/modelA-Staging对于生产终结点:
GET /api/2.0/serving-endpoints/modelA-Production终结点准备就绪后,使用以下命令查询终结点:
对于暂存终结点:
POST /serving-endpoints/modelA-Staging/invocations对于生产终结点:
POST /serving-endpoints/modelA-Production/invocations根据模型版本转换更新终结点。
在创建新的模型版本 3 的情况下,可以将模型版本 2 转换为
Production,模型版本 3 可以转换为Staging,模型版本 1Archived。 这些更改可以反映在单独的模型服务终结点中,如下所示:对于
Staging终结点,请更新终结点以在Staging中使用新的模型版本。PUT /api/2.0/serving-endpoints/modelA-Staging/config { "served_entities": [ { "entity_name":"model-A", "entity_version":"3", // New Staging model version "workload_size":"Small", "scale_to_zero_enabled":true }, ], }对于
Production终结点,请更新终结点以在Production中使用新的模型版本。PUT /api/2.0/serving-endpoints/modelA-Production/config { "served_entities": [ { "entity_name":"model-A", "entity_version":"2", // New Production model version "workload_size":"Small", "scale_to_zero_enabled":true }, ], }