Programar uma execução de pipeline com a API Scheduler

É possível programar execuções únicas ou recorrentes do pipeline na Vertex AI usando a API do programador. Isso permite que você implemente treinamento contínuo em seu projeto.

Depois que você cria uma programação, ela pode ter um dos seguintes estados:

  • ACTIVE: uma programação ativa cria execuções de pipeline continuamente de acordo com a frequência configurada usando a expressão de programação cron. Uma programação se torna ativa no horário de início e permanece nesse estado até o horário de término especificado ou até você pausá-la.

  • PAUSED: uma programação pausada não cria execuções de pipeline. É possível retomar uma programação pausada para ativá-la novamente. Ao retomar uma programação pausada, é possível usar o parâmetro catch_up para especificar se as execuções ignoradas (execuções que teriam sido programadas se a programação estivesse ativa) precisam ser reprogramadas e enviadas assim que possível.

  • COMPLETED: uma programação concluída não cria mais novas execuções de pipeline. Uma programação é concluída de acordo com o horário de término especificado.

Você pode usar a API de programação para fazer o seguinte:

Antes de começar

Antes de programar uma execução de pipeline usando a API Scheduler, siga as instruções abaixo para configurar o projeto e o ambiente de desenvolvimento do Google Cloud no Console do Google Cloud.

  1. Conceda pelo menos uma das seguintes permissões do IAM ao usuário ou à conta de serviço para usar a API de programação:

    • roles/aiplatform.admin
    • roles/aiplatform.user
  2. Crie e compile um pipeline. Para mais informações, consulte Criar um pipeline.

Criar uma programação

Você pode criar uma programação única ou recorrente.

Console

Use as instruções a seguir para criar uma programação usando o console do Google Cloud. Se já houver uma programação para o projeto e a região, use as instruções em Criar uma execução de pipeline.

Use as instruções a seguir para criar uma programação de pipeline:

  1. No console do Google Cloud, na seção "Vertex AI", acesse a guia Programações na página Pipelines.

    Acessar "Programações"

  2. Clique em Criar execução de programação para abrir o painel Criar execução do pipeline.

  3. Especifique os Detalhes da execução selecionando uma das seguintes opções:

    • Para criar uma execução de pipeline com base em um modelo de pipeline, clique em Selecionar pipelines e insira os seguintes detalhes:

      1. Selecione o Repositório que contém o pipeline ou o arquivo de definição do componente.

      2. Selecione o Pipeline ou componente e a Versão.

    • Para fazer upload de uma definição de pipeline compilada, clique em Fazer upload do arquivo e insira os seguintes detalhes:

      1. Clique em Procurar para abrir o seletor de arquivos. Acesse o arquivo YAML de pipeline compilado que você quer executar, selecione o pipeline e clique em Abrir.

      2. O Nome do pipeline ou do componente mostra o nome especificado na definição de pipeline por padrão. Opcionalmente, especifique um nome de pipeline diferente.

    • Para importar um arquivo de definição de pipeline do Cloud Storage, clique em Importar do Cloud Storage e insira os seguintes detalhes:

      1. Clique em Procurar para acessar o bucket do Cloud Storage que contém o objeto de definição de pipeline, selecione o arquivo e clique em Selecionar.

      2. Especifique o Nome do pipeline ou do componente.

  4. Especifique um Nome de execução para identificar exclusivamente essa execução de pipeline.

  5. Especifique a Programação, da seguinte maneira:

    1. Selecione Recorrente.

    2. Em Horário de início, especifique quando a programação ficará ativa.

      • Para programar a primeira execução imediatamente após a criação da programação, selecione Imediatamente.

      • Para programar que a primeira execução ocorra em um horário e uma data específicos, selecione Ativado.

    3. No campo Frequência, especifique a frequência para programar e executar as execuções do pipeline usando uma expressão de programação cron baseada em unix-cron.

    4. Em Término, especifique quando a programação termina.

      • Para indicar que a programação cria execuções do pipeline indefinidamente, selecione Nunca.

      • Para indicar que a programação termina em uma data e hora específicas, selecione Ativado e especifique a data e a hora de término.

  6. Opcional: para especificar uma conta de serviço personalizada, uma chave de criptografia gerenciada pelo cliente (CMEK) ou uma rede VPC com peering, clique em Opções avançadas e especifique um nome de conta de serviço, CMEK ou rede VPC com peering.

  7. Clique em Continuar e especifique a Configuração do ambiente de execução para o pipeline.

  8. Clique em Enviar para criar a programação da execução do pipeline.

REST

Para criar uma programação de execução de pipeline, envie uma solicitação POST usando o método projects.locations.schedules.create.

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • LOCATION: a região em que você quer executar o pipeline. Para mais informações sobre as regiões em que a Vertex AI Pipelines está disponível, consulte o guia de locais da Vertex AI.
  • PROJECT_ID: o projeto do Google Cloud em que você quer executar o pipeline.
  • DISPLAY_NAME: o nome da programação do pipeline. É possível especificar um nome com um tamanho máximo de 128 caracteres UTF-8.
  • START_TIME: carimbo de data/hora após o qual a primeira execução pode ser programada, por exemplo, 2045-07-26T00:00:00Z. Se você não especificar esse parâmetro, o carimbo de data/hora correspondente à data e hora ao criar a programação será usado como valor padrão.
  • END_TIME: carimbo de data/hora após o qual as execuções de pipeline não estão mais programadas. Quando o END_TIME é atingido, o estado da programação muda para COMPLETED. Se você não especificar esse parâmetro, a programação continuará a executar novos jobs de pipeline indefinidamente até você pausar ou excluir a programação.
  • CRON_EXPRESSION: expressão de programação do cron que representa a frequência para programar e executar execuções de pipeline. Para mais informações, consulte cron.
  • MAX_CONCURRENT_RUN_COUNT: o número máximo de execuções simultâneas na programação.
  • API_REQUEST_TEMPLATE: modelo de solicitação da API PipelineService.CreatePipelineJob usado para executar as execuções de pipeline programadas. Para mais informações sobre os parâmetros no modelo de solicitação da API, consulte a documentação de pipelineJobs.create. Não é possível especificar o parâmetro pipelineJobId neste modelo porque a API do programador não é compatível com ele.

Método HTTP e URL:

POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/schedules

Corpo JSON da solicitação:

{
  "display_name":"DISPLAY_NAME",
  "start_time": "START_TIME",
  "end_time": "END_TIME",
  "cron": "CRON_EXPRESSION",
  "max_concurrent_run_count": "MAX_CONCURRENT_RUN_COUNT",
  "create_pipeline_job_request": API_REQUEST_TEMPLATE
}

Para enviar a solicitação, escolha uma destas opções:

curl

Salve o corpo da solicitação em um arquivo com o nome request.json e execute o comando a seguir:

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

PowerShell

Salve o corpo da solicitação em um arquivo com o nome request.json e execute o comando a seguir:

$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://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/schedules" | Select-Object -Expand Content

Será exibido um código semelhante a este. Você pode usar o SCHEDULE_ID da resposta para recuperar, pausar, retomar ou excluir a programação. PIPELINE_JOB_CREATION_REQUEST representa a solicitação de API para criar o job do pipeline.

{
  "name": "projects/PROJECT_ID/locations/LOCATION/schedules/SCHEDULE_ID",
  "displayName": "DISPLAY_NAME",
  "startTime": "START_TIME",
  "state": "ACTIVE",
  "createTime": "2025-01-01T00:00:00.000000Z",
  "nextRunTime": "2045-08-01T00:00:00Z",
  "cron": "CRON_EXPRESSION",
  "maxConcurrentRunCount": "MAX_CONCURRENT_RUN_COUNT",
  "createPipelineJobRequest": PIPELINE_JOB_CREATION_REQUEST
}

Python

É possível criar uma programação de execução de pipeline das seguintes maneiras:

  • Crie uma programação com base em um PipelineJob usando o método PipelineJob.create_schedule.

  • Como criar uma programação usando o método PipelineJobSchedule.create.

Ao criar uma programação de execução de pipeline, também é possível transmitir os seguintes marcadores com suporte do SDK do KFP como entradas:

  • {{$.pipeline_job_name_placeholder}}

  • {{$.pipeline_job_resource_name_placeholder}}

  • {{$.pipeline_job_id_placeholder}}

  • {{$.pipeline_task_name_placeholder}}

  • {{$.pipeline_task_id_placeholder}}

  • {{$.pipeline_job_create_time_utc_placeholder}}

  • {{$.pipeline_job_schedule_time_utc_placeholder}}

  • {{$.pipeline_root_placeholder}}

Para mais informações, consulte Tipos de entrada especiais na documentação do Kubeflow Pipelines v2 (em inglês).

Criar uma programação a partir de um PipelineJob

Use o exemplo a seguir para programar execuções de pipeline usando o método PipelineJob.create_schedule:

from google.cloud import aiplatform

pipeline_job = aiplatform.PipelineJob(
  template_path="COMPILED_PIPELINE_PATH",
  pipeline_root="PIPELINE_ROOT_PATH",
  display_name="DISPLAY_NAME",
)

pipeline_job_schedule = pipeline_job.create_schedule(
  display_name="SCHEDULE_NAME",
  cron="TZ=CRON",
  max_concurrent_run_count=MAX_CONCURRENT_RUN_COUNT,
  max_run_count=MAX_RUN_COUNT,
)

  • COMPILED_PIPELINE_PATH: o caminho para o arquivo YAML do pipeline compilado. Pode ser um caminho local ou um URI do Google Cloud Storage.

    Opcional: para especificar uma determinada versão de um modelo, inclua a tag de versão junto com o caminho em qualquer um dos seguintes formatos:

    • COMPILED_PIPELINE_PATH:TAG, em que TAG é a tag de versão.

    • COMPILED_PIPELINE_PATH@SHA256_TAG, em que SHA256_TAG é o valor de hash sha256 da versão do pipeline.

  • PIPELINE_ROOT_PATH: (opcional) para substituir o caminho raiz do pipeline especificado na definição do pipeline, especifique um caminho que o job do pipeline possa acessar, como um URI do bucket do Cloud Storage.

  • DISPLAY_NAME: o nome do pipeline, que é mostrado no console do Google Cloud.

  • SCHEDULE_NAME: o nome da programação do pipeline. É possível especificar um nome com um tamanho máximo de 128 caracteres UTF-8.

  • CRON: expressão de programação do cron que representa a frequência para programar e realizar execuções de pipeline. Para mais informações, consulte Cron.

  • MAX_CONCURRENT_RUN_COUNT: o número máximo de execuções simultâneas na programação.

  • MAX_RUN_COUNT: o número máximo de execuções criadas pela programação após as quais o pipeline é concluído.

Criar uma programação usando PipelineJobSchedule.create

Use o exemplo a seguir para programar execuções de pipeline usando o método PipelineJobSchedule.create:

from google.cloud import aiplatform

pipeline_job = aiplatform.PipelineJob(
  template_path="COMPILED_PIPELINE_PATH",
  pipeline_root="PIPELINE_ROOT_PATH",
  display_name="DISPLAY_NAME",
)

pipeline_job_schedule = aiplatform.PipelineJobSchedule(
  pipeline_job=pipeline_job,
  display_name="SCHEDULE_NAME"
)

pipeline_job_schedule.create(
  cron="TZ=CRON",
  max_concurrent_run_count=MAX_CONCURRENT_RUN_COUNT,
  max_run_count=MAX_RUN_COUNT,
)

  • COMPILED_PIPELINE_PATH: o caminho para o arquivo YAML do pipeline compilado. Pode ser um caminho local ou um URI do Google Cloud Storage.

    Opcional: para especificar uma determinada versão de um modelo, inclua a tag de versão junto com o caminho em qualquer um dos seguintes formatos:

    • COMPILED_PIPELINE_PATH:TAG, em que TAG é a tag de versão.

    • COMPILED_PIPELINE_PATH@SHA256_TAG, em que SHA256_TAG é o valor de hash sha256 da versão do pipeline.

  • PIPELINE_ROOT_PATH: (opcional) para substituir o caminho raiz do pipeline especificado na definição do pipeline, especifique um caminho que o job do pipeline possa acessar, como um URI do bucket do Cloud Storage.

  • DISPLAY_NAME: o nome do pipeline, que é mostrado no console do Google Cloud.

  • SCHEDULE_NAME: o nome da programação do pipeline. É possível especificar um nome com um tamanho máximo de 128 caracteres UTF-8.

  • CRON: expressão de programação do cron que representa a frequência para programar e realizar execuções de pipeline. Para mais informações, consulte Cron.

  • MAX_CONCURRENT_RUN_COUNT: o número máximo de execuções simultâneas na programação.

  • MAX_RUN_COUNT: o número máximo de execuções criadas pela programação após as quais o pipeline é concluído.

Listar programações

É possível visualizar a lista de programações de pipeline criadas para seu projeto do Google Cloud.

Console

Veja a lista de programações de pipeline na guia Programações do Console do Google Cloud para a região selecionada.

Para ver a lista de programações de pipeline, na seção "Vertex AI" do Console do Google Cloud, acesse a guia Programações na página Pipelines.

Acessar "Programações"

REST

Para listar as programações de execução do canal no seu projeto, envie uma solicitação GET usando o método projects.locations.schedules.list.

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • LOCATION: a região em que você quer executar o pipeline. Para mais informações sobre as regiões em que a Vertex AI Pipelines está disponível, consulte o guia de locais da Vertex AI.
  • PROJECT_ID: o projeto do Google Cloud em que você quer executar o pipeline.
  • FILTER: (opcional) a expressão para filtrar a lista de programações. Veja mais informações em:
  • PAGE_SIZE: (opcional) o número de programações a serem listadas por página.
  • PAGE_TOKEN: (opcional) o token da página de lista padrão, normalmente recebido via ListSchedulesResponse.next_page_token[] de uma chamada ScheduleService.ListSchedules[] anterior.
  • ORDER_BY: (opcional) lista de campos separada por vírgulas, indicando a ordem de classificação das programações na resposta.

Método HTTP e URL:

GET https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/schedules?FILTER&PAGE_SIZE&PAGE_TOKEN&ORDER_BY

Para enviar a solicitação, escolha uma destas opções:

curl

execute o seguinte comando:

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/schedules?FILTER&PAGE_SIZE&PAGE_TOKEN&ORDER_BY"

PowerShell

execute o seguinte comando:

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

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/schedules?FILTER&PAGE_SIZE&PAGE_TOKEN&ORDER_BY" | Select-Object -Expand Content

A saída será semelhante a esta:

{
  "schedules": [
    SCHEDULE_ENTITY_OBJECT_1,
    SCHEDULE_ENTITY_OBJECT_2,
    ...
  ],
}

Python

Use o exemplo a seguir para listar todas as programações em seu projeto na ordem descendente do horário de criação:

from google.cloud import aiplatform

aiplatform.PipelineJobSchedule.list(
  filter='display_name="DISPLAY_NAME"',
  order_by='create_time desc'
)

DISPLAY_NAME: o nome da programação do pipeline. É possível especificar um nome com um tamanho máximo de 128 caracteres UTF-8.

Recuperar uma programação

É possível recuperar uma programação de execução de pipeline usando o ID da programação.

REST

Para recuperar uma programação de execução do canal, envie uma solicitação GET usando o método projects.locations.schedules.get e o código da programação.

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • LOCATION: a região em que você quer executar o pipeline. Para mais informações sobre as regiões em que a Vertex AI Pipelines está disponível, consulte o guia de locais da Vertex AI.
  • PROJECT_ID: o projeto do Google Cloud em que você quer executar o pipeline.
  • SCHEDULE_ID: o ID exclusivo gerado durante a criação da programação.

Método HTTP e URL:

GET https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/schedules/SCHEDULE_ID

Para enviar a solicitação, escolha uma destas opções:

curl

execute o seguinte comando:

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/schedules/SCHEDULE_ID"

PowerShell

execute o seguinte comando:

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

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/schedules/SCHEDULE_ID" | Select-Object -Expand Content

Será exibido um código semelhante a este. PIPELINE_JOB_CREATION_REQUEST representa a solicitação de API para criar o job do pipeline.

{
  "name": "projects/PROJECT_ID/locations/LOCATION/schedules/SCHEDULE_ID",
  "displayName": "schedule_display_name",
  "startTime": "2045-07-26T06:59:59Z",
  "state": "ACTIVE",
  "createTime": "20xx-01-01T00:00:00.000000Z",
  "nextRunTime": "2045-08-01T00:00:00Z",
  "cron": "TZ=America/New_York 0 0 1 * *",
  "maxConcurrentRunCount": "10",
  "createPipelineJobRequest": PIPELINE_JOB_CREATION_REQUEST
}

Python

Use o exemplo a seguir para recuperar uma programação de execução de pipeline usando o ID da programação:

from google.cloud import aiplatform

pipeline_job_schedule = aiplatform.PipelineJobSchedule.get(schedule_id=SCHEDULE_ID)

SCHEDULE_ID: o ID exclusivo gerado durante a criação da programação.

Pausar uma programação

É possível pausar uma programação de pipeline ativa especificando o código da programação. Quando você pausa uma programação, o estado dela muda de ACTIVE para PAUSED.

Console

É possível pausar uma programação de execução de pipeline ativa no momento.

Use as instruções a seguir para pausar uma programação:

  1. No console do Google Cloud, na seção "Vertex AI", acesse a guia Programações na página Pipelines.

    Acessar "Programações"

  2. Acesse o menu de opções que está na mesma linha da programação que você quer pausar e clique em Pausar. É possível pausar qualquer programação em que a coluna Status mostra Ativa.

REST

Para pausar uma programação de execução do canal em seu projeto, envie uma solicitação POST usando o método projects.locations.schedules.pause.

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • LOCATION: a região em que a programação de execução do pipeline está ativa no momento. Para mais informações sobre as regiões em que a Vertex AI Pipelines está disponível, consulte o Guia de locais da Vertex AI.
  • PROJECT_ID: o projeto do Google Cloud em que a programação de execução do pipeline está ativa no momento.
  • SCHEDULE_ID: o ID exclusivo gerado durante a criação da programação.

Método HTTP e URL:

POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/schedules/SCHEDULE_ID:pause

Para enviar a solicitação, escolha uma destas opções:

curl

execute o seguinte comando:

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

PowerShell

execute o seguinte comando:

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

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/schedules/SCHEDULE_ID:pause" | Select-Object -Expand Content

Você receberá um código de status bem-sucedido (2xx) e uma resposta vazia.

Python

Use o exemplo a seguir para pausar uma programação de execução de pipeline:

from google.cloud import aiplatform

pipeline_job_schedule = aiplatform.PipelineJobSchedule.get(schedule_id=SCHEDULE_ID)

pipeline_job_schedule.pause()

SCHEDULE_ID: o ID exclusivo gerado durante a criação da programação.

Atualizar uma programação

É possível atualizar uma programação de pipeline existente que foi criada para seu projeto do Google Cloud.

Atualizar uma programação é semelhante a excluir e recriar uma programação. Quando você atualiza uma programação, novas execuções são programadas com base na frequência da programação atualizada. Novas execuções não são mais criadas com base na programação antiga, e todas as execuções na fila são descartadas. As execuções de pipeline que já foram criadas pela programação antiga não são pausadas ou canceladas.

REST

Para atualizar a programação de uma execução de pipeline no seu projeto, envie uma solicitação PATCH usando o método projects.locations.schedules.patch.

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • LOCATION: a região em que você quer executar o pipeline. Para mais informações sobre as regiões em que a Vertex AI Pipelines está disponível, consulte o guia de locais da Vertex AI.
  • PROJECT_ID: o projeto do Google Cloud em que você quer executar o pipeline.
  • DISPLAY_NAME: o nome da programação do pipeline. É possível especificar um nome com um tamanho máximo de 128 caracteres UTF-8.
  • MAX_CONCURRENT_RUN_COUNT: o número máximo de execuções simultâneas na programação.

Método HTTP e URL:

POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/schedules/SCHEDULE_ID?updateMask=display_name,max_run_count -d '{"display_name":"DISPLAY_NAME", "max_concurrent_run_count": MAX_CONCURRENT_RUN_COUNT}'

Para enviar a solicitação, escolha uma destas opções:

curl

execute o seguinte comando:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d "" \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/schedules/SCHEDULE_ID?updateMask=display_name,max_run_count -d '{"display_name":"DISPLAY_NAME", "max_concurrent_run_count": MAX_CONCURRENT_RUN_COUNT}'"

PowerShell

execute o seguinte comando:

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

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/schedules/SCHEDULE_ID?updateMask=display_name,max_run_count -d '{"display_name":"DISPLAY_NAME", "max_concurrent_run_count": MAX_CONCURRENT_RUN_COUNT}'" | Select-Object -Expand Content

Será exibido um código semelhante a este. Com base na atualização, a NEXT_RUN_TIME é recalculada. Quando você atualiza a programação, a START_TIME permanece inalterada.

{
  "name": "projects/PROJECT_ID/locations/LOCATION/schedules/SCHEDULE_ID",
  "displayName": "DISPLAY_NAME",
  "startTime": "START_TIME",
  "state": "ACTIVE",
  "createTime": "2025-01-01T00:00:00.000000Z",
  "nextRunTime": NEXT_RUN_TIME,
  "maxConcurrentRunCount": "MAX_CONCURRENT_RUN_COUNT",
}

Python

Use o exemplo a seguir para programar execuções de pipeline usando o método PipelineJobSchedule.update:

from google.cloud import aiplatform

pipeline_job_schedule = aiplatform.PipelineJobSchedule.get(schedule_id=SCHEDULE_ID)

pipeline_job_schedule.update(
  display_name='DISPLAY_NAME',
  max_concurrent_run_count=MAX_CONCURRENT_RUN_COUNT,
)

  • SCHEDULE_ID: o ID exclusivo gerado durante a criação da programação.
  • DISPLAY_NAME: o nome da programação do pipeline. É possível especificar um nome com um tamanho máximo de 128 caracteres UTF-8.
  • MAX_CONCURRENT_RUN_COUNT: o número máximo de execuções simultâneas na programação.

Retomar uma programação

É possível retomar uma programação de pipeline pausada especificando o ID dela. Quando você retoma uma programação, o estado dela muda de PAUSED para ACTIVE.

Console

É possível retomar uma programação de execução de pipeline pausada.

Siga estas instruções para retomar uma programação:

  1. No console do Google Cloud, na seção "Vertex AI", acesse a guia Programações na página Pipelines.

    Acessar "Programações"

  2. Acesse o menu Opções que está na mesma linha da programação que você quer retomar e clique em Retomar. Você pode retomar qualquer programação em que a coluna Status mostre Pausada.

REST

Para retomar uma programação de execução do canal no seu projeto, envie uma solicitação POST usando o método projects.locations.schedules.resume.

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • LOCATION: a região em que a programação de execução do pipeline está pausada no momento. Para mais informações sobre as regiões em que a Vertex AI Pipelines está disponível, consulte o Guia de locais da Vertex AI.
  • PROJECT_ID: o projeto do Google Cloud em que a programação de execução do pipeline está pausada no momento.
  • SCHEDULE_ID: o ID exclusivo gerado durante a criação da programação.
  • CATCH_UP: (opcional) indica se a programação pausada precisa preencher as execuções do pipeline ignoradas. Para preencher e reprogramar as execuções de pipeline ignoradas, digite o seguinte:
    { "catch_up":true } Esse parâmetro é definido como "false" por padrão.

Método HTTP e URL:

POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/schedules/SCHEDULE_ID:resume -d 'CATCH_UP'

Para enviar a solicitação, escolha uma destas opções:

curl

execute o seguinte comando:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d "" \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/schedules/SCHEDULE_ID:resume -d 'CATCH_UP'"

PowerShell

execute o seguinte comando:

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

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/schedules/SCHEDULE_ID:resume -d 'CATCH_UP'" | Select-Object -Expand Content

Você receberá um código de status bem-sucedido (2xx) e uma resposta vazia.

Python

Use o exemplo a seguir para retomar uma programação de execução de pipeline pausada:

from google.cloud import aiplatform

pipeline_job_schedule = aiplatform.PipelineJobSchedule.get(schedule_id=SCHEDULE_ID)

pipeline_job_schedule.resume(catch_up=CATCH_UP)
  • SCHEDULE_ID: o ID exclusivo gerado durante a criação da programação.
  • CATCH_UP: (opcional) indica se a programação pausada precisa preencher as execuções do pipeline ignoradas. Para preencher e reprogramar as execuções de pipeline ignoradas, digite o seguinte:
    { "catch_up":true }

Excluir uma programação

É possível excluir uma programação de pipeline especificando o código dela.

Console

É possível excluir uma programação de execução do pipeline, independentemente do status dela.

Use as instruções a seguir para excluir uma programação:

  1. No console do Google Cloud, na seção "Vertex AI", acesse a guia Programações na página Pipelines.

    Acessar "Programações"

  2. Acesse o menu de opções que está na mesma linha da programação que você quer excluir e clique em Excluir.

  3. Para confirmar a exclusão, clique em Excluir.

REST

Para excluir uma programação de execução do canal em seu projeto, envie uma solicitação DELETE usando o método projects.locations.schedules.delete.

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • LOCATION: a região em que você quer excluir a programação do pipeline. Para mais informações sobre as regiões em que a Vertex AI Pipelines está disponível, consulte o guia de locais da Vertex AI.
  • PROJECT_ID: o projeto do Google Cloud em que você quer excluir a programação.
  • SCHEDULE_ID: o ID exclusivo gerado durante a criação da programação.

Método HTTP e URL:

DELETE https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/schedules/SCHEDULE_ID

Para enviar a solicitação, escolha uma destas opções:

curl

execute o seguinte comando:

curl -X DELETE \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/schedules/SCHEDULE_ID"

PowerShell

execute o seguinte comando:

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

Invoke-WebRequest `
-Method DELETE `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/schedules/SCHEDULE_ID" | Select-Object -Expand Content

Será exibido um código semelhante a este. OPERATION_ID representa a operação de exclusão.

{
  "name": "projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.aiplatform.v1.DeleteOperationMetadata",
    "genericMetadata": {
      "createTime": "20xx-01-01T00:00:00.000000Z",
      "updateTime": "20xx-01-01T00:00:00.000000Z"
    }
  },
  "done": true,
  "response": {
    "@type": "type.googleapis.com/google.protobuf.Empty"
  }
}

Python

Use o exemplo a seguir para excluir uma programação de execução do pipeline:

from google.cloud import aiplatform

pipeline_job_schedule = aiplatform.PipelineJobSchedule.get(schedule_id=SCHEDULE_ID)

pipeline_job_schedule.delete()

SCHEDULE_ID: o ID exclusivo gerado durante a criação da programação.

Listar todos os jobs do pipeline criados por uma programação

É possível ver uma lista de todos os jobs do pipeline criados por uma programação especificando o código da programação.

REST

Para listar todas as execuções de pipeline criadas por uma programação de pipeline, envie uma solicitação GET usando o método projects.locations.pipelineJobs.

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • LOCATION: a região em que você quer executar o pipeline. Para mais informações sobre as regiões em que a Vertex AI Pipelines está disponível, consulte o guia de locais da Vertex AI.
  • PROJECT_ID: o projeto do Google Cloud em que você quer executar o pipeline.
  • SCHEDULE_ID: o ID exclusivo gerado durante a criação da programação.

Método HTTP e URL:

GET https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/pipelineJobs?filter=schedule_name=projects/PROJECT/locations/LOCATION/schedules/SCHEDULE_ID

Para enviar a solicitação, escolha uma destas opções:

curl

execute o seguinte comando:

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/pipelineJobs?filter=schedule_name=projects/PROJECT/locations/LOCATION/schedules/SCHEDULE_ID"

PowerShell

execute o seguinte comando:

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

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/pipelineJobs?filter=schedule_name=projects/PROJECT/locations/LOCATION/schedules/SCHEDULE_ID" | Select-Object -Expand Content

Será exibido um código semelhante a este.

{
  "pipelineJobs": [
    PIPELINE_JOB_ENTITY_1,
    PIPELINE_JOB_ENTITY_2,
    ...
  ],
}

Python

Use o exemplo a seguir para listar todos os jobs de pipeline criados por uma programação na ordem descendente do horário de criação:

from google.cloud import aiplatform

pipeline_job_schedule = aiplatform.PipelineJobSchedule.get(schedule_id=SCHEDULE_ID)

pipeline_job_schedule.list_jobs(order_by='create_time_desc')

SCHEDULE_ID: o ID exclusivo gerado durante a criação da programação.