Crie uma instância do notebook Braket usando AWS CloudFormation - Amazon Braket

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Crie uma instância do notebook Braket usando AWS CloudFormation

dica

Aprenda os fundamentos da computação quântica com AWS! Inscreva-se no Amazon Braket Digital Learning Plan e ganhe seu próprio selo digital após concluir uma série de cursos de aprendizado e uma avaliação digital.

Você pode usar AWS CloudFormation para gerenciar suas instâncias de notebook Amazon Braket. As instâncias do notebook Braket são criadas com base na Amazon SageMaker AI. Com CloudFormation, você pode provisionar uma instância de notebook com um arquivo de modelo que descreve a configuração pretendida. O arquivo de modelo é escrito no formato JSON ou YAML. Você pode criar, atualizar e excluir instâncias de forma ordenada e repetível. Você pode achar isso útil ao gerenciar várias instâncias do notebook Braket em seu. Conta da AWS

Depois de criar um CloudFormation modelo para um notebook Braket, você usa AWS CloudFormation para implantar o recurso. Para obter mais informações, consulte Criação de uma pilha no AWS CloudFormation console no guia do AWS CloudFormation usuário.

Para criar uma instância do notebook Braket usando CloudFormation, você executa estas três etapas:

  1. Crie um script de configuração do ciclo de vida da SageMaker IA.

  2. Crie uma função AWS Identity and Access Management (IAM) a ser assumida pela SageMaker IA.

  3. Crie uma instância de notebook de SageMaker IA com o prefixo amazon-braket-

Você pode reutilizar a configuração do ciclo de vida de todos os cadernos Braket que você criar. Você também pode reutilizar a função do IAM para os notebooks Braket aos quais você atribui as mesmas permissões de execução.

Etapa 1: criar um script de configuração do ciclo de vida da SageMaker IA

Use o modelo a seguir para criar um script de configuração do ciclo de vida de SageMaker IA. O script personaliza uma instância de notebook de SageMaker IA para Braket. Para obter opções de configuração para o CloudFormation recurso de ciclo de vida, consulte o AWS::SageMaker::NotebookInstanceLifecycleConfigguia do AWS CloudFormation usuário.

BraketNotebookInstanceLifecycleConfig: Type: "AWS::SageMaker::NotebookInstanceLifecycleConfig" Properties: NotebookInstanceLifecycleConfigName: BraketLifecycleConfig-${AWS::StackName} OnStart: - Content: Fn::Base64: | #!/usr/bin/env bash sudo -u ec2-user -i ≪EOS curl -o braket-notebook-lcc.zip https://d3ded4lzb1lnme.cloudfront.net/notebook/braket-notebook-lcc.zip unzip braket-notebook-lcc.zip ./install.sh EOS exit 0

Etapa 2: criar a função do IAM assumida pela Amazon SageMaker AI

Quando você usa uma instância do notebook Braket, a SageMaker IA executa operações em seu nome. Por exemplo, suponha que você execute um notebook Braket usando um circuito em um dispositivo compatível. Na instância do notebook, a SageMaker IA executa a operação no Braket para você. A função de execução do notebook define as operações exatas que a SageMaker IA tem permissão para executar em seu nome. Para obter mais informações, consulte as funções de SageMaker IA no guia do desenvolvedor de SageMaker IA da Amazon.

Use o exemplo a seguir para criar uma função de execução do notebook Braket com as permissões necessárias. Você pode modificar as políticas de acordo com suas necessidades.

nota

Certifique-se de que a função tenha permissão para as s3:GetObject operações s3:ListBucket e nos buckets do Amazon S3 prefixados com. braketnotebookcdk-" O script de configuração do ciclo de vida requer essas permissões para copiar o script de instalação do notebook Braket.

ExecutionRole: Type: "AWS::IAM::Role" Properties: RoleName: !Sub AmazonBraketNotebookRole-${AWS::StackName} AssumeRolePolicyDocument: Version: "2012-10-17" Statement: - Effect: "Allow" Principal: Service: - "sagemaker.amazonaws.com" Action: - "sts:AssumeRole" Path: "/service-role/" ManagedPolicyArns: - arn:aws:iam::aws:policy/AmazonBraketFullAccess Policies: - PolicyName: "AmazonBraketNotebookPolicy" PolicyDocument: Version: "2012-10-17" Statement: - Effect: Allow Action: - s3:GetObject - s3:PutObject - s3:ListBucket Resource: - arn:aws:s3:::amazon-braket-* - arn:aws:s3:::braketnotebookcdk-* - Effect: "Allow" Action: - "logs:CreateLogStream" - "logs:PutLogEvents" - "logs:CreateLogGroup" - "logs:DescribeLogStreams" Resource: - !Sub "arn:aws:logs:*:${AWS::AccountId}:log-group:/aws/sagemaker/*" - Effect: "Allow" Action: - braket:* Resource: "*"

Etapa 3: criar uma instância de notebook de SageMaker IA com o prefixo amazon-braket-

Use o script de ciclo de vida de SageMaker IA e a função do IAM criada nas etapas 1 e 2 para criar uma instância de notebook de SageMaker IA. A instância do notebook é personalizada para o Braket e pode ser acessada com o console Amazon Braket. Para obter mais informações sobre as opções de configuração desse CloudFormation recurso, consulte AWS::SageMaker::NotebookInstanceo guia AWS CloudFormation do usuário.

BraketNotebook: Type: AWS::SageMaker::NotebookInstance Properties: InstanceType: ml.t3.medium NotebookInstanceName: !Sub amazon-braket-notebook-${AWS::StackName} RoleArn: !GetAtt ExecutionRole.Arn VolumeSizeInGB: 30 LifecycleConfigName: !GetAtt BraketNotebookInstanceLifecycleConfig.NotebookInstanceLifecycleConfigName