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

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

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

重要

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

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コンポーネントを含むデプロイを作成します。 AWS IoT Greengrass は、デバイスへの Edge Manager エージェントのインストールとライフサイクルを管理します。エージェントバイナリの新しいバージョンが利用可能になったとき、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 の使用を開始するチュートリアルでは、 が提供するサンプルコードを使用して、既存の Greengrass AWSコアデバイスで 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.comと がロールを引き受けsagemaker.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" } ] }
    • AmazonSageMakerEdgeDeviceFleetPolicy IAM 管理ポリシー。

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