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

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

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

Amazon SageMaker AI を使用すると、トレーニング済みの機械学習モデルから予測または推論の取得を開始できます。SageMaker AI は、ML インフラストラクチャとモデルのデプロイオプションを幅広く提供しており、ML 推論のすべてのニーズを満たすのに役立ちます。SageMaker AI 推論を使用すると、モデルのデプロイをスケーリングし、本番環境でモデルをより効果的に管理し、運用上の負担を軽減できます。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 ツール AWS CloudFormation とともに使用して、リソースをプロビジョニングし、リソース管理を自動化します。

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

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