推論のためのモデルをデプロイする - Amazon SageMaker AI

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

推論のためのモデルをデプロイする

Amazon SageMaker AI を使用すると、トレーニングされた機械学習モデルから予測または推論の取得を開始できます。SageMaker AI の広範な ML インフラストラクチャとモデルデプロイオプションは、ML 推論のあらゆるニーズを満たすのに役立ちます。SageMaker AI Inference を使用すると、モデルのデプロイメントをスケーリングし、本番環境でモデルをより効果的に管理して、運用上の負担を軽減できます。SageMaker AI には、低遅延推論を取得するためのリアルタイムエンドポイント、フルマネージドインフラストラクチャと自動スケーリング用のサーバーレスエンドポイント、リクエストのバッチ用の非同期エンドポイントなど、さまざまな推論オプションが用意されています。ユースケースに適した推論オプションを活用することで、効率的なモデルのデプロイと推論を確保できます。

機能を選択する

SageMaker AI を使用して ML モデルをデプロイする際、いくつかのユースケースがあります。このセクションでは、これらのユースケースと、ユースケースごとに推奨される SageMaker AI の機能について説明します。

ユースケース

SageMaker AI を使用して ML モデルをデプロイする主なユースケースを次に示します。

  • ユースケース 1: 機械学習モデルをローコード環境またはノーコード環境にデプロイする。初心者や SageMaker AI を初めて使用するユーザーが、Amazon SageMaker Studio インターフェイスを介して Amazon SageMaker JumpStart を使用して、トレーニング済みのモデルをデプロイできます。複雑な設定は必要ありません。

  • ユースケース 2: コードを使用して、より柔軟性と制御性に優れた機械学習モデルをデプロイする。経験豊富な ML プラクティショナーは、SageMaker AI Python SDK の ModelBuilder クラスを使用して、アプリケーションニーズに合わせてカスタマイズされた設定で独自のモデルをデプロイできます。これにより、インスタンスタイプ、ネットワーク分離、リソース割り当てなど、さまざまな設定をきめ細かく制御できます。

  • ユースケース 3: 機械学習モデルを大規模にデプロイする。本番環境でモデルを大規模に管理したい上級ユーザーや組織の場合は、 AWS SDK for Python (Boto3)と を、必要な Infrastructure as Code (IaC) および CI/CD ツールCloudFormationとともに使用して、リソースをプロビジョニングし、リソース管理を自動化します。

次の表は、各ユースケースに対応する SageMaker AI 機能の主な考慮事項とトレードオフを示しています。

ユースケース 1 ユースケース 2 ユースケース 3
SageMaker AI の機能 Studio の JumpStart を使用して、基本モデルのデプロイを高速化します。 SageMaker Python SDK の ModelBuilder を使用してモデルをデプロイします。 を使用してモデルを大規模にデプロイおよび管理しますCloudFormation
説明 Studio UI を使用して、事前にトレーニングされたモデルをカタログから事前設定済みの推論エンドポイントにデプロイします。このオプションは、市民データサイエンティストや、複雑な設定を行わずにモデルをデプロイしたいユーザーに最適です。 Amazon SageMaker AI Python SDK の ModelBuilder クラスを使用して、独自のモデルをデプロイし、デプロイ設定を構成します。このオプションは、経験豊富なデータサイエンティストや、独自のモデルをデプロイして、きめ細かな制御を行う必要があるすべてのユーザーに最適です。 CloudFormationおよび Infrastructure as Code (IaC) を使用して、SageMaker AI モデルをデプロイおよび管理するためのプログラムによる制御と自動化を行います。このオプションは、一貫性のある反復可能なデプロイを必要とする上級ユーザーに最適です。
最適化の対象 一般的なオープンソースモデルの迅速で、効率的なデプロイ 独自のモデルのデプロイ 本番環境でのモデルの継続的な管理
考慮事項 コンテナ設定と特定のアプリケーションのニーズに対するカスタマイズの欠如 UI を使用できない。Python コードの開発と保守に慣れている必要があります インフラストラクチャ管理と組織リソースが必要であり、 AWS SDK for Python (Boto3)または CloudFormationテンプレートに精通している必要があります。
推奨環境 SageMaker AI ドメイン AWS 認証情報と SageMaker Python SDK がインストールされている Python 開発環境、または SageMaker JupyterLab などの SageMaker AI IDE。 AWS CLI、ローカル開発環境、Infrastructure as Code (IaC) および CI/CD ツール

追加オプション

SageMaker AI には推論のユースケース向けにさまざまなオプションが用意されており、デプロイの技術的な幅と深さを選択できます。

  • エンドポイントにモデルをデプロイする。モデルをデプロイするときは、次のオプションを検討します。

    • リアルタイム推論。リアルタイム推論は、インタラクティブで低レイテンシーの要件がある推論ワークロードに最適です。

    • Amazon SageMaker Serverless Inference を使用してモデルをデプロイする。サーバーレス推論を使用して、基盤となるインフラストラクチャのいずれも設定または管理せずにモデルをデプロイします。このオプションは、トラフィックのスパート間にアイドル期間があり、コールドスタートを許容できるワークロードに最適です。

    • 非同期推論。受信した推論リクエストをキューに入れて非同期に処理します。このオプションは、ペイロードサイズが大きく (最大 1 GB)、処理時間が長い (最大 1 時間)、ほぼリアルタイムのレイテンシー要件があるリクエストに最適です。

  • コスト最適化。推論コストを最適化するには、次のオプションを検討します。

    • SageMaker Neo によるモデルパフォーマンスの最適化。 SageMaker Neo を使用して、パフォーマンスと効率に優れた機械学習モデルを最適化して実行し、Inferentia AWSチップなどの環境で実行するようにモデルを自動的に最適化することで、コンピューティングコストを最小限に抑えることができます。

    • Amazon SageMaker AI モデルの自動スケーリング。自動スケーリングを使用して、受信トラフィックパターンに基づいてエンドポイントのコンピューティングリソースを動的に調整します。これにより、特定の時間に使用するリソースに対してのみ料金を支払うことが可能になり、コストを最適化できます。