Crie uma instância do notebook Braket usando 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 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 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. É possível criar, editar e excluir instâncias de forma ordenada e repetível. Você pode achar isso útil ao gerenciar várias instâncias do caderno Braket em seu. Conta da AWS

Depois de criar um CloudFormation modelo para um notebook Braket, você usa CloudFormation para implantar o recurso. Para obter mais informações, consulte Criação de uma pilha no CloudFormation console no guia do 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 o perfil do IAM para os cadernos 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 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 caderno 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 um perfil de execução do caderno Braket com as permissões necessárias. É possível modificar as políticas de acordo com as suas necessidades.

nota

Certifique-se de que o perfil tenha permissão para as operações s3:GetObjecte 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 caderno 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 caderno é 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 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