スキップしてコンテンツを表示

Lambda 関数を使用して SageMaker AI ノートブックインスタンスを作成する方法を教えてください。

所要時間1分
0

AWS Lambda 関数を使用して Amazon SageMaker AI ノートブックインスタンスを作成したいと考えています。

解決策

SageMaker AI ノートブックインスタンスを作成する Lambda 関数を作成するには、次の手順を実行します。

  1. AWS Identity and Access Management (IAM) Lambda 実行ロールを作成し、sagemaker:CreateNotebookInstance アクションを許可するポリシーをアタッチします。例えば、sagemaker:CreateNotebookInstance アクションを許可する AmazonSageMakerFullAccess ポリシーがアタッチされたロールを作成します。

  2. SageMaker AI 用の IAM 実行ロールを作成します必要なアクセス許可を必ずアタッチしてください

  3. Lambda コンソールを開きます。

  4. [関数の作成] を選択します。

  5. [一から作成] を選択し、次のパラメータを設定します。
    [関数名] に、関数の名前を入力します。
    [ランタイム] で、Python オプションのいずれかを選択します。
    [デフォルトの実行ロールの変更] で、[既存のロールを使用する] を選択します。
    [既存のロール] で、ステップ 1 で作成した IAM ロールを選択します。

  6. [関数の作成] を選択します。

  7. [コード] セクションに、次のコードを入力します。

    import osimport boto3import time
    
    INSTANCE_TYPE = os.environ['INSTANCE_TYPE']
    NOTEBOOK_NAME = os.environ['NOTEBOOK_NAME']
    ROLE=os.environ['ROLE']
    
    sagemaker = boto3.client('sagemaker')
    
    def lambda_handler(event, context):
        sagemaker_notebook = sagemaker.create_notebook_instance(
            NotebookInstanceName = NOTEBOOK_NAME +'-'+str(int(time.time())),
            InstanceType = INSTANCE_TYPE,
            RoleArn=ROLE
        )
    
    print("New Amazon SageMaker notebook instance created.")
  8. [設定] タブを選択し、[環境変数] を選択します。

  9. [編集] を選択します。

  10. [環境変数を追加] を選択し、次のオプションを使用して 3 つの環境変数を作成します。
    最初の環境変数に次の値を入力します。
    [キー]ROLE と入力します。
    [値] には、ステップ 2 で作成した SageMaker AI 実行ロールの Amazon リソースネーム (ARN) を入力します。
    2 番目の環境変数に次の値を入力します。
    [キー] に、INSTANCE_TYPE と入力します。
    [値] には、ノートブックインスタンスの Amazon Elastic Compute Cloud (Amazon EC2) インスタンスタイプを入力します。
    3 番目の環境変数に次の値を入力します。
    [キー] に、NOTEBOOK_NAME と入力します。
    [値] には、ノートブックの名前を入力します。

  11. [保存] を選択します。

  12. [テスト] タブを選択します。

  13. [テストイベント][新しいイベントを作成] または [保存したイベントを編集] を選択し、使用する保存済みイベントを選択します。または、空の ("{}") テストイベントを使用します。

  14. [保存] を選択し、[テスト] を選択します。

  15. SageMaker AI コンソールを開いて、ノートブックインスタンスが初期化中であることを確認します。
    注: Lambda 関数のテストがタイムアウトした場合は、Lambda 関数を開きます。[設定] を選択し、[一般設定] セクションに移動して、タイムアウト値を増やします。デフォルトは 3 秒です。

Lambda 関数を作成したら、別の AWS サービスのイベントに基づいて自動的に関数を実行するトリガーを作成できます。

AWS公式更新しました 6ヶ月前
コメントはありません