MLAMLワークフローのデプロイとオーケストレーション
MLエンジニアが本番環境に多段階の推論パイプラインをデプロイしようとしています。パイプラインは以下の3段階で構成されています。
①scikit-learnコンテナ:入力データの欠損値補完・スケーリング・特徴量エンジニアリング
②XGBoostコンテナ:変換済みデータによる予測スコア出力
③カスタムPythonコンテナ:スコアからビジネスカテゴリへの変換と後処理
これら3つのコンテナを単一のSageMakerエンドポイントとしてデプロイし、推論リクエストが自動的に①→
②→
③の順で処理されるよう実装するための最も適切な方法はどれですか?
ASageMakerマルチモデルエンドポイント(MME)を使用し、3つのモデルアーティファクトを同じS3パスに配置してリクエスト時にTargetModelヘッダーで個別に呼び出す
SageMakerマルチモデルエンドポイント(MME)を使用するアプローチは、単一コンテナ内で複数モデルを動的に切り替える機能で直列処理は行いません。
BSageMaker推論パイプライン(Inference Pipeline)を使用し、3つのコンテナ定義をPipelineModelに直列に連結して単一エンドポイントとしてデプロイする
✓ 正解
SageMaker推論パイプライン(Inference Pipeline)は前処理・推論・後処理など複数のコンテナを直列(シリアル)に接続し、PipelineModelとして単一エンドポイントにデプロイする機能です。クライアントからのリクエストは自動的にコンテナ①→②→③の順で渡され、各コンテナの出力が次の入力になります。
CSageMakerマルチコンテナエンドポイント(MCE)を使用し、リクエストヘッダーのTargetContainerHostnameで呼び出すコンテナを順番に指定する
SageMakerマルチコンテナエンドポイント(MCE)を使用するアプローチは、複数の独立したコンテナを提供しますが自動シリアル処理はなく個別呼び出しが必要です。
DAWS Lambda関数をオーケストレーターとして作成し、3つの独立したSageMakerエンドポイントを順番に呼び出してレスポンスを次の入力に渡す
AWS Lambda関数をオーケストレーターとして作成するアプローチは、外部依存が増加しレイテンシも高くなります。
解説
SageMaker推論パイプライン(Inference Pipeline)は前処理・推論・後処理など複数のコンテナを直列(シリアル)に接続し、PipelineModelとして単一エンドポイントにデプロイする機能です。クライアントからのリクエストは自動的にコンテナ①→
②→
③の順で渡され、各コンテナの出力が次の入力になります。
選択肢AのSageMakerマルチモデルエンドポイント(MME)を使用するアプローチは、単一コンテナ内で複数モデルを動的に切り替える機能で直列処理は行いません。
選択肢CのSageMakerマルチコンテナエンドポイント(MCE)を使用するアプローチは、複数の独立したコンテナを提供しますが自動シリアル処理はなく個別呼び出しが必要です。
選択肢DのAWS Lambda関数をオーケストレーターとして作成するアプローチは、外部依存が増加しレイテンシも高くなります。
ドメイン別正答率・予想スコアでリアルタイムに実力把握
無限ノックでMLAを徹底対策。全問AI生成のオリジナル問題。
無料で演習を始める →