Crie um modelo de tempo de execução no Colab Enterprise

Esta página mostra como criar um modelo de tempo de execução no Colab Enterprise.

Para executar código no seu bloco de notas, usa um recurso de computação denominado tempo de execução. Pode usar o tempo de execução predefinido ou um tempo de execução criado a partir de um modelo de tempo de execução. Ao criar um modelo de tempo de execução, pode configurá-lo para otimizar o desempenho, o custo e outras caraterísticas de um tempo de execução com base nas suas necessidades.

Saiba mais acerca dos tempos de execução e dos modelos de tempo de execução.

Antes de começar

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. Enable the Vertex AI, Dataform, and Compute Engine APIs.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the APIs

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  6. Verify that billing is enabled for your Google Cloud project.

  7. Enable the Vertex AI, Dataform, and Compute Engine APIs.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the APIs

  8. Funções necessárias

    Para receber as autorizações de que precisa para criar um modelo de tempo de execução no Colab Enterprise, peça ao seu administrador para lhe conceder a função do IAM de administrador do Colab Enterprise (roles/aiplatform.colabEnterpriseAdmin) no projeto. Para mais informações sobre a atribuição de funções, consulte o artigo Faça a gestão do acesso a projetos, pastas e organizações.

    Também pode conseguir as autorizações necessárias através de funções personalizadas ou outras funções predefinidas.

    Crie o modelo de tempo de execução

    Para criar um modelo de tempo de execução, pode usar a Google Cloud consola, a Google Cloud CLI, a API REST ou o Terraform.

    Consola

    Para criar um modelo de tempo de execução:

    1. Na Google Cloud consola, aceda à página Modelos de tempo de execução do Colab Enterprise.

      Aceda aos modelos dos ambientes de execução

    2. Clique em  Novo modelo.

      É apresentada a caixa de diálogo Criar novo modelo de tempo de execução.

    Noções básicas do tempo de execução

    1. Na secção Noções básicas de tempo de execução, introduza um Nome a apresentar.

    2. No menu Região, selecione a região onde quer o modelo de tempo de execução.

    3. Opcional: adicione uma descrição do modelo de tempo de execução.

    4. Opcional: para adicionar uma etiqueta, clique em  Adicionar etiqueta, e, em seguida, introduza um par de chave e valor. Para adicionar mais etiquetas, repita este passo.

    5. Clique em Continuar.

    Configure o cálculo

    1. Na secção Configurar computação, no menu Tipo de máquina, selecione um tipo de máquina. Para obter informações sobre os tipos de máquinas, consulte o recurso de famílias de máquinas e o guia de comparação.

      Se selecionar um tipo de máquina com GPUs, selecione o Tipo de acelerador e a Quantidade de aceleradores. Se não conseguir selecionar o número de GPUs que quer, pode ter de aumentar a sua quota. Consulte Peça um ajuste de quota.

    2. No menu Tipo de disco de dados, selecione um tipo de disco.

    3. No campo Tamanho do disco de dados, introduza um tamanho em GB.

    4. Na secção Desligamento por inatividade:

      • Para desativar o encerramento por inatividade, desmarque a opção Ativar encerramento por inatividade.

      • Para alterar o período de inatividade, em Tempo de inatividade antes do encerramento (minutos), altere o número para o número de minutos de inatividade que pretende. Na Google Cloud consola, esta definição pode ser definida para qualquer valor inteiro de 10 a 1440.

    5. Clique em Continuar.

    Ambiente

    1. Na secção Ambiente, selecione um Ambiente. A predefinição é Mais recente (atualmente, Python 3.11).

    2. Clique em Continuar.

    Redes e segurança

    1. Na secção Rede e segurança, no menu Rede, selecione uma rede. Se não selecionar uma rede, é selecionada a sua rede predefinida.

    2. No menu Sub-rede, selecione uma sub-rede.

    3. Para desativar o acesso público à Internet, desmarque a opção Ativar acesso público à Internet.

    4. Para desativar o acesso às credenciais do utilizador final, desmarque a opção Ativar credenciais do utilizador final.

    Conclua a criação do modelo de tempo de execução

    Clique em Criar para concluir a criação do modelo de tempo de execução.

    O modelo de tempo de execução é apresentado na lista no separador Modelos de tempo de execução.

    gcloud

    Antes de usar qualquer um dos dados de comandos abaixo, faça as seguintes substituições:

    • DISPLAY_NAME: o nome a apresentar do seu modelo de tempo de execução.
    • PROJECT_ID: o ID do seu projeto.
    • REGION: a região onde quer o modelo de tempo de execução.
    • MACHINE_TYPE: o tipo de máquina a usar para o seu tempo de execução.
    • ACCELERATOR_TYPE: o tipo de acelerador de hardware a usar para o seu tempo de execução.
    • ACCELERATOR_COUNT: o número de aceleradores a usar para o seu tempo de execução.

    Execute o seguinte comando:

    Linux, macOS ou Cloud Shell

    gcloud colab runtime-templates create --display-name="DISPLAY_NAME" \
        --project=PROJECT_ID \
        --region=REGION \
        --machine-type=MACHINE_TYPE \
        --accelerator-type=ACCELERATOR_TYPE \
        --accelerator-count=ACCELERATOR_COUNT

    Windows (PowerShell)

    gcloud colab runtime-templates create --display-name="DISPLAY_NAME" `
        --project=PROJECT_ID `
        --region=REGION `
        --machine-type=MACHINE_TYPE `
        --accelerator-type=ACCELERATOR_TYPE `
        --accelerator-count=ACCELERATOR_COUNT

    Windows (cmd.exe)

    gcloud colab runtime-templates create --display-name="DISPLAY_NAME" ^
        --project=PROJECT_ID ^
        --region=REGION ^
        --machine-type=MACHINE_TYPE ^
        --accelerator-type=ACCELERATOR_TYPE ^
        --accelerator-count=ACCELERATOR_COUNT

    Para mais informações sobre o comando para criar um modelo de tempo de execução a partir da linha de comandos, consulte a documentação da CLI gcloud.

    REST

    Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:

    • REGION: a região onde quer o modelo de tempo de execução.
    • PROJECT_ID: o ID do seu projeto.
    • DISPLAY_NAME: o nome a apresentar do seu modelo de tempo de execução.
    • MACHINE_TYPE: o tipo de máquina a usar para o seu tempo de execução.
    • ACCELERATOR_TYPE: o tipo de acelerador de hardware a usar para o seu tempo de execução.
    • ACCELERATOR_COUNT: o número de aceleradores a usar para o seu tempo de execução.

    Método HTTP e URL:

    POST https://REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/notebookRuntimeTemplates

    Corpo JSON do pedido:

    {
      "displayName": "DISPLAY_NAME",
      "machineSpec": {
        {
          "machineType": MACHINE_TYPE
          "acceleratorType": ACCELERATOR_TYPE,
          "acceleratorCount": ACCELERATOR_COUNT,
        }
      },
    }
    

    Para enviar o seu pedido, escolha uma destas opções:

    curl

    Guarde o corpo do pedido num ficheiro com o nome request.json, e execute o seguinte comando:

    curl -X POST \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json; charset=utf-8" \
    -d @request.json \
    "https://REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/notebookRuntimeTemplates"

    PowerShell

    Guarde o corpo do pedido num ficheiro com o nome request.json, e execute o seguinte comando:

    $cred = gcloud auth print-access-token
    $headers = @{ "Authorization" = "Bearer $cred" }

    Invoke-WebRequest `
    -Method POST `
    -Headers $headers `
    -ContentType: "application/json; charset=utf-8" `
    -InFile request.json `
    -Uri "https://REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/notebookRuntimeTemplates" | Select-Object -Expand Content
    Se for bem-sucedido, o corpo da resposta contém uma instância de Operation.

    Para mais informações, consulte a notebookRuntimeTemplates.create documentação da API REST.

    Terraform

    Para saber como aplicar ou remover uma configuração do Terraform, consulte os comandos básicos do Terraform. Para mais informações, consulte a Terraform documentação de referência do fornecedor.

    O exemplo seguinte usa o recurso do Terraform para criar um modelo de tempo de execução do Vertex AI. google_colab_runtime_template

    resource "google_compute_network" "my_network" {
      name = "{{index $.Vars "network_name"}}"
      auto_create_subnetworks = false
    }
    
    resource "google_compute_subnetwork" "my_subnetwork" {
      name   = "{{index $.Vars "network_name"}}"
      network = google_compute_network.my_network.id
      region = "us-central1"
      ip_cidr_range = "10.0.1.0/24"
    }
    
    resource "google_colab_runtime_template" "{{$.PrimaryResourceId}}" {
      name        = "{{index $.Vars "runtime_template_name"}}"
      display_name = "Runtime template full"
      location    = "us-central1"
      description = "Full runtime template"
      machine_spec {
        machine_type     = "n1-standard-2"
        accelerator_type = "NVIDIA_TESLA_T4"
        accelerator_count = "1"
      }
    
      data_persistent_disk_spec {
        disk_type    = "pd-standard"
        disk_size_gb = 200
      }
    
      network_spec {
        enable_internet_access = true
        network = google_compute_network.my_network.id
        subnetwork = google_compute_subnetwork.my_subnetwork.id
      }
    
      labels = {
        k = "val"
      }
    
      idle_shutdown_config {
        idle_timeout = "3600s"
      }
    
      euc_config {
        euc_disabled = false
      }
    
      shielded_vm_config {
        enable_secure_boot = false
      }
    
      network_tags = ["abc", "def"]
    
      encryption_spec {
        kms_key_name = "{{index $.Vars "key_name"}}"
      }
    }
    

    Conceder acesso ao modelo de tempo de execução

    Depois de criar um modelo de tempo de execução, tem de conceder acesso ao mesmo para que um principal o possa usar. Um principal pode criar um tempo de execução a partir de um modelo de tempo de execução apenas quando tiver o seguinte:

    • Acesso ao modelo de tempo de execução.
    • As autorizações necessárias para criar tempos de execução.

    O que se segue?