Greengrass コアデバイスで Amazon SageMaker Edge Manager を使用する - AWS IoT Greengrass

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

Greengrass コアデバイスで Amazon SageMaker Edge Manager を使用する

重要

SageMaker Edge Manager は 2024 年 4 月 26 日に廃止されます。エッジデバイスにモデルをデプロイし続ける方法の詳細については、SageMaker 「 Edge Manager のサポート終了」を参照してください。

Amazon SageMaker Edge Manager は、エッジデバイスで実行されるソフトウェアエージェントです。 SageMaker Edge Manager はエッジデバイスのモデル管理を提供するため、Amazon SageMaker Neo でコンパイルされたモデルを Greengrass コアデバイス上で直接パッケージ化して使用できます。 SageMaker Edge Manager を使用すると、コアデバイスからモデルの入力および出力データをサンプリングし、そのデータをモニタリングと分析AWS クラウドのために に送信することもできます。 SageMaker Edge Manager は SageMaker Neo を使用してターゲットハードウェアのモデルを最適化するため、DLR ランタイムをデバイスに直接インストールする必要はありません。Greengrass デバイスでは、 SageMaker Edge Manager はローカルAWS IoT証明書をロードしたり、AWS IoT認証情報プロバイダーエンドポイントを直接呼び出したりしません。代わりに、 SageMaker Edge Manager はトークン交換サービスを使用して TES エンドポイントから一時的な認証情報を取得します。

このセクションでは、 SageMaker Edge Manager が Greengrass コアデバイスでどのように機能するかについて説明します。

SageMaker Edge Manager が Greengrass デバイスで動作する仕組み

SageMaker Edge Manager エージェントをコアデバイスにデプロイするには、 aws.greengrass.SageMakerEdgeManagerコンポーネントを含むデプロイを作成します。 は、デバイス上の Edge Manager エージェントのインストールとライフサイクルAWS IoT Greengrassを管理します。エージェントバイナリの新しいバージョンが利用可能になったとき、aws.greengrass.SageMakerEdgeManager コンポーネントの更新されたバージョンをデプロイして、デバイスにインストールされているエージェントのバージョンをアップグレードします。

で SageMaker Edge Manager を使用する場合AWS IoT Greengrass、ワークフローには以下の大まかなステップが含まれます。

  1. SageMaker Neo でモデルをコンパイルします。

  2. SageMaker エッジパッケージングジョブを使用して SageMaker Neo コンパイル済みモデルをパッケージ化します。モデルにエッジパッケージングジョブを実行するとき、Greengrass コアデバイスにデプロイ可能なアーティファクトとして、パッケージ化されたモデルでモデルコンポーネントを作成することを選択できます。

  3. カスタム推論コンポーネントを作成します。エッジマネージャーエージェントとやり取りしてコアデバイスで推論を実行するため、この推論コンポーネントを使用できます。これらの操作には、モデルのロード、推論を実行する予測リクエストの呼び出し、コンポーネントのシャットダウン時にモデルのアンロードが含まれます。

  4. SageMaker Edge Manager コンポーネント、パッケージ化されたモデルコンポーネント、推論コンポーネントをデプロイして、デバイスの推論エンジン (Edge Manager エージェント) SageMaker でモデルを実行します。

SageMaker Edge Manager と連携するエッジパッケージングジョブと推論コンポーネントの作成の詳細については、Amazon SageMaker デベロッパーガイド「 でモデルパッケージと Edge Manager エージェントをデプロイAWS IoT Greengrassする」を参照してください。

このチュートリアル: SageMaker Edge Manager の開始方法チュートリアルでは、サンプル推論およびモデルコンポーネントの作成に使用できる AWSが提供するサンプルコードを使用して、既存の Greengrass コアデバイスで SageMaker Edge Manager エージェントをセットアップして使用する方法を示します。

Greengrass コアデバイスで SageMaker Edge Manager を使用する場合、キャプチャデータ機能を使用してサンプルデータを にアップロードすることもできますAWS クラウド。キャプチャデータは、今後の分析のために S3 バケットまたはローカルディレクトリに推論入力、推論結果、および追加の推論データをアップロードするために使用する SageMaker 機能です。 SageMaker Edge Manager でキャプチャデータを使用する方法の詳細については、「Amazon SageMaker デベロッパーガイド」の「モデルの管理」を参照してください。

要件

Greengrass コアデバイスで SageMaker Edge Manager エージェントを使用するには、次の要件を満たす必要があります。

  • Amazon Linux 2 で実行されている Greengrass コアデバイス、Debian ベースの Linux プラットフォーム (x86_64 またはArmv8)、または Windows (x86_64)。アカウントをお持ちでない場合は、「チュートリアル: AWS IoT Greengrass V2 の開始方法」を参照してください。

  • Python 3.6 以降 (ご使用の Python のバージョン用 pip がコアデバイスにインストールされていること)。

  • 次のように設定された Greengrass デバイスのロール:

    • 次の IAM ポリシーの例で示されているように、credentials.iot.amazonaws.comsagemaker.amazonaws.com がロールの継承を可能にする信頼関係。

      { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "credentials.iot.amazonaws.com" }, "Action": "sts:AssumeRole" }, { "Effect": "Allow", "Principal": { "Service": "sagemaker.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
    • IAM AmazonSageMakerEdgeDeviceFleetPolicy マネージドポリシー。

    • 次の IAM ポリシーの例で示されている s3:PutObject アクション。

      { "Version": "2012-10-17", "Statement": [ { "Action": [ "s3:PutObject" ], "Resource": [ "*" ], "Effect": "Allow" } ] }
  • Greengrass コアデバイスAWS リージョンと同じ AWS アカウントと で作成された Amazon S3 バケット。 SageMaker Edge Manager では、エッジデバイスフリートを作成し、デバイスで実行中の推論からサンプルデータを保存するために S3 バケットが必要です。S3 バケットを作成する方法の情報については、「Amazon S3 の使用を開始」を参照してください。

  • Greengrass コアデバイスと同じAWS IoTロールエイリアスを使用する SageMaker エッジデバイスフリート。詳細については、「エッジデバイスフリートを作成する」を参照してください。

  • Greengrass コアデバイスは、 SageMaker エッジデバイスフリートにエッジデバイスとして登録されています。エッジデバイス名は、コアデバイスの AWS IoT モノ名に一致する必要があります。詳細については、「Greengrass コアデバイスを登録する」を参照してください。

SageMaker Edge Manager の使用を開始する

SageMaker Edge Manager の使用を開始するには、チュートリアルを完了します。このチュートリアルでは、既存のコアデバイスで AWSが提供するサンプルコンポーネントを使用して SageMaker Edge Manager の使用を開始する方法を示します。これらのサンプルコンポーネントは、 SageMaker Edge Manager コンポーネントを依存関係として使用して Edge Manager エージェントをデプロイし、 SageMaker Neo を使用してコンパイルされた事前トレーニング済みモデルを使用して推論を実行します。詳細については、「チュートリアル: SageMaker Edge Manager の開始方法」を参照してください。