推論パイプラインのログとメトリクス - Amazon SageMaker

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

推論パイプラインのログとメトリクス

モニタリングは、Amazon SageMaker リソースの信頼性、可用性、パフォーマンスを維持する上で重要です。推論パイプラインのパフォーマンスをモニタリングおよびトラブルシューティングするには、Amazon CloudWatch ログとエラーメッセージを使用します。が提供するモニタリングツールの詳細については、 SageMaker「」を参照してくださいAmazon の使用中にプロビジョニングされた AWS リソースをモニタリングする SageMaker

メトリクスを使用してマルチコンテナモデルをモニタリングする

推論パイプラインでマルチコンテナモデルをモニタリングするには、Amazon を使用します CloudWatch。 CloudWatch は raw データを収集し、それを読み取り可能なほぼリアルタイムのメトリクスに処理します。 SageMaker トレーニングジョブとエンドポイントは、 AWS/SageMaker名前空間に CloudWatch メトリクスとログを書き込みます。

次の表に、以下のメトリクスとディメンションの一覧を示します。

  • エンドポイントの呼び出し

  • トレーニングジョブ、バッチ変換ジョブ、エンドポイントインスタンス

ディメンションは、メトリクスを一意に識別する名前と値のペアです。1 メトリクスあたり最大 10 ディメンションを割り当てることができます。によるモニタリングの詳細については、 CloudWatch「」を参照してくださいAmazon SageMaker で Amazon をモニタリングする CloudWatch

エンドポイント呼び出しメトリクス

AWS/SageMaker 名前空間には、InvokeEndpoint への呼び出しからの次のリクエストメトリクスが含まれます。

メトリクスは 1 分間隔でレポートされます。

メトリクス 説明
Invocation4XXErrors

4xx HTTP レスポンスコードを返したモデルの InvokeEndpoint リクエスト数。4xx レスポンスごとに、 SageMaker は を送信します1

単位: なし

有効な統計: AverageSum

Invocation5XXErrors

5xx HTTP レスポンスコードを返したモデルの InvokeEndpoint リクエスト数。5xx レスポンスごとに、 SageMaker は を送信します1

単位: なし

有効な統計: AverageSum

Invocations

モデルエンドポイントに送信された number of InvokeEndpoint リクエスト。

モデルエンドポイントに送信されたリクエストの合計数を得るには、Sum 統計を使用します。

単位: なし

有効な統計: SumSample Count

InvocationsPerInstance

InstanceCountで によって正規化された、モデルに送信されたエンドポイント呼び出しの数ProductionVariant。 SageMaker は、各リクエストの値として 1/numberOfInstances を送信します。ここで、 numberOfInstancesは、リクエスト時のエンドポイント ProductionVariantでの のアクティブなインスタンスの数です。

単位: なし

有効な統計: Sum

ModelLatency モデルの応答にかかった時間。これには、リクエストを送信し、モデルのコンテナからレスポンスを取得するのにかかった時間と、コンテナ内で推論を完了するのにかかった時間が含まれます。ModelLatency は、推論パイプライン内のすべてのコンテナにかかった合計時間です。

単位: マイクロ秒

有効な統計: AverageSumMinMax、Sample Count

OverheadLatency

オーバーヘッド SageMaker に対して がクライアントリクエストに応答するのにかかった時間に追加されます。 OverheadLatencyは、リクエストを SageMaker 受信した時点からクライアントに応答を返すまでの時間から を引いた値で測定されますModelLatency。オーバーヘッドのレイテンシーは、リクエストとレスポンスのペイロードサイズ、リクエストの頻度、リクエストの認証、認可などの要因によって異なります。

単位: マイクロ秒

有効な統計: AverageSumMinMaxSample Count

ContainerLatency Inference Pipelines コンテナが から見た応答にかかった時間 SageMaker。 ContainerLatencyには、リクエストの送信、モデルのコンテナからの応答の取得、コンテナ内の推論の完了にかかる時間が含まれます。

単位: マイクロ秒

有効な統計: AverageSumMinMaxSample Count

エンドポイント呼び出しメトリクスのディメンション

ディメンション 説明
EndpointName, VariantName, ContainerName

指定のエンドポイントおよび指定のバリアントの ProductionVariant のエンドポイント呼び出しメトリクスをフィルタリングします。

推論パイプラインエンドポイントの場合、 は次のように、アカウント内のコンテナごとのレイテンシーメトリクスを SageMaker名前空間のエンドポイントコンテナメトリクスエンドポイントバリアントメトリクスとして CloudWatch 一覧表示します。ContainerLatency メトリクスは、推定パイプラインに対してのみ表示されます。

推論パイプラインの CloudWatch ダッシュボードには、各コンテナの各エンドポイントのレイテンシーメトリクスが一覧表示されます。

レイテンシーメトリクスは、エンドポイントおよびコンテナごとに、コンテナ、エンドポイント、バリアント、メトリクスの名前を表示します。

エンドポイントのレイテンシーメトリクス。

トレーニングジョブ、バッチ変換ジョブ、およびエンドポイントインスタンスメトリクス

/aws/sagemaker/TrainingJobs/aws/sagemaker/TransformJobs/aws/sagemaker/Endpoints 名前空間には、トレーニングジョブおよびエンドポイントインスタンスに関する以下のメトリクスが含まれています。

メトリクスは 1 分間隔でレポートされます。

メトリクス 説明
CPUUtilization

インスタンスで実行中のコンテナによって使用されている CPU ユニットの割合。値の範囲は 0%~100% で、CPU の数で乗算されます。例えば、CPU が 4 つの場合、CPUUtilization は 0%~400% になります。

トレーニングジョブの場合、CPUUtilization はインスタンスで実行中のアルゴリズムコンテナの CPU 使用率です。

バッチ変換ジョブの場合、CPUUtilization はインスタンスで実行中の変換コンテナの CPU 使用率です。

マルチコンテナモデルの場合、CPUUtilization は、インスタンスで実行中のすべてのコンテナによる CPU 使用率の合計です。

エンドポイントのバリアントの場合、CPUUtilization は、インスタンスで実行中のすべてのコンテナの CPU 使用率の合計です。

単位: パーセント

MemoryUtilization

インスタンスで実行中のコンテナによって使用されているメモリの割合。この値は 0%~100% です。

トレーニングジョブの場合、MemoryUtilization は、インスタンスで実行中のアルゴリズムコンテナによって使用されているメモリです。

バッチ変換ジョブの変換の場合、MemoryUtilization は、インスタンスで実行中の変換コンテナによって使用されているメモリです。

マルチコンテナモデルの場合、MemoryUtilization は、インスタンスで実行中のすべてのコンテナによって使用されているメモリの合計です。

エンドポイントのバリアントの場合、MemoryUtilization は、インスタンスで実行中のすべてのコンテナによって使用されているメモリの合計です。

単位: パーセント

GPUUtilization

インスタンスで実行中のコンテナによって使用されている GPU ユニットの割合です。GPUUtilization の範囲は 0%~100% で、GPU の数によって乗算されます。例えば、GPU が 4 つの場合、GPUUtilization は 0%~400% になります。

トレーニングジョブの場合、GPUUtilization は、インスタンスで実行中のアルゴリズムによって使用されている GPU です。

バッチ変換ジョブの場合、GPUUtilization は、インスタンスで実行中の変換コンテナによって使用されている GPU です。

マルチコンテナモデルの場合、GPUUtilization は、インスタンスで実行中のすべてのコンテナによって使用されている GPU の合計です。

エンドポイントのバリアントの場合、GPUUtilization は、インスタンスで実行中のすべてのコンテナによって使用されている GPU の合計です。

単位: パーセント

GPUMemoryUtilization

インスタンスで実行中のコンテナによって使用されている GPU メモリの割合。GPU MemoryUtilization の範囲は 0%~100% で、GPUs。例えば、GPU が 4 つの場合、GPUMemoryUtilization は 0%~400% になります。

トレーニングジョブの場合、GPUMemoryUtilization は、インスタンスで実行中のアルゴリズムコンテナで使用されている GPU メモリです。

バッチ変換ジョブの場合、GPUMemoryUtilization は、インスタンスで実行中の変換コンテナによって使用されている GPU メモリです。

マルチコンテナモデルの場合、GPUMemoryUtilization は、インスタンスで実行中のすべてのコンテナによって使用されている GPU の合計です。

エンドポイントのバリアントの場合、GPUMemoryUtilization は、インスタンスで実行中のすべてのコンテナによって使用されている GPU メモリの合計です。

単位: パーセント

DiskUtilization

instance. で実行されているコンテナが使用するディスク容量の割合。 DiskUtilization 範囲は 0%~100% です。このメトリクスは、バッチ変換ジョブではサポートされていません。

トレーニングジョブの場合、DiskUtilization は、インスタンスで実行中のアルゴリズムコンテナで使用されているディスク容量です。

エンドポイントバリアントの場合、DiskUtilization は、インスタンスで実行中の提供されたすべてのコンテナによって使用されているディスク容量の合計です。

単位: パーセント

トレーニングジョブ、バッチ変換ジョブ、およびエンドポイントインスタンスメトリクスのディメンション

ディメンション 説明
Host

トレーニングジョブの場合、Host の形式は [training-job-name]/algo-[instance-number-in-cluster] になります。このディメンションを使用して、指定されたトレーニングジョブとインスタンスのインスタンスメトリクスをフィルタリングします。このディメンション形式は、/aws/sagemaker/TrainingJobs 名前空間にのみ存在します。

バッチ変換ジョブの場合、Host の形式は [transform-job-name]/[instance-id] になります。このディメンションを使用して、指定されたバッチ変換ジョブとインスタンスのインスタンスメトリクスをフィルタリングします。このディメンション形式は、/aws/sagemaker/TransformJobs 名前空間にのみ存在します。

エンドポイントの場合、Host の形式は [endpoint-name]/[ production-variant-name ]/[instance-id]なります。このディメンションを使用して、指定されたエンドポイント、バリアント、インスタンスのインスタンスメトリクスをフィルタリングします。このディメンション形式は、/aws/sagemaker/Endpoints 名前空間にのみ存在します。

トレーニングジョブ、エンドポイント、ノートブックインスタンスのライフサイクル設定をデバッグしやすくするために、 はアルゴリズムコンテナ、モデルコンテナ、またはノートブックインスタンスのライフサイクル設定が Amazon CloudWatch Logs stdoutstderrに送信するもの SageMaker もすべて送信します。この情報を使用して、進行状況をデバッグおよび分析できます。

ログを使用して推論パイプラインをモニタリングする

次の表に、ロググループとログストリーム を示します SageMaker。 は Amazon に送信します。 CloudWatch

ログストリームは、同じソースを共有する一連のログイベントです。のログの各ソースは、個別のログストリーム CloudWatch を構成します。ロググループは、保持、モニタリング、アクセス制御について同じ設定を共有するログストリームのグループです。

ログ

ロググループ名 ログストリーム名
/aws/sagemaker/TrainingJobs

[training-job-name]/algo-[instance-number-in-cluster]-[epoch_timestamp]

/aws/sagemaker/Endpoints/[EndpointName]

[production-variant-name]/[instance-id]

[production-variant-name]/[instance-id]

[production-variant-name]/[instance-id]/[container-name provided in the SageMaker model] (For Inference Pipelines) Inference Pipelines ログでは、コンテナ名を指定しない場合、 は **container-1、container-2** など CloudWatchを使用して、モデルでコンテナが提供される順序で使用します。

/aws/sagemaker/NotebookInstances

[notebook-instance-name]/[LifecycleConfigHook]

/aws/sagemaker/TransformJobs

[transform-job-name]/[instance-id]-[epoch_timestamp]

[transform-job-name]/[instance-id]-[epoch_timestamp]/data-log

[transform-job-name]/[instance-id]-[epoch_timestamp]/[container-name provided in the SageMaker model] (For Inference Pipelines) Inference Pipelines ログでは、コンテナ名を指定しない場合、 は **container-1、container-2** など CloudWatchを使用して、モデルでコンテナが提供される順序で使用します。

注記

SageMaker は、ライフサイクル設定でノートブックインスタンスを作成するときに/aws/sagemaker/NotebookInstancesロググループを作成します。詳細については、「LCC スクリプトを使用して SageMaker ノートブックインスタンスをカスタマイズする」を参照してください。

SageMaker ログ記録の詳細については、「」を参照してくださいAmazon で Amazon SageMaker イベントをログに記録する CloudWatch