Amazon SageMaker の推論パイプライン - Amazon SageMaker

Amazon SageMaker の推論パイプライン

推論パイプラインは、データに対して推論リクエストを処理する、直線状に並んだ 2~15 個のコンテナで構成される Amazon SageMaker モデルです。推論パイプラインを使って、事前トレーニング済みの SageMaker 組み込みアルゴリズムと、Docker コンテナにパッケージ化された独自のカスタムアルゴリズムの任意の組み合わせを定義、デプロイします。推論パイプラインを使用して、事前処理、予測、および後処理のデータサイエンスタスクを組み合わせることができます。推論パイプラインは完全に管理されます。

SageMaker Spark ML Serving と scikit-learn コンテナを追加すると、モデルトレーニング用に開発されたデータ変換を再利用できます。組み立てられた推論パイプライン全体は、リアルタイム予測の実行や、外部の前処理をせずにバッチ変換を直接処理するために使うことができる SageMaker モデルと見なすことができます。

推論パイプラインモデル内で、SageMaker は呼び出しを HTTP リクエストのシーケンスとして処理します。最初のリクエストはパイプラインの最初のコンテナによって処理され、次に中間レスポンスが 2 番目のコンテナへのリクエストとして送信され、以降、パイプラインの各コンテナに対して同様の処理が繰り返され、最終レスポンスが SageMaker によってクライアントに返されます。

パイプラインモデルをデプロイすると、SageMaker はエンドポイントまたは変換ジョブの各 Amazon Elastic Compute Cloud (Amazon EC2) インスタンスにすべてのコンテナをインストールし、実行します。機能の処理と推測は低レイテンシーで実行されます。これは、コンテナが同じ EC2 インスタンスに配置されているためです。CreateModel オペレーションを使用するか、コンソールから、パイプラインモデルのコンテナを定義します。PrimaryContainer を 1 つ設定する代わりに、Containers パラメータを使用して、パイプラインを構成する複数のコンテナを設定します。また、コンテナを実行する順序も指定します。

パイプラインモデルは変更不可能ですが、UpdateEndpoint オペレーションを使用して新しいモデルをデプロイすることにより、推論パイプラインを更新できます。このモジュール性により、実験中の柔軟性が高まります。

SageMaker モデルレジストリを使って推論パイプラインを作成する方法については、「Model Registry を使用したモデル登録デプロイ」を参照してください。

この機能の使用に追加料金はかかりません。エンドポイントで実行されているインスタンスに対してのみ料金が発生します。

推論パイプラインのサンプルノートブック

推論パイプラインを作成してデプロイする方法を示す例については、「Inference Pipeline with Scikit-learn and Linear Learner」サンプルノートブックを参照してください。SageMaker でサンプルを実行する際に使用できる Jupyter ノートブックインスタンスを作成してアクセスする手順については、「Amazon SageMaker ノートブックインスタンス」を参照してください。

ノートブックインスタンスを作成して開いた後、すべての SageMaker サンプルのリストを表示するには、[SageMaker Examples] (SageMaker サンプル) タブを選択します。推論パイプラインノートブックは 3 つあります。説明した最初の 2 つの推論パイプラインノートブックは advanced_functionality フォルダにあり、3 番目のノートブックは sagemaker-python-sdk フォルダにあります。ノートブックを開くには、その [使用] タブを選び、次に [コピーを作成] を選択します。