AI-300 · LESSON 1

设计和实现 MLOps 基础结构15–20% · 3 个主题

学习如何以 Azure Machine Learning 工作区为中心,配置计算、数据、环境等资产,并通过 Bicep 等代码(IaC)以可重现的方式构建。

1.1创建和管理机器学习工作区中的资源

Create and manage resources in a Machine Learning workspace

概念

工作区是 Azure Machine Learning 的工作单位,统一管理训练、部署和资产。创建时会关联存储帐户、Key Vault、Application Insights 和容器注册表。计算资源包括计算实例(个人开发用 VM)、计算群集(为作业自动缩放)以及无服务器计算(无需管理群集即可运行作业)。

原理、步骤

  1. 创建工作区,确认相关资源(存储、Key Vault、ACR、Application Insights)
  2. 为每位开发人员准备计算实例,并设置空闲时自动关闭
  3. 为作业创建计算群集,设置最小节点数 0 和最大节点数以控制成本(或使用无服务器)
  4. 通过托管虚拟网络(允许互联网出站 / 仅允许已批准的出站)和专用终结点实现封闭网络
  5. 用 Azure RBAC(如 AzureML 数据科学家)把权限降到最小

工作中的示例

5 人的分析团队共用一个工作区,各自的计算实例空闲 30 分钟后停止,训练作业在最小 0 节点的群集上运行,使夜间费用为零。

易混淆点、考试注意事项

小测验

Q1. 在 Azure Machine Learning 中,你希望只在需要时用多个节点运行训练作业,不使用时控制费用。合适的计算是哪一个?

  1. 按作业数量准备常时运行的带 GPU 计算实例
  2. 最小节点数与最大节点数相同的计算群集
  3. 在无服务器 Spark 计算上运行训练作业
  4. 最小节点数设置为 0 的自动缩放计算群集
查看答案和解析

正确答案:D 最小节点数设置为 0 的自动缩放计算群集

群集根据负载缩放,最小为 0 就能控制待机时的费用。【其他选项】实例是单节点且持续计费。最小节点数与最大相同,待机时也会计费。无服务器 Spark 用于数据处理,不是多节点训练作业的选项。

Q2. 因训练时和推理时的库版本不同而发生了故障。为提高可重现性应使用什么?

  1. 定义了依赖项和映像的环境(Environment)
  2. 计算实例的默认 Python 内核
  3. 在训练脚本开头执行 pip install 的处理
  4. 每个作业指定的最新特选环境
查看答案和解析

正确答案:A 定义了依赖项和映像的环境(Environment)

定义环境并进行版本管理,训练和推理就能使用相同的依赖项。【其他选项】运行时 pip install 无法固定版本。实例的内核在推理时不会被重现。每次都用最新环境无法防止版本差异。

参考链接

1.2创建和管理机器学习工作区中的资产

Create and manage assets in a Machine Learning workspace

概念

资产是数据资产、环境、组件、模型等可重复使用且带版本的部件。数据存储是到 Blob 或 ADLS Gen2 的连接信息,数据资产按名称和版本引用其中的特定数据(uri_file、uri_folder、mltable)。环境是 Docker 映像与 conda 依赖项的组合。

原理、步骤

  1. 注册数据存储(推荐基于标识的访问,避免嵌入凭据)
  2. 按名称和版本注册数据资产,在作业中以 azureml:name:version 引用
  3. 以带版本的方式注册特选环境或自定义环境(Dockerfile、conda.yml)
  4. 把预处理、训练等注册为组件,在管道中重复使用

工作中的示例

把每月的数据注册为 sales-data 的 2026.10 版本,以便追踪哪个模型是用哪个数据版本训练的。

易混淆点、考试注意事项

小测验

Q1. 关于数据存储与数据资产的关系,正确的说明是哪一项?

  1. 数据存储是经过版本管理的引用,数据资产是存储帐户的连接设置
  2. 数据资产保存存储的身份验证信息,数据存储复制并保存数据本身
  3. 数据存储是到存储的连接信息,数据资产是对数据的可版本管理的引用
  4. 数据存储和数据资产是同一个东西,只是在作业 YAML 中叫法不同
查看答案和解析

正确答案:C 数据存储是到存储的连接信息,数据资产是对数据的可版本管理的引用

把连接(数据存储)和引用(数据资产)分开,就能在不暴露凭据的情况下处理数据。【其他选项】数据资产不保存身份验证信息,数据存储也不复制数据。第一项角色颠倒。两者是不同的概念。

Q2. 你希望在生产工作区中也使用在开发工作区中创建的模型和环境。合适的方法是哪一个?

  1. 让生产环境也引用开发工作区的数据存储
  2. 使用注册表在工作区之间共享资产
  3. 在生产工作区中用相同数据重新训练模型
  4. 下载模型,手动注册到生产工作区
查看答案和解析

正确答案:B 使用注册表在工作区之间共享资产

注册表是跨工作区共享资产的机制。【其他选项】重新训练得不到相同的模型。手动注册会中断谱系。共享数据存储无法传递模型和环境。

参考链接

1.3为机器学习实现 IaC

Implement IaC for Machine Learning

概念

基础结构即代码(IaC)用代码定义工作区和计算资源,使相同的配置可以反复创建。在 Azure 中使用 Bicep、ARM 模板或 Terraform,ML 资产则用 Azure CLI ml 扩展(v2)的 YAML 或 Python SDK v2 定义。

原理、步骤

  1. 用 Bicep 定义工作区、网络和计算资源,并用 Git 管理
  2. 按开发、测试、生产环境分开参数文件
  3. 用 YAML 定义作业、环境和终结点,用 az ml 命令创建
  4. 从 GitHub Actions 或 Azure Pipelines 通过服务主体或工作负载标识联合进行身份验证后应用

工作中的示例

对生产工作区的所有更改都必须经过拉取请求审查,并从管道部署 Bicep,消除手工设置造成的差异。

易混淆点、考试注意事项

小测验

Q1. 你希望每次都以相同配置重现工作区及相关资源的创建。合适的方法是哪一个?

  1. 用 Bicep 模板和 Azure CLI 定义,并用 GitHub Actions 自动执行
  2. 在 Python SDK 的笔记本中创建,并保留单元格输出作为记录
  3. 在门户中创建后导出 ARM 模板,附在操作手册中
  4. 由负责人每次按照操作手册手动执行 Azure CLI 命令
查看答案和解析

正确答案:A 用 Bicep 模板和 Azure CLI 定义,并用 GitHub Actions 自动执行

用 IaC 定义可以消除配置差异,并留下审查和变更历史。【其他选项】导出的 ARM 模板只是记录,不是持续重现的机制。手工操作或执行笔记本不能保证重现相同配置。

Q2. 配置联合凭据(OIDC)时,最适合在 Entra ID 端作为信任条件指定的是哪一项?

  1. GitHub 的组织、存储库、分支或环境(subject)
  2. GitHub 用户的用户名和个人访问令牌
  3. 运行工作流的运行器的 IP 地址
  4. 工作流 YAML 文件的名称和要运行的作业名称
查看答案和解析

正确答案:A GitHub 的组织、存储库、分支或环境(subject)

联合凭据指定信任来自哪个存储库、分支或环境的令牌(subject)。【其他选项】联合凭据以 subject(存储库、分支、环境)决定信任。文件名、IP 和个人令牌不作为条件。

参考链接

课程由本站根据公开信息独立编写,不保证与考试内容一致。产品规格可能变化,请在参考链接中确认最新信息。

使用须知(非官方、原创题目、不保证合格)