Adicionar execução do pipeline ao experimento

É possível usar o console do Google Cloud ou o SDK da Vertex AI para Python a fim de adicionar um pipeline a um experimento ou a uma execução de experimento.

Console do Google Cloud

Use as instruções a seguir para executar um pipeline de ML e associá-lo a um experimento e, opcionalmente, a um experimento usando o Console do Google Cloud. As execuções de experimentos só podem ser criadas com o SDK da Vertex AI para Python. Consulte Criar e gerenciar execuções de experimentos.
  1. No console do Google Cloud, na seção da Vertex AI, acesse a página Conjuntos de dados.
    Acessar "Pipelines"
  2. Na lista suspensa Região, selecione a região em que você quer criar uma execução do pipeline.
  3. Clique em Criar execução para abrir o painel Criar execução do pipeline.
  4. Especifique os seguintes detalhes da execução.
    • No campo Arquivo, clique em Selecionar para abrir o seletor de arquivos. Navegue até o arquivo JSON compilado do pipeline que você quer executar, selecione o pipeline e clique em Abrir.
    • Por padrão, o Nome do pipeline usa o nome especificado na definição do pipeline. Opcionalmente, especifique um Nome de pipeline diferente.
    • Especifique um Nome de execução para identificar exclusivamente essa execução de pipeline.
  5. Para especificar que essa execução do pipeline usa uma conta de serviço personalizada, uma chave de criptografia gerenciada pelo cliente ou uma rede VPC com peering, clique em Opções avançadas. (opcional)
    Use as instruções a seguir para configurar opções avançadas, como uma conta de serviço personalizada.
    • Para especificar uma conta de serviço, selecione uma na lista suspensa da Conta de serviço.
      O Vertex Pipelines executa o pipeline usando a conta de serviço padrão do Compute Engine, caso nenhuma conta de serviço seja especificada.
      Saiba mais sobre Como configurar uma conta de serviço para uso com o Vertex AI Pipelines.
    • Para usar uma chave de criptografia gerenciada pelo cliente (CMEK, na sigla em inglês), selecione Usar uma chave de criptografia gerenciada pelo cliente. A lista suspensa Selecione uma chave gerenciada pelo cliente é exibida. Na lista suspensa Selecione uma chave gerenciada pelo cliente, selecione a chave que você quer usar.
    • Para usar uma rede VPC com peering nesta execução do pipeline, insira o nome da rede VPC na caixa Rede VPC com peering.
  6. Clique em Continuar.
    O local Cloud Storage e o painel Parâmetros de pipeline são exibidos.
    • Obrigatório: insira o diretório de saída do Cloud Storage, por exemplo: gs://location_of_directory.
    • Opcional: especifique os parâmetros que você quer usar para a execução deste pipeline.
  7. Clique em Enviar para criar a execução do pipeline.
  8. Depois que o Pipeline for enviado, ele aparecerá na tabela do console do Google Cloud associada ao Pipeline.
  9. Na linha associada ao seu pipeline, clique em  Ver mais > Adicionar ao experimento
    • Selecione um orçamento atual ou crie um novo.
    • Opcional: se as execuções do experimento estiverem associadas a ele, elas serão exibidas na lista suspensa. Selecione uma execução do experimento.
  10. Clique em Salvar.

Comparar uma execução de pipeline com execuções de experimentos usando o console do Google Cloud

  1. No Console do Google Cloud, acesse a página Experimentos.
    Acessar os Experimentos.
    Uma lista de experimentos aparecerá na página Experimentos.
  2. Selecione o experimento em que você quer adicionar a execução de pipeline.
    Uma lista de execuções será exibida.
  3. Selecione as execuções que você quer comparar e clique em Comparar
    .
  4. Clique no botão Adicionar execução. Uma lista de execuções será exibida.
  5. Selecione a execução de pipeline que você quer adicionar. A execução é adicionada.

SDK da Vertex AI para Python {:#sdk-add-pipeline-run}

As amostras a seguir usam a API PipelineJob.

Associar o pipeline executado a um experimento

Este exemplo mostra como associar uma execução de pipeline a um experimento. Para comparar as execuções de pipeline, associe suas execuções de pipeline a um experimento. Consulte init na documentação de referência do SDK da Vertex AI para Python.

Python

from typing import Any, Dict, Optional

from google.cloud import aiplatform


def log_pipeline_job_to_experiment_sample(
    experiment_name: str,
    pipeline_job_display_name: str,
    template_path: str,
    pipeline_root: str,
    project: str,
    location: str,
    parameter_values: Optional[Dict[str, Any]] = None,
):
    aiplatform.init(project=project, location=location)

    pipeline_job = aiplatform.PipelineJob(
        display_name=pipeline_job_display_name,
        template_path=template_path,
        pipeline_root=pipeline_root,
        parameter_values=parameter_values,
    )

    pipeline_job.submit(experiment=experiment_name)

  • experiment_name: dê um nome para o experimento. Para ver a lista de experimentos no Console do Google Cloud, selecione Experimentos na navegação por seção.
  • pipeline_job_display_name: o nome definido pelo usuário deste pipeline.
  • template_path: o caminho do arquivo JSON ou YAML do PipelineJob ou PipelineSpec. Pode ser um caminho local ou um URI do Cloud Storage. Exemplo: "gs://project.name"
  • pipeline_root: a raiz das saídas do pipeline. O padrão é ser um bucket de preparo.
  • parameter_values: o mapeamento dos nomes de parâmetros de ambiente de execução para os valores que controlam a execução do pipeline.
  • project: o ID do projeto. Esses IDs estão na página de boas-vindas do console do Google Cloud.
  • location: Consulte a Lista de locais disponíveis.

Executar o pipeline associado à execução do experimento

O exemplo fornecido inclui a associação de uma execução de pipeline a uma execução de experimento.

Casos de uso:

  • Ao fazer o treinamento de modelo local e, em seguida, executar a avaliação nesse modelo. A avaliação é feita por um pipeline. Nesse caso, convém gravar as métricas de avaliação da execução do pipeline em um ExperimentRun
  • Ao executar novamente o mesmo pipeline várias vezes. Por exemplo, se você alterar os parâmetros de entrada ou um componente falhar e você precisar executá-lo novamente.

Ao associar uma execução de pipeline a uma execução do experimento, os parâmetros e as métricas não são exibidos automaticamente e precisam ser registrados manualmente usando as APIs de geração de registros.

Observação: quando o parâmetro resume opcional é especificado como TRUE, a execução iniciada anteriormente é retomada. Quando não especificado, resume assume como padrão FALSE e uma nova execução é criada.

Consulte init, start_run e log na documentação de referência do SDK do Vertex AI para Python.

Python

from google.cloud import aiplatform


def log_pipeline_job_sample(
    experiment_name: str,
    run_name: str,
    pipeline_job: aiplatform.PipelineJob,
    project: str,
    location: str,
):
    aiplatform.init(experiment=experiment_name, project=project, location=location)

    aiplatform.start_run(run=run_name, resume=True)

    aiplatform.log(pipeline_job=pipeline_job)

  • experiment_name: dê um nome para o experimento. Para ver a lista de experimentos no Console do Google Cloud, selecione Experimentos na navegação por seção.
  • run_name: especifica um nome para execução.
  • pipeline_job: um PipelineJob da Vertex AI
  • project: o ID do projeto. É possível encontrá-los na página de boas-vindas do Console do Google Cloud.
  • location: consulte a Lista de locais disponíveis.

Conferir a lista de execuções de pipeline no console do Google Cloud

  1. No console do Google Cloud, na seção da Vertex AI, acesse a página Conjuntos de dados.

    Acessar a página "Pipelines"

  2. Verifique se você está no projeto correto.

  3. Uma lista de experimentos e execuções associados às execuções de pipeline do projeto aparece nas colunas Experimento e Execução de experimento, respectivamente.

Vertex AIList de experimentos

Codelab

A seguir

Exemplo de notebook relevante