クイックスタート: Studio で Amazon EMRクラスターを起動する SageMaker サンドボックスドメインを作成する - Amazon SageMaker

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

クイックスタート: Studio で Amazon EMRクラスターを起動する SageMaker サンドボックスドメインを作成する

このセクションでは、Amazon SageMaker Studio での完全なテスト環境のクイックセットアップについて説明します。ユーザーが Studio から直接新しい Amazon EMRクラスターを起動できるようにする新しい Studio ドメインを作成します。このステップでは、Amazon EMRクラスターに接続して実行を開始できるノートブックの例を示します。Spark ワークロード。このノートブックを使用して、Amazon Spark 分散処理と OpenSearch ベクトルデータベースを使用して取得拡張生成システム (RAG) EMR を構築します。

注記

開始するには、 にサインインします。 AWS を使用した マネジメントコンソール AWS Identity and Access Management 管理者権限を持つ (IAM) ユーザーアカウント。にサインアップする方法の詳細については、「」を参照してください。 AWS アカウントを作成し、管理アクセス権を持つユーザーを作成します。「」を参照してくださいAmazon SageMaker の前提条件

ステップ 1: Studio で Amazon EMRクラスターを起動するための SageMaker ドメインを作成する

次のステップでは、 AWS CloudFormation 新しい SageMakerドメインを自動的に作成する スタック。また、スタックはユーザープロファイルを作成し、必要な環境とアクセス許可を設定します。 SageMaker ドメインは、Studio から Amazon EMRクラスターを直接起動できるように設定されています。この例では、Amazon EMRクラスターは同じ に作成されます。 AWS 認証 SageMaker なしの アカウント。その他の AWS CloudFormation getting_started GitHub リポジトリの Kerberos など、さまざまな認証方法をサポートする スタック。

注記

SageMaker では、 あたり 5 つの Studio ドメインが許可されます。 AWS アカウントと AWS リージョン デフォルトでは、 です。スタックを作成する前に、アカウントにリージョンに 4 つ以下のドメインがあることを確認してください。

Studio から Amazon EMRクラスターを起動するための SageMaker ドメインを設定するには、次の手順に従います。
  1. この の raw ファイルをダウンロードする AWS CloudFormationsagemaker-studio-emr GitHub リポジトリの テンプレート

  2. に移動する AWS CloudFormation コンソール: https://console.aws.amazon.com/cloudformation

  3. スタックの作成 を選択し、ドロップダウンメニューから新しいリソース (標準) を選択します。

  4. ステップ 1

    1. テンプレートの準備 セクションで、既存のテンプレートの選択 を選択します。

    2. [テンプレートの指定] セクションで、[テンプレートファイルのアップロード] を選択します。

    3. ダウンロードした をアップロードする AWS CloudFormation テンプレート を選択し、次へ を選択します。

  5. ステップ 2 で、スタック名を入力し、次に SageMakerDomainNameを選択します。

  6. ステップ 3 では、すべてのデフォルト値を保持し、次へ を選択します。

  7. ステップ 4 で、リソースの作成を承認するチェックボックスをオンにし、スタックの作成 を選択します。これにより、アカウントとリージョンに Studio ドメインが作成されます。

ステップ 2: Studio UI から新しい Amazon EMRクラスターを起動する

次の手順では、Studio UI から新しい Amazon EMRクラスターを作成します。

  1. の SageMaker コンソールに移動https://console.aws.amazon.com/sagemaker/し、左側のメニューでドメインを選択します。

  2. ドメイン名 GenerativeAIDomain をクリックして、ドメインの詳細ページを開きます。

  3. ユーザープロファイル から Studio を起動しますgenai-user

  4. 左側のナビゲーションペインで、「データ」、「Amazon EMR クラスター」に移動します。

  5. Amazon EMRクラスターページで、 の作成を選択します。テンプレート SageMaker Studio Domain No Auth EMR created by the を選択します。 AWS CloudFormation スタック を選択し、次へ を選択します。

  6. 新しい Amazon EMRクラスターの名前を入力します。オプションで、コアノードとマスターノードのインスタンスタイプ、アイドルタイムアウト、コアノードの数など、他のパラメータを更新します。

  7. リソースの作成 を選択して、新しい Amazon EMRクラスターを起動します。

    Amazon EMRクラスターを作成したら、EMRクラスターページの ステータスに従います。ステータスが に変わるとRunning/Waiting、Amazon EMRクラスターは Studio で使用できるようになります。

ステップ 3: JupyterLab ノートブックを Amazon EMRクラスターに接続する

次の手順では、 のノートブック JupyterLab を実行中の Amazon EMRクラスターに接続します。この例では、Amazon Spark 分散処理と OpenSearch ベクトルデータベースを使用して検索拡張生成 (RAG) EMR システムを構築できるノートブックをインポートします。

  1. 起動 JupyterLab

    Studio からアプリケーションを起動します JupyterLab 。

  2. プライベートスペースを作成する

    JupyterLab アプリケーション用のスペースを作成していない場合は、 JupyterLab スペースの作成 を選択します。スペースの名前を入力し、スペースをプライベート として保持します。他のすべての設定はデフォルト値のままにしておき、スペースの作成 を選択します。

    それ以外の場合は、 JupyterLab スペースを実行してアプリケーションを起動 JupyterLabします。

  3. 推論用の LLMと埋め込みモデルをデプロイする
    • トップメニューから、ファイル 新規 ターミナル を選択します。

    • ターミナルで、次のコマンドを実行します。

      wget --no-check-certificate https://raw.githubusercontent.com/aws-samples/sagemaker-studio-foundation-models/main/lab-00-setup/Lab_0_Warm_Up_Deploy_EmbeddingModel_Llama2_on_Nvidia.ipynb mkdir AWSGuides cd AWSGuides wget --no-check-certificate https://raw.githubusercontent.com/aws-samples/sagemaker-studio-foundation-models/main/lab-03-rag/AWSGuides/AmazonSageMakerDeveloperGuide.pdf wget --no-check-certificate https://raw.githubusercontent.com/aws-samples/sagemaker-studio-foundation-models/main/lab-03-rag/AWSGuides/EC2DeveloperGuide.pdf wget --no-check-certificate https://raw.githubusercontent.com/aws-samples/sagemaker-studio-foundation-models/main/lab-03-rag/AWSGuides/S3DeveloperGuide.pdf

      これにより、Lab_0_Warm_Up_Deploy_EmbeddingModel_Llama2_on_Nvidia.ipynbノートブックがローカルディレクトリに取得され、3 つのPDFファイルがローカルAWSGuidesフォルダにダウンロードされます。

    • を開きlab-00-setup/Lab_0_Warm_Up_Deploy_EmbeddingModel_Llama2_on_Nvidia.ipynbPython 3 (ipykernel)カーネルを保持し、各セルを実行します。

      警告

      「Llama 2 ライセンス契約」セクションで、続行するEULA前に Llama2 を必ず承諾してください。

      ノートブックは、推論ml.g5.2xlargeのために Llama 2と の 2 つのモデルall-MiniLM-L6-v2 Modelsを にデプロイします。

      モデルのデプロイとエンドポイントの作成には時間がかかる場合があります。

  4. メインノートブックを開く

    で JupyterLabターミナルを開き、次のコマンドを実行します。

    cd .. wget --no-check-certificate https://raw.githubusercontent.com/aws-samples/sagemaker-studio-foundation-models/main/lab-03-rag/Lab_3_RAG_on_SageMaker_Studio_using_EMR.ipynb

    の左側のパネルに追加のLab_3_RAG_on_SageMaker_Studio_using_EMR.ipynbノートブックが表示されます JupyterLab。

  5. PySpark カーネルを選択する

    Lab_3_RAG_on_SageMaker_Studio_using_EMR.ipynb ノートブックを開き、SparkMagic PySparkカーネルを使用していることを確認します。ノートブックの右上でカーネルを切り替えることができます。現在のカーネル名を選択してカーネル選択モーダルを開き、 を選択しますSparkMagic PySpark

  6. ノートブックをクラスターに接続する
    1. ノートブックの右上で、クラスター を選択します。このアクションにより、アクセス許可を持つ実行中のすべてのクラスターを一覧表示するモーダルウィンドウが開きます。

    2. クラスターを選択し、接続 を選択します。新しい認証情報タイプの選択モーダルウィンドウが開きます。

    3. 認証情報なしを選択し、 を接続します

      ノートブックの Amazon EMR JupyterLab認証情報の選択を示すモーダル。
    4. ノートブックセルは自動的に入力され、実行されます。ノートブックセルは、Amazon EMRクラスターに接続する機能を提供する sagemaker_studio_analytics_extension.magics拡張機能をロードします。次に、 %sm_analyticsマジックコマンドを使用して、Amazon EMRクラスターと Spark アプリケーションへの接続を開始します。

      注記

      Amazon EMRクラスターへの接続文字列の認証タイプが に設定されていることを確認しますNone。これは、次の例の値--auth-type Noneで示されています。必要に応じて フィールドを変更できます。

      %load_ext sagemaker_studio_analytics_extension.magics %sm_analytics emr connect --verify-certificate False --cluster-id your-cluster-id --auth-type None --language python
    5. 接続が正常に確立されると、接続セルの出力メッセージに、クラスター ID、YARNアプリケーション ID、 へのリンクなどSparkSessionの詳細が表示されます。Spark をモニタリングする UI Spark ジョブ。

Lab_3_RAG_on_SageMaker_Studio_using_EMR.ipynb ノートブックを使用する準備ができました。このサンプルノートブックは、 LangChain と を使用してRAGシステムを構築するための分散 PySpark ワークロードを実行します OpenSearch。

ステップ 4: をクリーンアップする AWS CloudFormation スタック

完了したら、必ず 2 つのエンドポイントを終了し、 AWS CloudFormation スタックは、料金が継続しないようにします。スタックを削除すると、スタックによってプロビジョニングされたすべてのリソースがクリーンアップされます。

を削除するには AWS CloudFormation 完了時の スタック
  1. に移動する AWS CloudFormation コンソール: https://console.aws.amazon.com/cloudformation

  2. 削除するスタックを選択します。名前で検索することも、スタックのリストで検索することもできます。

  3. 削除ボタンをクリックしてスタックの削除を確定し、再度削除してスタックによって作成されたすべてのリソースが削除されることを承認します。

    スタックの削除が完了するまで待ちます。これは数分かかることがあります。 AWS CloudFormation は、スタックテンプレートで定義されているすべてのリソースを自動的にクリーンアップします。

  4. スタックによって作成されたすべてのリソースが削除されていることを確認します。例えば、Amazon EMRクラスターの残りを確認します。

モデルのAPIエンドポイントを削除するには
  1. SageMaker コンソールに移動します。 https://console.aws.amazon.com/sagemaker/

  2. 左側のナビゲーションペインで、推論 を選択し、次にエンドポイント を選択します。

  3. エンドポイントを選択しhf-allminil6v2-embedding-epアクションドロップダウンリストで削除を選択します。エンドポイント の ステップを繰り返しますmeta-llama2-7b-chat-tg-ep