Pianificare l'esecuzione di una pipeline con l'API Scheduler

Puoi pianificare esecuzioni di pipeline una tantum o ricorrenti in Vertex AI utilizzando l'API Scheduler. In questo modo puoi implementare l'addestramento continuo nel tuo progetto.

Dopo aver creato una pianificazione, può avere uno dei seguenti stati:

  • ACTIVE: una pianificazione attiva crea continuamente esecuzioni della pipeline in base alla frequenza configurata utilizzando l'espressione di pianificazione cron. Una programmazione diventa attiva all'ora di inizio e rimane in questo stato fino all'ora di fine specificata, o finché non la metti in pausa.

  • PAUSED: una pianificazione in pausa non crea esecuzioni della pipeline. Puoi riprendere una programmazione in pausa per renderla di nuovo attiva. Quando riprendi una pianificazione in pausa, puoi utilizzare il parametro catch_up per specificare se le esecuzioni saltate (le esecuzioni che sarebbero state pianificate se la pianificazione fosse stata attiva) devono essere ripianificate e inviate alla prima pianificazione possibile.

  • COMPLETED: una pianificazione completata non crea più nuove esecuzioni della pipeline. Una pianificazione viene completata in base all'ora di fine specificata.

Puoi utilizzare l'API Scheduler per:

Prima di iniziare

Prima di pianificare l'esecuzione di una pipeline utilizzando l'API Scheduler, segui queste istruzioni per configurare il progetto Google Cloud e l'ambiente di sviluppo nella console Google Cloud .

  1. Concedi almeno una delle seguenti autorizzazioni IAM all'utente o al account di servizio per l'utilizzo dell'API Scheduler:

    • roles/aiplatform.admin
    • roles/aiplatform.user
  2. Crea e compila una pipeline. Per ulteriori informazioni, vedi Creare una pipeline.

Crea una pianificazione

Puoi creare una programmazione una tantum o ricorrente.

Console

Segui le istruzioni riportate di seguito per creare una pianificazione utilizzando la console Google Cloud . Se esiste già una pianificazione per il progetto e la regione, segui le istruzioni riportate in Crea un'esecuzione della pipeline.

Per creare una pianificazione della pipeline:

  1. Nella Google Cloud console, nella sezione Vertex AI, vai alla scheda Pianificazioni nella pagina Pipeline.

    Vai a Pianificazioni

  2. Fai clic su Crea esecuzione pianificata per aprire il riquadro Crea esecuzione della pipeline.

  3. Specifica i seguenti Dettagli esecuzione selezionando una delle seguenti opzioni:

    • Per creare un'esecuzione della pipeline basata su un modello di pipeline esistente, fai clic su Seleziona dalle pipeline esistenti e inserisci i seguenti dettagli:

      1. Seleziona il repository contenente il file di definizione della pipeline o del componente.

      2. Seleziona la pipeline o il componente e la versione.

    • Per caricare una definizione della pipeline compilata, fai clic su Carica file e inserisci i seguenti dettagli:

      1. Fai clic su Sfoglia per aprire il selettore di file. Vai al file YAML della pipeline compilata che vuoi eseguire, seleziona la pipeline e fai clic su Apri.

      2. Il Nome pipeline o componente mostra il nome specificato nella definizione della pipeline, per impostazione predefinita. (Facoltativo) Specifica un nome pipeline diverso.

    • Per importare un file di definizione della pipeline da Cloud Storage, fai clic su Importa da Cloud Storage e inserisci i seguenti dettagli:

      1. Fai clic su Sfoglia per accedere al bucket Cloud Storage contenente l'oggetto di definizione della pipeline, seleziona il file e poi fai clic su Seleziona.

      2. Specifica il nome della pipeline o del componente.

  4. Specifica un Nome esecuzione per identificare in modo univoco l'esecuzione della pipeline.

  5. Specifica la pianificazione di esecuzione nel seguente modo:

    1. Seleziona Ricorrente.

    2. Nella sezione Ora di inizio, specifica quando la pianificazione diventa attiva.

      • Per programmare la prima esecuzione in modo che avvenga immediatamente dopo la creazione della pianificazione, seleziona Immediatamente.

      • Per pianificare la prima esecuzione in un orario e una data specifici, seleziona Attiva.

    3. Nel campo Frequenza, specifica la frequenza con cui pianificare ed eseguire le esecuzioni della pipeline utilizzando un'espressione di pianificazione cron basata su unix-cron.

    4. Nella sezione Termina, specifica quando termina la programmazione.

      • Per indicare che la pianificazione crea esecuzioni della pipeline a tempo indeterminato, seleziona Mai.

      • Per indicare che la pianificazione termina in una data e un'ora specifiche, seleziona Data e specifica la data e l'ora di fine della pianificazione.

  6. (Facoltativo) Per specificare un account di servizio personalizzato, una chiave di crittografia gestita dal cliente (CMEK) o una rete VPC con peering, fai clic su Opzioni avanzate e specifica un account di servizio, una CMEK o un nome di rete VPC con peering.

  7. Fai clic su Continua e specifica la configurazione di runtime per la pipeline.

  8. Fai clic su Invia per creare la pianificazione di esecuzione della pipeline.

REST

Per creare una pianificazione di esecuzione della pipeline, invia una richiesta POST utilizzando il metodo projects.locations.schedules.create.

Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

  • LOCATION: La regione in cui vuoi eseguire la pipeline. Per saperne di più sulle regioni in cui è disponibile Vertex AI Pipelines, consulta la guida alle località di Vertex AI.
  • PROJECT_ID: Il Google Cloud progetto in cui vuoi eseguire la pipeline.
  • DISPLAY_NAME: il nome della pianificazione della pipeline. Puoi specificare un nome con una lunghezza massima di 128 caratteri UTF-8.
  • START_TIME: timestamp dopo il quale è possibile pianificare la prima esecuzione, ad esempio 2045-07-26T00:00:00Z. Se non specifichi questo parametro, il timestamp corrispondente alla data e all'ora in cui crei la pianificazione viene utilizzato come valore predefinito.
  • END_TIME: timestamp dopo il quale le esecuzioni della pipeline non vengono più pianificate. Una volta raggiunto il END_TIME, lo stato della pianificazione cambia in COMPLETED. Se non specifichi questo parametro, la pianificazione continua a eseguire nuovi job della pipeline a tempo indeterminato finché non metti in pausa o elimini la pianificazione.
  • CRON_EXPRESSION: espressione di pianificazione cron che rappresenta la frequenza con cui pianificare ed eseguire le esecuzioni della pipeline. Per ulteriori informazioni, consulta cron.
  • MAX_CONCURRENT_RUN_COUNT: il numero massimo di esecuzioni simultanee per la pianificazione.
  • API_REQUEST_TEMPLATE: modello di richiesta API PipelineService.CreatePipelineJob utilizzato per eseguire le esecuzioni della pipeline pianificate. Per ulteriori informazioni sui parametri nel modello di richiesta API, consulta la documentazione di pipelineJobs.create. Tieni presente che non puoi specificare il parametro pipelineJobId in questo modello, in quanto l'API Scheduler non lo supporta.

Metodo HTTP e URL:

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

Corpo JSON della richiesta:

{
  "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
}

Per inviare la richiesta, scegli una di queste opzioni:

curl

Salva il corpo della richiesta in un file denominato request.json, quindi esegui il comando seguente:

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

Salva il corpo della richiesta in un file denominato request.json, quindi esegui il comando seguente:

$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

Dovresti vedere un output simile al seguente. Puoi utilizzare SCHEDULE_ID dalla risposta per recuperare, mettere in pausa, ripristinare o eliminare la pianificazione. PIPELINE_JOB_CREATION_REQUEST rappresenta la richiesta API per creare il job della 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

Puoi creare una pianificazione dell'esecuzione della pipeline nei seguenti modi:

  • Crea una pianificazione basata su un PipelineJob utilizzando il metodo PipelineJob.create_schedule.

  • Creazione di una pianificazione utilizzando il metodo PipelineJobSchedule.create.

Durante la creazione di una pianificazione di esecuzione della pipeline, puoi anche passare i seguenti segnaposto supportati dall'SDK KFP come input:

  • {{$.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}}

Per maggiori informazioni, consulta Tipi di input speciali nella documentazione di Kubeflow Pipelines v2.

Creare una programmazione da un PipelineJob

Utilizza il seguente esempio per pianificare le esecuzioni della pipeline utilizzando il metodo 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: il percorso del file YAML della pipeline compilato. Può essere un percorso locale o un URI Cloud Storage.

    (Facoltativo) Per specificare una versione particolare di un modello, includi il tag della versione insieme al percorso in uno dei seguenti formati:

    • COMPILED_PIPELINE_PATH:TAG, dove TAG è il tag della versione.

    • COMPILED_PIPELINE_PATH@SHA256_TAG, dove SHA256_TAG è il valore hash sha256 della versione della pipeline.

  • PIPELINE_ROOT_PATH: (facoltativo) Per ignorare il percorso root della pipeline specificato nella definizione della pipeline, specifica un percorso a cui il job della pipeline può accedere, ad esempio un URI del bucket Cloud Storage.

  • DISPLAY_NAME: il nome della pipeline. Verrà visualizzato nella console Google Cloud .

  • SCHEDULE_NAME: il nome della pianificazione della pipeline. Puoi specificare un nome con una lunghezza massima di 128 caratteri UTF-8.

  • CRON: espressione di pianificazione cron che rappresenta la frequenza di pianificazione ed esecuzione delle esecuzioni della pipeline. Per ulteriori informazioni, vedi Cron.

  • MAX_CONCURRENT_RUN_COUNT: il numero massimo di esecuzioni simultanee per la pianificazione.

  • MAX_RUN_COUNT: il numero massimo di esecuzioni della pipeline che la pianificazione crea dopo il completamento.

Creare una pianificazione utilizzando PipelineJobSchedule.create

Utilizza il seguente esempio per pianificare le esecuzioni della pipeline utilizzando il metodo 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: il percorso del file YAML della pipeline compilato. Può essere un percorso locale o un URI Cloud Storage.

    (Facoltativo) Per specificare una versione particolare di un modello, includi il tag della versione insieme al percorso in uno dei seguenti formati:

    • COMPILED_PIPELINE_PATH:TAG, dove TAG è il tag della versione.

    • COMPILED_PIPELINE_PATH@SHA256_TAG, dove SHA256_TAG è il valore hash sha256 della versione della pipeline.

  • PIPELINE_ROOT_PATH: (facoltativo) Per ignorare il percorso root della pipeline specificato nella definizione della pipeline, specifica un percorso a cui il job della pipeline può accedere, ad esempio un URI del bucket Cloud Storage.

  • DISPLAY_NAME: il nome della pipeline. Verrà visualizzato nella console Google Cloud .

  • SCHEDULE_NAME: il nome della pianificazione della pipeline. Puoi specificare un nome con una lunghezza massima di 128 caratteri UTF-8.

  • CRON: espressione di pianificazione cron che rappresenta la frequenza di pianificazione ed esecuzione delle esecuzioni della pipeline. Per ulteriori informazioni, vedi Cron.

  • MAX_CONCURRENT_RUN_COUNT: il numero massimo di esecuzioni simultanee per la pianificazione.

  • MAX_RUN_COUNT: il numero massimo di esecuzioni della pipeline che la pianificazione crea dopo il completamento.

Elenca pianificazioni

Puoi visualizzare l'elenco delle pianificazioni delle pipeline create per il tuo progetto Google Cloud .

Console

Puoi visualizzare l'elenco delle pianificazioni della pipeline nella scheda Pianificazioni della console Google Cloud per la regione selezionata.

Per visualizzare l'elenco delle pianificazioni delle pipeline, nella console Google Cloud , nella sezione Vertex AI, vai alla scheda Pianificazioni nella pagina Pipeline.

Vai a Pianificazioni

REST

Per elencare le pianificazioni delle esecuzioni della pipeline nel tuo progetto, invia una richiesta GET utilizzando il metodo projects.locations.schedules.list.

Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

  • LOCATION: La regione in cui vuoi eseguire la pipeline. Per saperne di più sulle regioni in cui è disponibile Vertex AI Pipelines, consulta la guida alle località di Vertex AI.
  • PROJECT_ID: Il Google Cloud progetto in cui vuoi eseguire la pipeline.
  • FILTER: (facoltativo) Espressione per filtrare l'elenco delle pianificazioni. Per ulteriori informazioni, vedi…
  • PAGE_SIZE: (facoltativo) il numero di pianificazioni da elencare per pagina.
  • PAGE_TOKEN: (facoltativo) il token di pagina dell'elenco standard, in genere ottenuto tramite ListSchedulesResponse.next_page_token[] da una precedente chiamata ScheduleService.ListSchedules[].
  • ORDER_BY: (facoltativo) elenco di campi separato da virgole, che indica l'ordine di ordinamento delle pianificazioni nella risposta.

Metodo HTTP e URL:

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

Per inviare la richiesta, scegli una di queste opzioni:

curl

Esegui questo 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

Esegui questo 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

Dovresti vedere un output simile al seguente:

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

Python

Utilizza il seguente esempio per elencare tutte le pianificazioni nel tuo progetto in ordine decrescente in base all'ora di creazione:

from google.cloud import aiplatform

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

DISPLAY_NAME: il nome della pianificazione della pipeline. Puoi specificare un nome con una lunghezza massima di 128 caratteri UTF-8.

Recuperare una programmazione

Puoi recuperare una pianificazione dell'esecuzione della pipeline utilizzando l'ID pianificazione.

REST

Per recuperare una pianificazione di esecuzione della pipeline, invia una richiesta GET utilizzando il metodo projects.locations.schedules.get e l'ID pianificazione.

Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

  • LOCATION: La regione in cui vuoi eseguire la pipeline. Per saperne di più sulle regioni in cui è disponibile Vertex AI Pipelines, consulta la guida alle località di Vertex AI.
  • PROJECT_ID: Il Google Cloud progetto in cui vuoi eseguire la pipeline.
  • SCHEDULE_ID: ID pianificazione univoco generato durante la creazione della pianificazione.

Metodo HTTP e URL:

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

Per inviare la richiesta, scegli una di queste opzioni:

curl

Esegui questo 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

Esegui questo 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

Dovresti vedere un output simile al seguente. PIPELINE_JOB_CREATION_REQUEST rappresenta la richiesta API per creare il job della 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

Utilizza il seguente esempio per recuperare una pianificazione di esecuzione della pipeline utilizzando l'ID pianificazione:

from google.cloud import aiplatform

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

SCHEDULE_ID: ID pianificazione univoco generato durante la creazione della pianificazione.

Mettere in pausa una pianificazione

Puoi mettere in pausa una pianificazione della pipeline attiva specificando l'ID pianificazione. Quando metti in pausa una programmazione, il relativo stato cambia da ACTIVE a PAUSED.

Console

Puoi mettere in pausa una pianificazione di esecuzione della pipeline attualmente attiva.

Per mettere in pausa una pianificazione:

  1. Nella Google Cloud console, nella sezione Vertex AI, vai alla scheda Pianificazioni nella pagina Pipeline.

    Vai a Pianificazioni

  2. Vai al menu delle opzioni nella stessa riga della pianificazione che vuoi mettere in pausa e fai clic su Metti in pausa. Puoi mettere in pausa qualsiasi programmazione in cui la colonna Stato mostra Attivo.

REST

Per mettere in pausa una pianificazione di esecuzione della pipeline nel tuo progetto, invia una richiesta POST utilizzando il metodo projects.locations.schedules.pause.

Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

  • LOCATION: la regione in cui è attualmente attivo il programma di esecuzione della pipeline. Per saperne di più sulle regioni in cui è disponibile Vertex AI Pipelines, consulta la guida alle località di Vertex AI.
  • PROJECT_ID: Il Google Cloud progetto in cui la pianificazione dell'esecuzione della pipeline è attualmente attiva.
  • SCHEDULE_ID: ID pianificazione univoco generato durante la creazione della pianificazione.

Metodo HTTP e URL:

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

Per inviare la richiesta, scegli una di queste opzioni:

curl

Esegui questo 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

Esegui questo 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

Dovresti ricevere un codice di stato riuscito (2xx) e una risposta vuota.

Python

Utilizza il seguente esempio per mettere in pausa una pianificazione di esecuzione della pipeline:

from google.cloud import aiplatform

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

pipeline_job_schedule.pause()

SCHEDULE_ID: ID pianificazione univoco generato durante la creazione della pianificazione.

Aggiorna una pianificazione

Puoi aggiornare una pianificazione della pipeline esistente creata per il tuo progettoGoogle Cloud .

L'aggiornamento di una pianificazione è simile all'eliminazione e alla ricreazione di una pianificazione. Quando aggiorni una pianificazione, le nuove esecuzioni vengono pianificate in base alla frequenza della pianificazione aggiornata. Le nuove esecuzioni non vengono più create in base alla vecchia pianificazione e le esecuzioni in coda vengono eliminate. Le esecuzioni della pipeline già create in base alla vecchia pianificazione non vengono messe in pausa o annullate.

REST

Per aggiornare una pianificazione di esecuzione della pipeline nel tuo progetto, invia una richiesta PATCH utilizzando il metodo projects.locations.schedules.patch.

Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

  • LOCATION: La regione in cui vuoi eseguire la pipeline. Per saperne di più sulle regioni in cui è disponibile Vertex AI Pipelines, consulta la guida alle località di Vertex AI.
  • PROJECT_ID: Il Google Cloud progetto in cui vuoi eseguire la pipeline.
  • DISPLAY_NAME: il nome della pianificazione della pipeline. Puoi specificare un nome con una lunghezza massima di 128 caratteri UTF-8.
  • MAX_CONCURRENT_RUN_COUNT: il numero massimo di esecuzioni simultanee per la pianificazione.

Metodo 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}'

Per inviare la richiesta, scegli una di queste opzioni:

curl

Esegui questo 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

Esegui questo 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

Dovresti vedere un output simile al seguente. In base all'aggiornamento, il NEXT_RUN_TIME viene ricalcolato. Quando aggiorni la programmazione, il START_TIME rimane invariato.

{
  "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

Utilizza il seguente esempio per pianificare le esecuzioni della pipeline utilizzando il metodo 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: ID pianificazione univoco generato durante la creazione della pianificazione.
  • DISPLAY_NAME: il nome della pianificazione della pipeline. Puoi specificare un nome con una lunghezza massima di 128 caratteri UTF-8.
  • MAX_CONCURRENT_RUN_COUNT: il numero massimo di esecuzioni simultanee per la pianificazione.

Riprendere una programmazione

Puoi ripristinare una pianificazione della pipeline in pausa specificando l'ID pianificazione. Quando riprendi una pianificazione, il relativo stato cambia da PAUSED a ACTIVE.

Console

Puoi riprendere una pianificazione di esecuzione della pipeline attualmente in pausa.

Per riprendere una pianificazione:

  1. Nella Google Cloud console, nella sezione Vertex AI, vai alla scheda Pianificazioni nella pagina Pipeline.

    Vai a Pianificazioni

  2. Vai al menu delle opzioni nella stessa riga della pianificazione che vuoi riprendere e fai clic su Riprendi. Puoi riprendere qualsiasi pianificazione in cui la colonna Stato mostra In pausa.

REST

Per riprendere una pianificazione di esecuzione della pipeline nel tuo progetto, invia una richiesta POST utilizzando il metodo projects.locations.schedules.resume.

Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

  • LOCATION: la regione in cui la pianificazione dell'esecuzione della pipeline è attualmente in pausa. Per saperne di più sulle regioni in cui è disponibile Vertex AI Pipelines, consulta la guida alle località di Vertex AI.
  • PROJECT_ID: Il Google Cloud progetto in cui la pianificazione dell'esecuzione della pipeline è attualmente in pausa.
  • SCHEDULE_ID: ID pianificazione univoco generato durante la creazione della pianificazione.
  • CATCH_UP: (facoltativo) Indica se la pianificazione in pausa deve eseguire il backfill delle esecuzioni della pipeline saltate. Per eseguire il backfill e riprogrammare le esecuzioni della pipeline ignorate, inserisci quanto segue:
    { "catch_up":true } Per impostazione predefinita, questo parametro è impostato su "false".

Metodo HTTP e URL:

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

Per inviare la richiesta, scegli una di queste opzioni:

curl

Esegui questo 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

Esegui questo 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

Dovresti ricevere un codice di stato riuscito (2xx) e una risposta vuota.

Python

Utilizza il seguente esempio per riprendere una pianificazione di esecuzione della pipeline in pausa:

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: ID pianificazione univoco generato durante la creazione della pianificazione.
  • CATCH_UP: (facoltativo) Indica se la pianificazione in pausa deve eseguire il backfill delle esecuzioni della pipeline saltate. Per eseguire il backfill e riprogrammare le esecuzioni della pipeline ignorate, inserisci quanto segue:
    { "catch_up":true }

Elimina una pianificazione

Puoi eliminare una pianificazione della pipeline specificando l'ID pianificazione.

Console

Puoi eliminare una pianificazione di esecuzione della pipeline indipendentemente dal suo stato.

Per eliminare una pianificazione:

  1. Nella Google Cloud console, nella sezione Vertex AI, vai alla scheda Pianificazioni nella pagina Pipeline.

    Vai a Pianificazioni

  2. Vai al menu opzioni nella stessa riga della pianificazione che vuoi eliminare, quindi fai clic su Elimina.

  3. Per confermare l'eliminazione, fai clic su Elimina.

REST

Per eliminare una pianificazione dell'esecuzione della pipeline nel tuo progetto, invia una richiesta DELETE utilizzando il metodo projects.locations.schedules.delete.

Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

  • LOCATION: la regione in cui vuoi eliminare la pianificazione della pipeline. Per saperne di più sulle regioni in cui è disponibile Vertex AI Pipelines, consulta la guida alle località di Vertex AI.
  • PROJECT_ID: Il progetto Google Cloud in cui vuoi eliminare la pianificazione.
  • SCHEDULE_ID: l'ID univoco della pianificazione generato durante la creazione della pianificazione.

Metodo HTTP e URL:

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

Per inviare la richiesta, scegli una di queste opzioni:

curl

Esegui questo 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

Esegui questo 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

Dovresti vedere un output simile al seguente. OPERATION_ID rappresenta l'operazione di eliminazione.

{
  "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

Utilizza il seguente esempio per eliminare una pianificazione di esecuzione della pipeline:

from google.cloud import aiplatform

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

pipeline_job_schedule.delete()

SCHEDULE_ID: ID pianificazione univoco generato durante la creazione della pianificazione.

Elenca tutti i job della pipeline creati da una pianificazione

Puoi visualizzare un elenco di tutti i job della pipeline creati da una pianificazione specificando l'ID pianificazione.

REST

Per elencare tutte le esecuzioni della pipeline create da una pianificazione della pipeline, invia una richiesta GET utilizzando il metodo projects.locations.pipelineJobs.

Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

  • LOCATION: La regione in cui vuoi eseguire la pipeline. Per saperne di più sulle regioni in cui è disponibile Vertex AI Pipelines, consulta la guida alle località di Vertex AI.
  • PROJECT_ID: Il Google Cloud progetto in cui vuoi eseguire la pipeline.
  • SCHEDULE_ID: ID pianificazione univoco generato durante la creazione della pianificazione.

Metodo 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

Per inviare la richiesta, scegli una di queste opzioni:

curl

Esegui questo 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

Esegui questo 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

Dovresti vedere un output simile al seguente.

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

Python

Utilizza il seguente esempio per elencare tutti i job della pipeline creati da una pianificazione in ordine decrescente in base all'ora di creazione:

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: ID pianificazione univoco generato durante la creazione della pianificazione.