

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
<a name="braket-cloudformation"></a>

**dica**  
**Aprenda os fundamentos da computação quântica com AWS\!** Inscreva-se no [Amazon Braket Digital](https://skillbuilder.aws/learning-plan/EH35DWGU3R/amazon-braket--knowledge-badge-readiness-path-includes-labs) 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](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-console-create-stack.html) 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.

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

1. 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.

**Topics**
+ [Etapa 1: criar um script de configuração do ciclo de vida da SageMaker IA](#braket-create-cloudformation-template-step-1)
+ [Etapa 2: criar a função do IAM assumida pela Amazon SageMaker AI](#braket-create-cloudformation-template-step-2)
+ [Etapa 3: criar uma instância de notebook de SageMaker IA com o prefixo `amazon-braket-`](#braket-create-cloudformation-template-step-3)

## Etapa 1: criar um script de configuração do ciclo de vida da SageMaker IA
<a name="braket-create-cloudformation-template-step-1"></a>

Use o modelo a seguir para criar um script de [configuração do ciclo de vida de SageMaker IA](https://docs.aws.amazon.com/sagemaker/latest/dg/notebook-lifecycle-config.html). 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::NotebookInstanceLifecycleConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstancelifecycleconfig.html)guia 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
<a name="braket-create-cloudformation-template-step-2"></a>

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](https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-roles.html) 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:GetObject`e `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-`
<a name="braket-create-cloudformation-template-step-3"></a>

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::NotebookInstance](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstance.html)o *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
```