AWS SageMaker の事前トレーニング済みモデルを設定する

AWS コンソールにログインして Amazon SageMaker に移動します。

AWS コンソールのスクリーンショット

Amazon SageMaker Studio に移動します。

Amazon SageMaker Studio のスクリーンショット

[Quick start (クイック スタート)] > [Execution role (実行ロール)]> [Create an IAM role (IAM ロールを作成)] の順に選択します。

Quick start のスクリーンショット

[Create role (ロールを作成)] を、[送信] の順にクリックします。

Create an IAM role (IAM ロールを作成) のスクリーンショット

SageMaker の設定にはしばらく時間がかかります。準備ができたら[OpenStudio (Studio を開く)] をクリックします。

セットアップ後のスクリーンショット

[Go to SageMake JumpStart (SageMake JumpStart に移動)] をクリックします。

SageMaker JumpStart のスクリーンショット

[Inception V3] を見つけてクリックします。

ビジョン モデルのスクリーンショット

[Machine Type (マシン タイム)] を ml.m5.large に変更し、[Endpoint Name (エンドポイント名)] を「image-labeller-endpoint」などの読みやすい名前に変更して [Deploy (デプロイ)] をクリックします。

デプロイ モデルのスクリーンショット

AWS SageMaker でモデルのデプロイが開始されます。

デプロイ開始のスクリーンショット

デプロイが完了したら [Open Notebook (ノートブックを開く)] をクリックします。

エンドポイント ステータスのスクリーンショット

ノートブックの 3 つのコード ブロックをすべて実行して、正常に動作していることを確認します。query_endpointendpoint_name を書き留めておきます。これと、AWS SageMaker ノートブックがあるリージョンを InvokeLabeller AWS Lambda に追加する必要があります。

Jupyter ノートブックの使用方法については、ドキュメントをご参照ください

エンドポイントのクエリのスクリーンショット

InvokeLabeller の src/app.py ファイルを開いて、query_endpoint を探します。endpoint_name とクライアントの region_name を、AWS SageMaker ノートブックと一致するように変更します。

def query_endpoint(img):
  endpoint_name = 'jumpstart-dft-image-labeller-endpoint'
  client = boto3.client(service_name='runtime.sagemaker', region_name='us-west-1')
  response = client.invoke_endpoint(EndpointName=endpoint_name, ContentType='application/x-image', Body=img)
  model_predictions = json.loads(response['Body'].read())['predictions'][0]
  return model_predictions

SageMaker の設定が完了したら、次のステップは、ImageLabeller を BitbucketGitHub、または Gitlab にデプロイすることです。

推奨

DevOps コミュニティ

DevOps ラーニング パス

無料で始める