View a markdown version of this page

Amazon SageMaker Studio を使用して推論レコメンデーションを取得する - Amazon SageMaker AI

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

Amazon SageMaker Studio を使用して推論レコメンデーションを取得する

Amazon SageMaker Studio を使用すると、生成 AI 推論のレコメンデーションに関するガイド付きのend-to-endのコンソールエクスペリエンスが得られます。API を呼び出すコードを記述する代わりに、ビジュアルワークフローを使用して最適化ジョブを設定します。プリセットユースケースプロファイルを選択し、最適化目標を設定し、モデルとコンピューティングを選択し、ランク付けされたデプロイ対応設定を確認してデプロイします。このエクスペリエンスでは、 API と同じベンチマークインフラストラクチャを使用します。API を使用する場合、同じワークフローを AI レコメンデーションジョブと呼びます。API ワークフローの詳細については、「」を参照してください生成 AI 推論デプロイの推奨事項を取得する。

推論レコメンデーションエクスペリエンスは、Studio の Jobs, Inference Optimization で利用できます。

前提条件

このタスクを完了するには、Amazon SageMaker Studio や生成 AI モデルのデプロイに関する経験は必要ありません。Studio で推論最適化ジョブを作成する前に、以下が必要です。

  • Amazon SageMaker Studio ドメインを持つ AWS アカウント。

  • SageMaker AI 推論最適化オペレーションの IAM アクセス許可。

  • Amazon S3 のモデルアーティファクトへの SageMaker Amazon S3実行ロール。詳細については、「SageMaker AI 実行ロールの使用方法」を参照してください。

料金

レコメンデーションを生成しても、追加コストは発生しません。標準コンピューティングコストは、ベンチマーク中に SageMaker AI がプロビジョニングする最適化ジョブとエンドポイントに適用されます。ジョブが完了すると、SageMaker AI は自動的にこれらのエンドポイントを削除します。料金情報については、Amazon SageMakerの料金」を参照してください。

ステップ 1: 最適化ジョブを作成する

  1. Amazon SageMaker Studio アプリケーションを開きます。

  2. 左側のナビゲーションペインのジョブで、推論の最適化を選択します。

    推論最適化ページには、既存のジョブがリストされ、最初にソートされ、名前、ステータス、ベースモデル、作成日が表示されます。

  3. [作成] を選択します。Studio はジョブ設定ページを開きます。このページには、次のステップで完了する戦略、モデル、コンピューティングのセクションが含まれています。

Studio の推論最適化ランディングページ。既存のジョブのリストと作成ボタンが表示されます。

ステップ 2: 戦略を設定する

Strategy セクションで、プリセットユースケースプロファイルと最適化目標を選択します。プロファイルは、SageMaker AI がベンチマークするトラフィックパターンを決定するため、トークンの分散と同時実行を手動で指定する必要はありません。

  1. ユースケースでは、プライマリワークロードのトラフィックを最もよく表すプロファイルを選択します。

    [Generate] (生成)

    コード生成などの短い入力と長い出力用に最適化されています。

    インタラクション

    マルチターンチャットなど、入力と出力のバランスが取れた高速マルチターン交換用に最適化されています。

    概要

    長い入力と短い出力用に最適化されています。長いドキュメントを簡潔な要約にまとめます。

    カスタム

    独自のデータセットとパラメータを用意します。データを手動で追加し、同時実行トークンと出力トークンの長さを入力します。

  2. 最適化の目標については、SageMaker AI が最適化モデルのコスト、レイテンシー、スループットのバランスをどのように取るかを選択します。

    コストを最小限に抑える

    少量のワークロードで最も安価なインフラストラクチャコストを見つけます。

    レイテンシーの最小化

    スループットとコストよりも応答性を優先します。

    スループットを最大化する

    ハイボリュームワークロードの 1 秒あたりのトークンの最大数を提供します。

ユースケースのプリセットと最適化の目標オプションを示す戦略セクション。

カスタムを選択すると、追加のフィールドが表示され、独自の代表的なデータに対してベンチマークできます。

データ (S3)

JSON Lines (JSONL) 形式で、評価データセットの Amazon S3 URI を入力または参照します。SageMaker AI はこのデータを使用してモデルの最適化とベンチマークを行います。

同時実行

シミュレートする同時ユーザー (同時リクエスト) の数を入力します。

出力トークン

リクエストあたりの出力トークンの平均数を入力します。

カスタムユースケースフィールド: データ (S3)、同時実行、出力トークン。

ステップ 3: モデルを選択する

モデルセクションで、選択を選択します。モデルの選択ダイアログボックスが開き、サポートされているモデルソースごとにタブが表示されます。モデルソースのタブを選択し、必要な情報を入力し、選択を選択します。

JumpStart

JumpStart カタログを参照し、基盤モデル ( gpt-oss-20bや などmeta-textgeneration-llama-3-1-8b-instruct) を選択します。検索ボックスを使用して名前でフィルタリングします。テーブルにはモデル名、プロバイダー、タスクが表示されます。モデルで必要な場合は、プロンプトが表示されたらエンドユーザーライセンス契約 (EULA) を承諾します。

ログ記録済み

SageMaker AI Model Registry から登録されたモデルパッケージグループを検索します。モデルカスタマイズジョブでカスタマイズしたモデルもここに表示されます。アーティファクト URI は自動的に解決されます。

デプロイ可能

既存の SageMaker AI モデルを名前で検索します (以前のデプロイやトレーニングジョブのモデルなど)。アーティファクト URI はモデルメタデータから解決されます。

S3

独自のモデルアーティファクトを取り込みます。[名前] に、モデルの名前を入力します。Artifact (S3) の場合は、モデルアーティファクトの Amazon S3 URI を入力または参照します (例: s3://amzn-s3-demo-bucket/model.tar.gz)。

JumpStart タブのモデルの選択ダイアログボックスには、JumpStart、Logged、Deployable、S3 のタブがあります。
S3 タブのモデルの選択ダイアログボックスには、名前とアーティファクト (S3) フィールドが表示されます。

ステップ 4: コンピューティングを選択する (オプション)

最適化目標としてレイテンシーの最小化またはスループットの最大化を選択した場合は、オプションでコンピューティングセクションを展開して、SageMaker AI が評価するインスタンスを制御できます。

ソース

デフォルトのオンデマンドコンピューティングとリザーブドキャパシティのいずれかを選択します。SageMaker AI Flexible Training Plans からキャパシティを予約している場合は、このドロップダウンリストに表示されます。

インスタンス (複数可)

SageMaker AI で評価とベンチマークを行うインスタンスタイプを最大 3 つ選択します (例: ml.g6e.2xlargeおよび ml.g7e.2xlarge)。インスタンスを選択しない場合、SageMaker AI はモデルの要件に基づいて互換性のあるインスタンスを選択します。

インスタンスの選択

コスト最小化の目標では、SageMaker AI が推奨インスタンスを選択するため、インスタンスを選択できません。

ソースドロップダウンとインスタンス (複数可) の下にある選択したインスタンスタイプを示すコンピューティングセクション。

ステップ 5: ジョブを起動する

ジョブ設定が完了したら、最適化を選択して送信します。SageMaker AI がジョブの詳細ページを開き、ステータスが実行中から完了に移行します。Interact などのプリセットユースケースの場合、SageMaker AI はワークロードを事前に検証された設定と照合します。これにより、カスタムベンチマークよりも迅速にレコメンデーションを返すことができます。カスタムベンチマークの場合、ジョブには通常 1~3 時間かかります。

詳細ページのタブを使用してジョブを検査します。

概要:

パフォーマンスメトリクスを含むランク付けされたレコメンデーション。このタブは、ジョブが完了すると入力されます。

設定

ベースモデル、ユースケース、目標、コンピューティングなど、送信した設定。

詳細

ジョブメタデータ、タイムスタンプ、出力アーティファクト。

実行中のジョブを停止するには、「アクション」を選択し、「停止」を選択します。

実行中の最適化ジョブの詳細ページ。アクションボタン、設定タブ、実行中ステータスが表示されます。

ステップ 6: モニタリングとトラブルシューティング

ジョブを送信すると、ステータスに、選択したインスタンスタイプの数、カスタムデータセットを提供したかどうか、および最適化目標に応じて、一定期間実行中と表示されます。ジョブには数分から数時間かかる場合があります。最適化目標に応じて、ジョブは他の Studio ページからモニタリングできるさまざまなステップを実行します。

コストを最小限に抑える

SageMaker AI は、推奨されるインスタンスタイプを使用してエンドポイントを作成し、ベンチマークジョブを実行します。エンドポイントを確認するには、デプロイでエンドポイントを選択し、InService ステータスを探します。ベンチマークの実行を確認するには、「ジョブ」で「トレーニング」を選択し、「トレーニングジョブ」でジョブを見つけます。

レイテンシーの最小化

SageMaker AI は、インスタンスタイプごとに 1 つ以上のエンドポイントを作成します。モデルアーキテクチャとインスタンスタイプがカーネル調整デプロイをサポートしている場合、SageMaker AI はそのデプロイタイプを使用します。それ以外の場合、SageMaker AI は標準デプロイを使用します。次に、SageMaker AI は組み合わせごとにベンチマークトレーニングジョブを実行します。エンドポイントページとトレーニングページの両方をモニタリングして、ログを表示します。

スループットを最大化する

モデルアーキテクチャとインスタンスタイプが投機的デコードをサポートしている場合、まずトレーニングジョブを実行してドラフトモデルをトレーニングし、次に SageMaker AI がエンドポイントをデプロイします。エンドポイントページとトレーニングページの両方をモニタリングして、ログを表示します。詳細については、「投機デコーディング」を参照してください。

エンドポイントのクリーンアップ

SageMaker AI は、ジョブの完了後に最適化ジョブが作成するエンドポイントを自動的に削除します。

選択したインスタンスタイプごとに推論最適化ジョブによって作成された InService エンドポイントを示すエンドポイントページ。
各ベンチマークテスト設定の進行中のベンチマークトレーニングジョブを示すトレーニングジョブページ。

ステップ 7: レコメンデーションを確認してデプロイする

ジョブが完了すると、概要タブに、GitHub ウェブサイトの NVIDIA AIPerf によって実行されたベンチマークから SageMaker AI が生成したランク付けされた推論パッケージが表示されます。 AIPerf 各パッケージには、最適化された設定、パフォーマンスメトリクス (最初のトークンまでの時間 (TTFT)、トークン間レイテンシー (ITL)、スループット、コストなど)、推奨されるインスタンスタイプ、デプロイボタンが表示されます。

ランク付けされた最適化された推論パッケージとそのメトリクスとデプロイボタンを示す完了したジョブ。
  1. ランク付けされたパッケージとそのメトリクスを確認し、任意のパッケージにデプロイを選択します。

  2. デプロイダイアログボックスで、SageMaker AI はエンドポイント名とインスタンスタイプを事前に入力します。新しいエンドポイントにデプロイするか、既存のエンドポイントを更新するかを選択します。

    確認すると、SageMaker AI は次のオペレーションを実行します。

    • CreateModel — 最適化モデルを登録します。

    • CreateEndpointConfig — エンドポイント設定を設定します。

    • CreateEndpoint — エンドポイントをプロビジョニングします。

  3. エンドポイントが InService ステータスになるまで待ちます。その後、これを呼び出して推論リクエストを処理できます。

最適化ジョブの管理

ジョブ、推論の最適化ページでは、ジョブを一元管理できます。

  • 検索とフィルタリング。検索バーを使用してジョブを名前でフィルタリングします。

  • 実行中のジョブを停止します。ジョブを選択し、アクションを選択し、停止を選択して確認します。

  • ジョブを削除します。完了したジョブまたは失敗したジョブを選択し、アクションを選択し、削除を選択して確認します。

  • 詳細を検査します。任意のジョブを選択して、概要、設定、詳細タブで詳細ページを開きます。

モデルを微調整または更新した後、 AWS リージョンで新しいインスタンスタイプが利用可能になったとき、トラフィックパターンが大幅に変更されたとき、またはサービングコンテナまたはフレームワークのアップグレード後に、最適化ジョブを再実行することを検討してください。また、2 週間ごとなど定期的にジョブを再実行して、SageMaker AI が追加する最新の最適化を選択することもできます。