翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Amazon SageMaker AI でマネージド MLflow を使用して生成 AI 開発を加速する Amazon SageMaker
Amazon SageMaker AI で完全マネージド型の MLflow 3.0 を使用すると、単一のツールを使用して実験を追跡し、モデルと AI アプリケーションのパフォーマンスを簡単にモニタリングできるため、生成 AI を加速できます。
MLflow 3.0 を使用した生成 AI 開発
さまざまな業界のお客様が生成 AI 開発を加速させるには、実験を追跡し、動作を観察し、モデルと AI アプリケーションのパフォーマンスを評価する能力が必要です。データサイエンティストやデベロッパーには、実験から本番稼働までモデルや AI アプリケーションのパフォーマンスを分析するツールがないため、根本原因を突き止めて問題を解決することが困難です。チームは、モデルや生成 AI アプリケーションの改善よりもツールの統合に多くの時間を費やしています。
生成 AI と機械学習のトレーニングまたはファインチューニングは、モデルの精度への影響を観察しながら、データ、アルゴリズム、パラメータのさまざまな組み合わせを試す必要がある反復プロセスです。実験の反復的な性質により、多数のモデルトレーニングの実行とバージョンが発生するため、最もパフォーマンスの高いモデルとその設定を追跡することは困難です。GenAI では、反復トレーニングの実行の管理と比較の複雑さが増します。ここでは、実験にはモデルの微調整だけでなく、創造的で多様な出力の探索も含まれます。研究者は、生成されるコンテンツを品質と創造性の両面から最適化するために、ハイパーパラメータを調整し、適切なモデルアーキテクチャを選定し、多様なデータセットを選別する必要があります。生成 AI モデルを評価するには、定量的および定性的なメトリクスが両方必要であり、そのせいで実験プロセスが一層複雑になっています。Amazon SageMaker AI の MLflow 3.0 の実験追跡機能を使用すると、反復的な ML 実験を追跡、整理、表示、分析、比較して、比較インサイトを取得し、最もパフォーマンスの高いモデルを登録してデプロイできます。
フルマネージド MLflow 3.0 のトレース機能を使用すると、生成 AI アプリケーションのすべてのステップで入力、出力、メタデータを記録できるため、バグや予期しない動作の原因をすばやく特定できます。各モデルとアプリケーションバージョンのレコードを維持することで、フルマネージド MLflow 3.0 は AI レスポンスをソースコンポーネントに接続するためのトレーサビリティを提供するため、問題を生成した特定のコード、データ、またはパラメータに直接追跡できます。これにより、トラブルシューティング時間が大幅に短縮され、チームはイノベーションに集中できるようになります。
MLflow の統合
モデルのトレーニング中や評価中に MLflow を使用して、ユースケースに最適な候補を見つけることができます。MLflow UI の実験間でモデルのパフォーマンス、パラメータ、メトリクスを比較したり、MLflow Model Registry で最適なモデルを追跡したり、SageMaker AI モデルとして自動的に登録したり、登録済みモデルを SageMaker AI エンドポイントにデプロイしたりできます。
Amazon SageMaker AI と MLflow
MLflow を使用して、モデル開発、管理、デプロイ、追跡 AWS の統合により、機械学習 (ML) ライフサイクルの実験フェーズを追跡および管理します。
Amazon SageMaker Studio
追跡サーバーを作成して管理し、ノートブックを実行して実験を作成し、MLflow UI にアクセスして実験の実行を表示および比較するなど、そのすべてを Studio で行うことができます。
SageMaker Model Registry
MLflow Model Registry から SageMaker Model Registry にモデルを自動的に登録して、本番稼働用のモデルバージョンとカタログモデルを管理します。詳細については、「SageMaker AI モデルを SageMaker Model Registry に自動的に登録する」を参照してください。
SageMaker AI 推論
を使用して、SageMaker AI エンドポイントにデプロイするための最適なモデルを準備しますModelBuilder
。詳細については、「ModelBuilder で MLflow モデルをデプロイする」を参照してください。
AWS Identity and Access Management
IAM でロールベースのアクセスコントロール (RBAC) を使用して、MLflow へのアクセスを設定します。MLflow 追跡サーバーのクライアントが呼び出せる MLflow API を承認する IAM アイデンティティポリシーを作成します。すべての MLflow REST API は、sagemaker-mlflow
というサービスプレフィックスが付いた IAM アクションとして表されます。詳細については、「MLflow の IAM アクセス許可を設定する」を参照してください。
AWS CloudTrail
のログを表示 AWS CloudTrail して、 AWS アカウントの運用とリスクの監査、ガバナンス、コンプライアンスを有効にします。詳細については、「AWS CloudTrail ログ」を参照してください。
Amazon EventBridge
Amazon EventBridge でキャプチャされた MLflow イベントを基に、モデルのレビューとデプロイのライフサイクルを自動化します。詳細については、「Amazon EventBridge イベント」を参照してください。
サポートされている AWS リージョン
MLflow を使用した Amazon SageMaker AI は、中国のリージョンとリージョンを除く、Amazon SageMaker Studio が利用可能なすべての AWS 商用 AWS GovCloud (US) リージョンで一般利用可能です。MLflow を使用した SageMaker AI は、欧州 (チューリッヒ)、アジアパシフィック (ハイデラバード)、アジアパシフィック (メルボルン)、カナダ西部 (カルガリー) AWS CLI の でのみ使用できます AWS リージョン。
追跡サーバーは、指定されたリージョン内の単一のアベイラビリティーゾーンで起動します。
仕組み
MLflow 追跡サーバーには、コンピューティング、バックエンドメタデータストレージ、アーティファクトストレージという 3 つの主要コンポーネントがあります。追跡サーバーとバックエンドメタデータストレージをホストするコンピューティングは、SageMaker AI サービスアカウントで安全にホストされます。アーティファクトストレージは、自分の AWS アカウントの Amazon S3 バケットに存在します。

追跡サーバーには ARN があります。この ARN を使用して MLflow SDK を追跡サーバーに接続し、トレーニングの実行を MLflow に記録し始めることができます。
次の主要概念の詳細について、後述します。
バックエンドメタデータストレージ
MLflow 追跡サーバーを作成すると、実行 ID、開始時刻と終了時刻、パラメータ、メトリクスなど、実行
アーティファクトストレージ
各実行のメタデータ (実験実行のモデルの重み、イメージ、モデルファイル、データファイルなど) を MLflow で永続的に保存できるように、Amazon S3 を使用してアーティファクトストアを作成する必要があります。アーティファクトストアは AWS アカウント内で設定する必要があり、アーティファクトストアにアクセスするには、MLflow に Amazon S3 へのアクセスを明示的に許可する必要があります。詳細については、MLflow ドキュメントの「Artifact Stores
MLflow 追跡サーバーのサイズ
オプションで、Studio UI または AWS CLI パラメータ を使用して、追跡サーバーのサイズを指定できます--tracking-server-size
。"Small"
、"Medium"
、"Large"
のいずれかから選択できます。デフォルトの MLflow 追跡サーバーの設定サイズは "Small"
です。ログに記録されるデータ量、ユーザー数、使用頻度など、追跡サーバーの予想使用量に応じてサイズを選択できます。
ユーザー数が 25 人以下のチームには小さな (Small) 追跡サーバー、50 人以下のチームには中規模な (Medium) 追跡サーバー、最大 100 人のチームには大きな (Large) 追跡サーバーを使用することをお勧めします。これらの推奨は、ユーザー全員が同時に MLflow 追跡サーバーにリクエストを行うことを前提としています。予想される使用状況パターンと各追跡サーバーが対応している TPS (1 秒あたりのトランザクション数) に基づいて、追跡サーバーのサイズを選択してください。
注記
ワークロードの性質と追跡サーバーに対して行うリクエストのタイプによって、TPS が決まります。
追跡サーバーのサイズ | 持続的 TPS | バースト時の TPS |
---|---|---|
Small | 最大 25 | 最大 50 |
Medium | 最大 50 | 最大 100 |
Large | 最大 100 | 最大 200 |
追跡サーバーのバージョン
SageMaker AI では、次の MLflow バージョンを使用できます。
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
新しい UI 要素や API 機能などの最新の機能は、マイナーバージョンにあります。
AWS CloudTrail ログ
AWS CloudTrail は、MLflow 追跡サーバーに関連するアクティビティを自動的にログに記録します。次のコントロールプレーン API コールは CloudTrail に記録されます。
-
CreateMlflowTrackingServer
-
DescribeMlflowTrackingServer
-
UpdateMlflowTrackingServer
-
DeleteMlflowTrackingServer
-
ListMlflowTrackingServers
-
CreatePresignedMlflowTrackingServer
-
StartMlflowTrackingServer
-
StopMlflowTrackingServer
AWS 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 の詳細については、「AWS CloudTrail ユーザーガイド」を参照してください。
Amazon EventBridge イベント
EventBridge を使用して、SageMaker AI での MLflow の使用から組織全体のコンシューマーアプリケーションにイベントをルーティングします。以下のイベントが 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 ユーザーガイド」を参照してください。