View a markdown version of this page

モデルのデプロイ - Amazon SageMaker AI

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

モデルのデプロイ

トレーニングジョブが完了すると、トレーニングされたモデルは、出力モデルパッケージグループのモデルパッケージとして使用できます。デプロイには 2 つのオプションがあります。

オプション 1: SageMaker AI AI 推論を使用してデプロイする

リアルタイム、サーバーレス、または非同期予測のために、SageMaker AI 推論エンドポイントでモデルをホストします。このオプションを使用すると、インスタンスタイプ、スケーリングポリシー、ネットワーク設定をきめ細かく制御できます。これは、低レイテンシーの提供、カスタム推論ロジック、または既存の SageMaker AI ワークフローとの緊密な統合が必要な場合に適しています。

デプロイするには、完了したトレーニングジョブOutputModelPackageArnから を取得し、それを使用してエンドポイントを作成します。

# Retrieve the output model ARN from your completed job aws sagemaker describe-job \ --job-name "my-agent-rft-job" \ --job-category AgentRFT \ --region us-west-2

完全なデプロイオプションと設定については、SageMaker AI ドキュメントの「推論用のモデルのデプロイ」を参照してください。

オプション 2: Amazon Bedrock にインポートする

モデルを Amazon Bedrock にインポートして、エンドポイント設定を必要とせずに Bedrock のマネージド推論 APIsを使用します。Amazon Bedrock は、カスタマイズされたオープンソースの基盤モデル (Mistral AI や Llama など) と、SageMaker AI で微調整された Amazon Nova モデルのインポートをサポートしています。詳細については、「Amazon Bedrock ユーザーガイド」の「Amazon Bedrock に事前トレーニング済みのモデルをインポートする」を参照してください。Nova モデルについては、「カスタムモデルの作成によるインポート」を参照してください。

SageMaker AI Studio を使用してデプロイする

  • Jobs > Training に移動し、マルチターン RL タブを選択します。

  • 完了したジョブを選択し、カスタムモデルの詳細でモデルを選択して、パフォーマンスメトリクス、モデル系統、トレーニングログを確認します。

  • ガバナンスタブで、モデルを承認してデプロイの対象にします。

  • [デプロイ] をクリックします。SageMaker AI リアルタイムエンドポイントにデプロイするか、Amazon Bedrock を介してデプロイするか、新しいエンドポイントを作成するか、既存のエンドポイントを再利用するかを選択します。

  • インスタンスタイプを選択し、オプションで VPC 設定、IAM ロール、KMS 暗号化キーを設定します。

  • デプロイタブでデプロイの進行状況をモニタリングします。

  • デプロイ > エンドポイントに移動します。エンドポイントと関連する推論コンポーネントが InService のステータスに達すると、エンドポイントを呼び出す準備が整います。

SageMaker AI Python SDK を使用してデプロイする

SageMaker AI エンドポイントにデプロイする:

from sagemaker.serve import ModelBuilder from sagemaker.core.resources import ModelPackage # Get the output model package from your completed training job model_package = ModelPackage.get( model_package_name=job.output_model_package_arn ) model_builder = ModelBuilder( model=model_package, image_uri="763104351884.dkr.ecr.us-west-2.amazonaws.com/djl-inference:0.36.0-lmi24.0.0-cu129", instance_type="ml.g6e.48xlarge", ) model_builder.accept_eula = True model_builder.build() endpoint = model_builder.deploy( endpoint_name="mtrl-finetuned-endpoint", instance_type="ml.g6e.48xlarge", initial_instance_count=1, )

エンドポイントを呼び出します。

import json response = endpoint.invoke( body=json.dumps({ "model": "/opt/ml/model", "messages": [{"role": "user", "content": "What is 25 * 4?"}], "max_tokens": 200, "stream": False, }).encode("utf-8"), content_type="application/json", )