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

Una volta creata, la pianificazione può avere uno dei seguenti stati:

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

  • PAUSED: una pianificazione in pausa non crea esecuzioni della pipeline. Puoi riprendere una pianificazione in pausa per riattivarla. Quando riprendi una pianificazione in pausa, puoi utilizzare il parametro catch_up per specificare se è necessario riprogrammare e inviare le esecuzioni saltate (esecuzioni che sarebbero state pianificate se la pianificazione fosse stata attiva).

  • 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 le istruzioni riportate di seguito per configurare il progetto e l'ambiente di sviluppo Google Cloud nella console Google Cloud.

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

    • roles/aiplatform.admin
    • roles/aiplatform.user
  2. Costruire e compilare una pipeline. Per ulteriori informazioni, consulta Creare una pipeline.

Crea una pianificazione

Puoi creare una pianificazione 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 Creare un'esecuzione della pipeline.

Segui queste istruzioni per creare una pianificazione della pipeline:

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

    Vai a Pianificazioni

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

  3. Specifica i seguenti dettagli in Esegui dettagli selezionando una delle seguenti opzioni:

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

      1. Seleziona il Repository contenente la pipeline o il file di definizione del componente.

      2. Seleziona Pipeline o componente e 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. Passa al file YAML della pipeline compilata che vuoi eseguire, seleziona la pipeline e fai clic su Apri.

      2. Il campo 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 fai clic su Seleziona.

      2. Specifica il Nome pipeline o componente.

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

  5. Specifica la pianificazione di esecuzione come segue:

    1. Seleziona Ricorrente.

    2. In Ora di inizio, specifica quando attivare la pianificazione.

      • Per pianificare la prima esecuzione in modo che venga eseguita immediatamente dopo la creazione della pianificazione, seleziona Immediatamente.

      • Per pianificare la prima esecuzione in modo che venga eseguita in una data e un'ora specifiche, seleziona On.

    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. In Termina, specifica quando termina la pianificazione.

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

      • Per indicare che la pianificazione termina in una data e un'ora specifiche, seleziona On 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 in peering, fai clic su Opzioni avanzate e specifica un account di servizio, una CMEK o un nome di rete VPC in peering.

  7. Fai clic su Continua e specifica la Configurazione 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, effettua 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 progetto Google Cloud 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, come valore predefinito viene utilizzato il timestamp corrispondente alla data e all'ora in cui crei la pianificazione.
  • END_TIME: timestamp dopo il quale le esecuzioni della pipeline non sono più pianificate. Una volta raggiunto END_TIME, lo stato della pianificazione cambia in COMPLETED. Se non specifichi questo parametro, la pianificazione continua a eseguire i 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 per pianificare ed eseguire le esecuzioni della pipeline. Per maggiori 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 pianificate della pipeline. Per maggiori informazioni sui parametri nel modello di richiesta API, consulta la documentazione per pipelineJobs.create. Tieni presente che non puoi specificare il parametro pipelineJobId in questo modello, poiché l'API scheduler non supporta questo parametro.

Metodo HTTP e URL:

POST http://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 delle seguenti opzioni:

arricciatura

Salva il corpo della richiesta in un file denominato request.json ed esegui questo comando:

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

PowerShell

Salva il corpo della richiesta in un file denominato request.json ed esegui questo 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 "http://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/schedules" | Select-Object -Expand Content

Dovresti vedere un output simile al seguente. Puoi utilizzare il SCHEDULE_ID della risposta per recuperare, mettere in pausa, riprendere 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 di esecuzione della pipeline nei modi seguenti:

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

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

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

  • {{$.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 ulteriori informazioni, consulta la sezione Tipi di input speciali nella documentazione di Kubeflow Pipelines v2.

Crea una programmazione da un PipelineJob

Usa 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 compilata. Può essere un percorso locale o un URI Cloud Storage.

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

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

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

  • PIPELINE_ROOT_PATH: (facoltativo) per eseguire l'override del percorso root della pipeline specificato nella definizione della pipeline, specifica un percorso a cui può accedere il job della pipeline, ad esempio l'URI di un bucket Cloud Storage.

  • DISPLAY_NAME: il nome della pipeline. Queste informazioni verranno visualizzate 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 create dalla pianificazione, dopo le quali è stata completata.

Crea una programmazione utilizzando PipelineJobSchedule.create

Usa 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 compilata. Può essere un percorso locale o un URI Cloud Storage.

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

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

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

  • PIPELINE_ROOT_PATH: (facoltativo) per eseguire l'override del percorso root della pipeline specificato nella definizione della pipeline, specifica un percorso a cui può accedere il job della pipeline, ad esempio l'URI di un bucket Cloud Storage.

  • DISPLAY_NAME: il nome della pipeline. Queste informazioni verranno visualizzate 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 create dalla pianificazione, dopo le quali è stata completata.

Elenco pianificazioni

Puoi visualizzare l'elenco delle pianificazioni della 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 sezione Vertex AI della console Google Cloud vai alla scheda Pianificazioni nella pagina Pipelines.

Vai a Pianificazioni

REST

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

Prima di utilizzare i dati della richiesta, effettua 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 progetto Google Cloud 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 standard della pagina elenco, in genere ottenuto tramite ListSchedulesResponse.next_page_token[] da una chiamata ScheduleService.ListSchedules[] precedente.
  • ORDER_BY: (facoltativo) elenco di campi separato da virgole che indica l'ordinamento delle pianificazioni nella risposta.

Metodo HTTP e URL:

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

Per inviare la richiesta, scegli una delle seguenti opzioni:

arricciatura

Esegui questo comando:

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"http://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 "http://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 del progetto in ordine decrescente in base agli orari 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.

Recupera una pianificazione

Puoi recuperare la pianificazione di un'esecuzione della pipeline utilizzando l'ID pianificazione.

REST

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

Prima di utilizzare i dati della richiesta, effettua 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 progetto Google Cloud in cui vuoi eseguire la pipeline.
  • SCHEDULE_ID: ID programmazione univoco generato durante la creazione della pianificazione.

Metodo HTTP e URL:

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

Per inviare la richiesta, scegli una delle seguenti opzioni:

arricciatura

Esegui questo comando:

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"http://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 "http://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 la pianificazione dell'esecuzione di una pipeline utilizzando l'ID pianificazione:

from google.cloud import aiplatform

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

SCHEDULE_ID: ID programmazione 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 pianificazione, il suo 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 sezione Vertex AI della console Google Cloud, vai alla scheda Pianificazioni nella pagina Pipeline.

    Vai a Pianificazioni

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

REST

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

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

  • LOCATION: la regione in cui è attiva la pianificazione dell'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 progetto Google Cloud in cui la pianificazione dell'esecuzione della pipeline è attualmente attiva.
  • SCHEDULE_ID: ID programmazione univoco generato durante la creazione della pianificazione.

Metodo HTTP e URL:

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

Per inviare la richiesta, scegli una delle seguenti opzioni:

arricciatura

Esegui questo comando:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d "" \
"http://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 "http://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 la pianificazione dell'esecuzione di una pipeline:

from google.cloud import aiplatform

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

pipeline_job_schedule.pause()

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

Aggiorna una pianificazione

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

L'aggiornamento di una pianificazione è simile all'eliminazione e alla nuova creazione 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 tutte le esecuzioni in coda vengono eliminate. Le esecuzioni della pipeline già create con la vecchia pianificazione non vengono messe in pausa o annullate.

REST

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

Prima di utilizzare i dati della richiesta, effettua 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 progetto Google Cloud 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 http://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 delle seguenti opzioni:

arricciatura

Esegui questo comando:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d "" \
"http://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 "http://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 valore di NEXT_RUN_TIME viene ricalcolato. Quando aggiorni la programmazione, 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

Usa 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 programmazione 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 pianificazione

Puoi riprendere una pianificazione di pipeline in pausa specificando l'ID pianificazione. Quando riprendi una pianificazione, lo stato cambia da PAUSED a ACTIVE.

Console

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

Per riprendere una pianificazione:

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

    Vai a Pianificazioni

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

REST

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

Prima di utilizzare i dati della richiesta, effettua 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 progetto Google Cloud in cui la pianificazione dell'esecuzione della pipeline è attualmente in pausa.
  • SCHEDULE_ID: ID programmazione univoco generato durante la creazione della pianificazione.
  • CATCH_UP: (facoltativo) indica se la pianificazione in pausa deve eseguire il backfill delle esecuzioni della pipeline ignorate. Per eseguire il backfill e riprogrammare le esecuzioni della pipeline ignorate, inserisci quanto segue:
    { "catch_up":true } Questo parametro è impostato su "false" per impostazione predefinita.

Metodo HTTP e URL:

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

Per inviare la richiesta, scegli una delle seguenti opzioni:

arricciatura

Esegui questo comando:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d "" \
"http://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 "http://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 la pianificazione dell'esecuzione di una 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 programmazione univoco generato durante la creazione della pianificazione.
  • CATCH_UP: (facoltativo) indica se la pianificazione in pausa deve eseguire il backfill delle esecuzioni della pipeline ignorate. 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 la pianificazione di un'esecuzione della pipeline indipendentemente dal suo stato.

Per eliminare una pianificazione:

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

    Vai a Pianificazioni

  2. Vai al menu opzioni di che si trova nella stessa riga della pianificazione da eliminare e fai clic su Elimina.

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

REST

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

Prima di utilizzare i dati della richiesta, effettua 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 pianificazione univoco generato durante la creazione della pianificazione.

Metodo HTTP e URL:

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

Per inviare la richiesta, scegli una delle seguenti opzioni:

arricciatura

Esegui questo comando:

curl -X DELETE \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"http://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 "http://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

Usa il seguente esempio per eliminare la pianificazione di un'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 programmazione univoco generato durante la creazione della pianificazione.

Elenco di tutti i job di pipeline creati da una pianificazione

Puoi visualizzare un elenco di tutti i job di 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, effettua 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 progetto Google Cloud in cui vuoi eseguire la pipeline.
  • SCHEDULE_ID: ID programmazione univoco generato durante la creazione della pianificazione.

Metodo HTTP e URL:

GET http://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 delle seguenti opzioni:

arricciatura

Esegui questo comando:

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"http://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 "http://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 di pipeline creati da una pianificazione in ordine decrescente in base ai tempi 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 programmazione univoco generato durante la creazione della pianificazione.