本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用 Amazon MLflow 上托管的 AI 加速生成式 A SageMaker I 开发
Amazon A SageMaker I 上的完全托管 MLflow 3.0 使您能够使用单个工具更轻松地跟踪实验并监控模型和 AI 应用程序的性能,从而加速生成式 AI。
使用 MLflow 3.0 进行生成式人工智能开发
随着各行各业的客户加速其生成式人工智能开发,他们需要能够跟踪实验、观察行为以及评估模型和人工智能应用程序的性能。数据科学家和开发人员缺乏分析模型和人工智能应用程序从实验到生产的性能的工具,因此很难找出问题的根本原因和解决问题。与改进模型或生成式 AI 应用程序相比,团队花在集成工具上的时间更多。
训练或微调生成式 AI 和机器学习是一个迭代过程,需要对数据、算法和参数的各种组合进行实验,同时观察它们对模型准确性的影响。实验的迭代性质导致了大量的模型训练运行和版本,这使得跟踪性能最佳的模型及其配置变得困难。随着GenAI的发展,管理和比较迭代训练运行的复杂性会增加,在GenAI中,实验不仅涉及微调模型,还涉及探索创造性和多样化的输出。研究人员必须调整超参数,选择合适的模型架构,并策划多样化的数据集,以优化生成内容的质量和创造性。评估生成式人工智能模型需要定量和定性指标,这给实验过程增加了另一层复杂性。Amazon A SageMaker I 上的 MLflow 3.0 版实验跟踪功能使您能够跟踪、组织、查看、分析和比较迭代机器学习实验,以获得比较见解,并注册和部署性能最佳的模型。
完全托管 MLflow 3.0 中的跟踪功能使您能够记录生成式 AI 应用程序的每个步骤的输入、输出和元数据,从而帮助您快速识别错误或意外行为的来源。通过维护每个模型和应用程序版本的记录,完全托管 MLflow 3.0 提供了将 AI 响应连接到其源组件的可追溯性,使您可以快速将问题直接追踪到生成问题的特定代码、数据或参数。这大大缩短了故障排除时间,使团队能够更加专注于创新。
MLflow 集成
MLflow 在训练和评估模型时使用,为您的用例找到最佳候选模型。您可以在 MLflow UI 中比较不同实验中的模型性能、参数和指标,在模型注册表中跟踪您的最佳 MLflow 模型,自动将其注册为 A SageMaker I 模型,并将注册的模型部署到 SageMaker AI 端点。
带有 Amazon SageMaker AI MLflow
MLflow 用于跟踪和管理机器学习 (ML) 生命周期的实验阶段,并 Amazon 集成模型开发、管理、部署和跟踪。
亚马逊 SageMaker Studio
创建和管理跟踪服务器,运行笔记本来创建实验,访问 MLflow 用户界面以查看和比较通过 Studio 运行的实验。
SageMaker 模型注册表
通过自动将模型从 “模型注册表” 注册到 “模型注册表”,管理用于生产的 MLflow 模型版本和目录 SageMaker 模型。有关更多信息,请参阅 在模型注册表中自动注册 SageMaker AI SageMaker 模型。
SageMaker AI 推理
使用准备要在 SageMaker AI 终端上部署的最佳模型ModelBuilder
。有关更多信息,请参阅 使用部署 MLflow 模型 ModelBuilder。
Amazon Identity and Access Management
在 IAM 中 MLflow 使用基于角色的访问控制 (RBAC) 配置访问权限。编写 IAM 身份策略以授权 MLflow跟踪服务器的客户端可以调用。 MLflow APIs 所有 MLflow REST APIs 都以sagemaker-mlflow
服务前缀下的 IAM 操作表示。有关更多信息,请参阅 为设置 IAM 权限 MLflow。
Amazon CloudTrail
查看登录信息 Amazon CloudTrail ,帮助您启用 Amazon 账户的运营和风险审计、监管和合规性。有关更多信息,请参阅 Amazon CloudTrail 日志。
Amazon EventBridge
使用 Amazon 捕获 MLflow 的事件自动执行模型审查和部署生命周期 EventBridge。有关更多信息,请参阅 亚马逊 EventBridge 活动。
支持的 Amazon Web Services 区域
Amazon SageMaker AI MLflow with 通常在所有可用 Amazon SageMaker Studio 的 Amazon 商业区域推出,但中国地区 Amazon GovCloud (US) 和地区除外。 SageMaker AI w MLflow ith 仅适用于欧洲(苏黎世)、亚太地区(海得拉巴)、亚太地区(墨尔本)和加拿大西部(卡尔加里) Amazon Web Services 区域。 Amazon CLI
跟踪服务器在其指定区域内的单个可用区启动。
工作方式
MLflow 跟踪服务器有三个主要组件:计算、后端元数据存储和构件存储。托管跟踪服务器和后端元数据存储的计算安全地托管在 SageMaker AI 服务帐户中。项目存储位于您自己 Amazon 账户的 Amazon S3 存储桶中。

跟踪服务器有一个 ARN。您可以使用此 ARN 将 MLflow SDK 连接到您的跟踪服务器,然后开始将训练运行记录到该服务器。 MLflow
请继续阅读,了解有关以下关键概念的更多信息:
后端元数据存储
创建 Trac MLflow king Server 时,系统会在 SageMaker AI 服务帐户中自动配置并完全为您管理一个后端存储
构件存储
要为每次运行的元数据(例如模型权重、图像、模型文件和实验运行的数据文件)提供 MLflow 永久存储空间,您必须使用 Amazon S3 创建工件存储。必须在您的 Amazon 账户中设置工件存储,并且必须明确授予 MLflow 对 Amazon S3 的访问权限才能访问您的工件存储。有关更多信息,请参阅 MLflow 文档中的 A rtifact St
MLflow 跟踪服务器大小
您可以选择在 Studio 用户界面中或使用 Amazon CLI 参数指定跟踪服务器的大小--tracking-server-size
。您可在 "Small"
、"Medium"
和 "Large"
之间选择。默认的 MLflow跟踪服务器配置大小为"Small"
。您可以根据跟踪服务器的预计使用情况(如记录的数据量、用户数量和使用频率)来选择大小。
我们建议用户不超过 25 人的团队使用小型跟踪服务器,用户不超过 50 人的团队使用中型跟踪服务器,用户不超过 100 人的团队使用大型跟踪服务器。我们假设所有用户都将同时向您的 MLflow 跟踪服务器发出请求以提出这些建议。您应根据预期使用规律和每个跟踪服务器支持的 TPS(每秒交易量)来选择跟踪服务器的大小。
注意
您的工作负载性质和向跟踪服务器发出的请求类型决定了您所看到的 TPS。
跟踪服务器大小 | Sustained TPS | Burst TPS |
---|---|---|
小型 | 最多 25 | 最多 50 |
中 | 最多 50 | 最多 100 |
大型 | 最多 100 | 最多 200 |
跟踪服务器版本
以下 MLflow 版本可用于 A SageMaker I:
MLflow 版本 | Python 版本 |
---|---|
MLflow 3.0 |
Python 3.9 |
MLflow 2.16 |
Python 3.8 |
MLflow 2.13 |
Python 3.8 |
最新版本的跟踪服务器具有最新功能、安全补丁和错误修复。在创建新的跟踪服务器时,我们建议使用最新版本。有关创建跟踪服务器的更多信息,请参阅MLflow 追踪服务器。
MLflow 跟踪服务器使用语义版本控制。版本采用以下格式:
.major-version
.minor-version
.patch-version
最新功能,例如新的用户界面元素和 API 功能,均为次要版本。
Amazon CloudTrail 日志
Amazon CloudTrail 自动记录与您的 MLflow 跟踪服务器相关的活动。以下控制平面 API 调用已登录 CloudTrail:
-
CreateMlflowTrackingServer
-
DescribeMlflowTrackingServer
-
UpdateMlflowTrackingServer
-
DeleteMlflowTrackingServer
-
ListMlflowTrackingServers
-
CreatePresignedMlflowTrackingServer
-
StartMlflowTrackingServer
-
StopMlflowTrackingServer
Amazon CloudTrail 还会自动记录与您的 MLflow 数据平面相关的活动。以下数据平面 API 调用已登录 CloudTrail。对于事件名称,请添加前缀Mlflow
(例如,MlflowCreateExperiment
)。
-
CreateExperiment
-
CreateModelVersion
-
CreateRegisteredModel
-
CreateRun
-
DeleteExperiment
-
DeleteModelVersion
-
DeleteModelVersionTag
-
DeleteRegisteredModel
-
DeleteRegisteredModelAlias
-
DeleteRegisteredModelTag
-
DeleteRun
-
DeleteTag
-
GetDownloadURIForModelVersionArtifacts
-
GetExperiment
-
GetExperimentByName
-
GetLatestModelVersions
-
GetMetricHistory
-
GetModelVersion
-
GetModelVersionByAlias
-
GetRegisteredModel
-
GetRun
-
ListArtifacts
-
LogBatch
-
LogInputs
-
LogMetric
-
LogModel
-
LogParam
-
RenameRegisteredModel
-
RestoreExperiment
-
RestoreRun
-
SearchExperiments
-
SearchModelVersions
-
SearchRegisteredModels
-
SearchRuns
-
SetExperimentTag
-
SetModelVersionTag
-
SetRegisteredModelAlias
-
SetRegisteredModelTag
-
SetTag
-
TransitionModelVersionStage
-
UpdateExperiment
-
UpdateModelVersion
-
UpdateRegisteredModel
-
UpdateRun
-
FinalizeLoggedModel
-
GetLoggedModel
-
DeleteLoggedModel
-
SearchLoggedModels
-
SetLoggedModelTags
-
DeleteLoggedModelTag
-
ListLoggedModelArtifacts
-
LogLoggedModelParams
-
LogOutputs
有关的更多信息 CloudTrail,请参阅《Amazon CloudTrail 用户指南》。
亚马逊 EventBridge 活动
用于 EventBridge 将事件从 MLflow 与 SageMaker AI 配合使用到整个组织的消费者应用程序进行路由。以下事件将发送给 EventBridge:
-
“正在创建SageMaker 跟踪服务器”
-
“已创建SageMaker 跟踪服务器”
-
“创建SageMaker 跟踪服务器失败”
-
“正在SageMaker 跟踪服务器更新”
-
“SageMaker 追踪服务器已更新”
-
“SageMaker 跟踪服务器更新失败”
-
“正在删除SageMaker 跟踪服务器”
-
“已删除SageMaker 跟踪服务器”
-
“删除SageMaker 跟踪服务器失败”
-
“SageMaker 正在启动跟踪服务器”
-
“SageMaker 跟踪服务器已启动”
-
“SageMaker 跟踪服务器启动失败”
-
“正在停止SageMaker 跟踪服务器”
-
“SageMaker 跟踪服务器已停止”
-
“SageMaker 跟踪服务器停止失败”
-
“正在SageMaker 跟踪服务器维护”
-
“SageMaker 跟踪服务器维护已完成”
-
“SageMaker 跟踪服务器维护失败”
-
“正在创建运行的SageMaker MLFlow 跟踪服务器”
-
“正在创建SageMaker MLFlow 跟踪服务器 RegisteredModel”
-
“正在创建SageMaker MLFlow 跟踪服务器 ModelVersion”
-
“SageMaker MLFlow 跟踪服务器过渡 ModelVersion 阶段”
-
“SageMaker MLFlow 跟踪服务器设置注册模型别名”
有关的更多信息 EventBridge,请参阅 Amazon EventBridge 用户指南。