使用排程器 API 排定管道執行作業

您可以使用排程器 API 在 Vertex AI 中安排一次性或週期性管道執行作業。這樣一來,您就能在專案中實作持續訓練。

建立排程後,排程可能會處於下列其中一種狀態:

  • ACTIVE:有效的排程會根據使用 Cron 排程運算式設定的頻率,持續建立管道執行作業。排程會在開始時間生效,並維持該狀態,直到指定的結束時間或您暫停為止。

  • PAUSED:已暫停的時間表不會建立管道執行作業。您可以恢復暫停的時間表,讓時間表再次生效。恢復暫停的排程時,您可以使用 catch_up 參數指定是否需要重新排定並在最早的時間表中提交已略過的執行作業 (如果排程處於啟用狀態,就會排定的執行作業)。

  • COMPLETED:已完成的排程不會再建立新的管道執行作業。排程會根據指定的結束時間完成。

您可以使用排程器 API 執行下列操作:

事前準備

使用排程器 API 排定管道執行作業前,請按照下列操作說明在 Google Cloud 控制台中設定 Google Cloud 專案和開發環境。

  1. 請為使用者或服務帳戶授予下列至少一種 IAM 權限,以便使用排程器 API:

    • roles/aiplatform.admin
    • roles/aiplatform.user
  2. 建構及編譯管道。詳情請參閱「建構管道」。

建立排程

您可以建立一次性或週期性時間表。

控制台

請按照下列操作說明,使用 Google Cloud 控制台建立時間表。如果專案和區域已存在排程,請按照「建立管道執行作業」中的操作說明進行。

請按照下列操作說明建立管道時間表:

  1. 在 Google Cloud 控制台的 Vertex AI 專區中,前往「Pipelines」頁面的「Schedules」分頁。

    前往「排程」

  2. 按一下「建立排程執行作業」,開啟「建立管道執行作業」窗格。

  3. 選取下列任一選項,指定以下執行詳細資料

    • 如要根據現有的管道範本建立管道執行作業,請按一下「從現有的管道中選取」,然後輸入以下詳細資料:

      1. 選取包含 pipeline 或元件定義檔案的 存放區

      2. 選取「Pipeline or component」和「Version」

    • 如要上傳已編譯的管道定義,請按一下「上傳檔案」,然後輸入下列詳細資料:

      1. 按一下「Browse」,開啟檔案選取器。前往要執行的已編譯管道 YAML 檔案,選取管道,然後按一下「Open」

      2. 根據預設,「管道或元件名稱」會顯示管道定義中指定的名稱。您可以選擇指定其他管道名稱。

    • 如要從 Cloud Storage 匯入管道定義檔案,請點選「Import from Cloud Storage」(從 Cloud Storage 匯入),然後輸入下列詳細資料:

      1. 按一下「Browse」,前往包含管道定義物件的 Cloud Storage 值區,選取檔案,然後按一下「Select」

      2. 指定 Pipeline 或元件名稱

  4. 指定執行名稱,以便唯一識別管道執行作業。

  5. 指定執行排程,如下所示:

    1. 選取「週期性」

    2. 在「開始時間」下方,指定排程生效的時間。

      • 如要排定第一次執行作業的時間,請在建立排程後立即執行,選取「立即」

      • 如要安排在特定日期和時間執行第一次放送,請選取「開啟」

    3. 在「Frequency」欄位中,使用以 unix-cron 為基礎的 cron 排程運算式,指定排程和執行管道執行作業的頻率。

    4. 在「結束時間」下方,指定排程結束的時間。

      • 如要表示排程會無限期建立管道執行作業,請選取「Never」

      • 如要指出排程會在特定日期和時間結束,請選取「於」,然後指定排程的結束日期和時間。

  6. 選用步驟:如要指定自訂服務帳戶、客戶管理的加密金鑰 (CMEK) 或對等 VPC 網路,請按一下「進階選項」,然後指定服務帳戶、CMEK 或對等 VPC 網路名稱。

  7. 按一下「繼續」,然後指定管道的執行階段設定

  8. 按一下「提交」,即可建立管道執行排程。

REST

如要建立管道執行時間表,請使用 projects.locations.schedules.create 方法傳送 POST 要求。

使用任何要求資料之前,請先替換以下項目:

  • LOCATION:您要執行管道的地區。如要進一步瞭解可使用 Vertex AI Pipelines 的區域,請參閱 Vertex AI 位置指南
  • PROJECT_ID:您要執行管道的 Google Cloud 專案。
  • DISPLAY_NAME:管道排程的名稱。您可以指定長度上限為 128 個 UTF-8 字元的名稱。
  • START_TIME:可排定首次執行作業的時間戳記,例如 2045-07-26T00:00:00Z。如果未指定這個參數,系統會使用與建立時間表時對應的時間戳記做為預設值。
  • END_TIME:管道執行作業的時間戳記,超過此時間戳記後,系統就不會再安排執行。達到 END_TIME 後,排程狀態會變更為 COMPLETED。如果未指定這項參數,排程會持續執行新的管道工作,直到您暫停或刪除排程為止。
  • CRON_EXPRESSION:Cron 排程運算式,代表排定及執行管道執行作業的頻率。詳情請參閱 cron
  • MAX_CONCURRENT_RUN_COUNT:排程的並行執行作業數量上限。
  • API_REQUEST_TEMPLATE:用於執行排定管線執行作業的 PipelineService.CreatePipelineJob API 要求範本。如要進一步瞭解 API 要求範本中的參數,請參閱 pipelineJobs.create 的說明文件。請注意,您無法在這個範本中指定 pipelineJobId 參數,因為排程器 API 不支援這項參數。

HTTP 方法和網址:

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

JSON 要求主體:

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

如要傳送要求,請選擇以下其中一個選項:

curl

將要求主體儲存在名為 request.json 的檔案中,然後執行下列指令:

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

將要求主體儲存在名為 request.json 的檔案中,然後執行下列指令:

$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

畫面會顯示類似以下的輸出。您可以使用回應中的 SCHEDULE_ID 擷取、暫停、繼續或刪除排程。PIPELINE_JOB_CREATION_REQUEST 代表建立管道工作的 API 要求。

{
  "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 適用的 Vertex AI SDK

您可以透過下列方式建立管道執行時間表:

  • 使用 PipelineJob.create_schedule 方法,根據 PipelineJob 建立時間表。

  • 使用 PipelineJobSchedule.create 方法建立時間表。

建立管道執行排程時,您也可以將 KFP SDK 支援的下列預留位置做為輸入內容傳遞:

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

詳情請參閱 Kubeflow Pipelines v2 說明文件中的「特殊輸入類型」。

PipelineJob 建立時間表

請使用下列範例,透過 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:已編譯管道 YAML 檔案的路徑。可以是本機路徑或 Cloud Storage URI。

    選用:如要指定範本的特定版本,請在下列任一格式中加入版本標記和路徑:

    • COMPILED_PIPELINE_PATH:TAG,其中 TAG 是版本標記。

    • COMPILED_PIPELINE_PATH@SHA256_TAG,其中 SHA256_TAG 是管道版本的 sha256 雜湊值。

  • PIPELINE_ROOT_PATH:(選用) 如要覆寫管道定義中指定的管道根路徑,請指定管道工作可存取的路徑,例如 Cloud Storage 儲存桶 URI。

  • DISPLAY_NAME:管道的名稱。這項資訊會顯示在 Google Cloud 控制台中。

  • SCHEDULE_NAME:管道排程的名稱。您可以指定長度上限為 128 個 UTF-8 字元的名稱。

  • CRON:Cron 排程運算式,代表排定及執行管道執行作業的頻率。詳情請參閱 Cron

  • MAX_CONCURRENT_RUN_COUNT:排程的並行執行作業數量上限。

  • MAX_RUN_COUNT:排程完成後,所建立的管道執行次數上限。

使用 PipelineJobSchedule.create 建立時間表

請使用下列範例,透過 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:已編譯管道 YAML 檔案的路徑。可以是本機路徑或 Cloud Storage URI。

    選用:如要指定範本的特定版本,請在下列任一格式中加入版本標記和路徑:

    • COMPILED_PIPELINE_PATH:TAG,其中 TAG 是版本代碼。

    • COMPILED_PIPELINE_PATH@SHA256_TAG,其中 SHA256_TAG 是管道版本的 sha256 雜湊值。

  • PIPELINE_ROOT_PATH:(選用) 如要覆寫管道定義中指定的管道根路徑,請指定管道工作可存取的路徑,例如 Cloud Storage 儲存桶 URI。

  • DISPLAY_NAME:管道的名稱。這項資訊會顯示在 Google Cloud 控制台中。

  • SCHEDULE_NAME:管道排程的名稱。您可以指定長度上限為 128 個 UTF-8 字元的名稱。

  • CRON:Cron 排程運算式,代表排定及執行管道執行作業的頻率。詳情請參閱 Cron

  • MAX_CONCURRENT_RUN_COUNT:排程的並行執行作業數量上限。

  • MAX_RUN_COUNT:排程完成後,所建立的管道執行次數上限。

列出時間表

您可以查看為 Google Cloud 專案建立的管道排程清單。

控制台

您可以前往所選區域的 Google Cloud 控制台,在「排程」分頁中查看管道排程清單。

如要查看管道時間表清單,請在 Google Cloud 控制台的 Vertex AI 專區中,前往「Pipelines」頁面上的「Schedules」分頁標籤。

前往「排程」

REST

如要列出專案中的管道執行排程,請使用 projects.locations.schedules.list 方法傳送 GET 要求。

使用任何要求資料之前,請先替換以下項目:

  • LOCATION:要執行管道的地區。如要進一步瞭解可使用 Vertex AI Pipelines 的區域,請參閱 Vertex AI 位置指南
  • PROJECT_ID:您要執行管道的 Google Cloud 專案。
  • FILTER:(選用) 用於篩選時程表清單的運算式。詳情請參閱 ...
  • PAGE_SIZE:(選用) 每頁列出的時間表數量。
  • PAGE_TOKEN:(選用) 標準清單頁面符記,通常是透過 ListSchedulesResponse.next_page_token[] 從先前的 ScheduleService.ListSchedules[] 呼叫取得。
  • ORDER_BY:(選用) 以半形逗號分隔的欄位清單,表示回應中時間表的排序。

HTTP 方法和網址:

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

如要傳送要求,請選擇以下其中一個選項:

curl

執行下列指令:

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

執行下列指令:

$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

畫面會顯示類似以下的輸出:

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

Python 適用的 Vertex AI SDK

請使用以下範例,按照建立時間的倒序列出專案中的所有時間表:

from google.cloud import aiplatform

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

DISPLAY_NAME:管道排程的名稱。您可以指定長度上限為 128 個 UTF-8 字元的名稱。

擷取時間表

您可以使用排程 ID 擷取管道執行排程。

REST

如要擷取管道執行時間表,請使用 projects.locations.schedules.get 方法和時間表 ID 傳送 GET 要求。

使用任何要求資料之前,請先替換以下項目:

  • LOCATION:要執行管道的地區。如要進一步瞭解可使用 Vertex AI Pipelines 的區域,請參閱 Vertex AI 位置指南
  • PROJECT_ID:您要執行管道的 Google Cloud 專案。
  • SCHEDULE_ID:建立排程時產生的專屬排程 ID。

HTTP 方法和網址:

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

如要傳送要求,請選擇以下其中一個選項:

curl

執行下列指令:

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

執行下列指令:

$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

畫面會顯示類似以下的輸出。PIPELINE_JOB_CREATION_REQUEST 代表建立管道工作的 API 要求。

{
  "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 適用的 Vertex AI SDK

請使用下列範例,透過時間表 ID 擷取管道執行時間表:

from google.cloud import aiplatform

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

SCHEDULE_ID:建立排程時產生的專屬排程 ID。

暫停時間表

您可以指定排程 ID,暫停啟用中的管道排程。暫停排程後,其狀態會從 ACTIVE 變更為 PAUSED

控制台

您可以暫停目前啟用的管道執行排程。

請按照下列操作說明暫停時間表:

  1. 在 Google Cloud 控制台的 Vertex AI 專區中,前往「Pipelines」頁面的「Schedules」分頁。

    前往「排程」

  2. 前往要暫停的時間表所在的資料列,然後按一下 選項選單中的「暫停」。您可以暫停任何「狀態」欄顯示「有效」的排程。

REST

如要在專案中暫停管道執行時間表,請使用 projects.locations.schedules.pause 方法傳送 POST 要求。

使用任何要求資料之前,請先替換以下項目:

  • LOCATION:目前管道執行排程的有效區域。如要進一步瞭解可使用 Vertex AI Pipelines 的區域,請參閱 Vertex AI 位置指南
  • PROJECT_ID:目前管道執行排程處於啟用狀態的 Google Cloud 專案。
  • SCHEDULE_ID:建立排程時產生的專屬排程 ID。

HTTP 方法和網址:

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

如要傳送要求,請選擇以下其中一個選項:

curl

執行下列指令:

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

執行下列指令:

$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

您應該會收到執行成功的狀態碼 (2xx) 和空白回應。

Python 適用的 Vertex AI SDK

請使用下列範例,暫停 pipeline 執行時間表:

from google.cloud import aiplatform

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

pipeline_job_schedule.pause()

SCHEDULE_ID:建立排程時產生的專屬排程 ID。

更新時間表

您可以更新為Google Cloud 專案建立的現有管道時間表。

更新時間表的做法與刪除及重新建立時間表類似。更新時間表後,系統會根據更新後的時間表頻率安排新的執行作業。系統不會再根據舊排程建立新執行作業,並且會捨棄所有排隊的執行作業。舊排程已建立的管道執行作業不會暫停或取消。

REST

如要更新專案中的管道執行排程,請使用 projects.locations.schedules.patch 方法傳送 PATCH 要求。

使用任何要求資料之前,請先替換以下項目:

  • LOCATION:要執行管道的地區。如要進一步瞭解可使用 Vertex AI Pipelines 的區域,請參閱 Vertex AI 位置指南
  • PROJECT_ID:您要執行管道的 Google Cloud 專案。
  • DISPLAY_NAME:管道排程的名稱。您可以指定長度上限為 128 個 UTF-8 字元的名稱。
  • MAX_CONCURRENT_RUN_COUNT:排程的並行執行作業數量上限。

HTTP 方法和網址:

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

如要傳送要求,請選擇以下其中一個選項:

curl

執行下列指令:

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

執行下列指令:

$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

畫面會顯示類似以下的輸出。系統會根據更新結果重新計算 NEXT_RUN_TIME。更新時間表時,START_TIME 會維持不變。

{
  "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 適用的 Vertex AI SDK

請使用下列範例,透過 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。
  • DISPLAY_NAME:管道排程的名稱。您可以指定長度上限為 128 個 UTF-8 字元的名稱。
  • MAX_CONCURRENT_RUN_COUNT:排程的並行執行作業數量上限。

繼續排程

您可以指定時間表 ID,恢復暫停的管道時間表。您可以恢復排程,狀態會從 PAUSED 變更為 ACTIVE

控制台

您可以繼續目前暫停的管道執行排程。

請按照下列操作說明恢復時間表:

  1. 在 Google Cloud 控制台的 Vertex AI 專區中,前往「Pipelines」頁面的「Schedules」分頁。

    前往「排程」

  2. 前往與要恢復的時間表位於同一列的 選項選單,然後按一下「Resume」。你可以恢復任何「狀態」欄顯示「暫停」的排程。

REST

如要在專案中繼續執行管道執行排程,請使用 projects.locations.schedules.resume 方法傳送 POST 要求。

使用任何要求資料之前,請先替換以下項目:

  • LOCATION:管道執行排程目前暫停的區域。如要進一步瞭解可使用 Vertex AI Pipelines 的區域,請參閱 Vertex AI 位置指南
  • PROJECT_ID:管道執行時間表目前處於暫停狀態的 Google Cloud 專案。
  • SCHEDULE_ID:建立排程時產生的專屬排程 ID。
  • CATCH_UP:(選用) 指出暫停的排程是否應回填略過的管道執行作業。如要回填並重新排定略過的管道執行作業,請輸入以下內容:
    { "catch_up":true } 根據預設,這個參數會設為 `false`。

HTTP 方法和網址:

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

如要傳送要求,請選擇以下其中一個選項:

curl

執行下列指令:

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

執行下列指令:

$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

您應該會收到執行成功的狀態碼 (2xx) 和空白回應。

Python 適用的 Vertex AI SDK

請使用下列範例,恢復已暫停的管道執行時間表:

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。
  • CATCH_UP:(選用) 指出暫停的排程是否應回填略過的管道執行作業。如要補充並重新排程略過的管道執行作業,請輸入以下內容:
    { "catch_up":true }

刪除時間表

您可以指定時間表 ID 來刪除管道時間表。

控制台

無論管道執行時間表的狀態為何,您都可以刪除該時間表。

請按照下列操作說明刪除時間表:

  1. 在 Google Cloud 控制台的 Vertex AI 專區中,前往「Pipelines」頁面的「Schedules」分頁。

    前往「排程」

  2. 找到要刪除的時間表所在的列,然後按一下 選項選單,然後按一下「Delete」

  3. 如要確認刪除,請按一下「刪除」

REST

如要刪除專案中的管道執行排程,請使用 projects.locations.schedules.delete 方法傳送 DELETE 要求。

使用任何要求資料之前,請先替換以下項目:

  • LOCATION:您要刪除管道排程的地區。如要進一步瞭解可使用 Vertex AI Pipelines 的區域,請參閱 Vertex AI 位置指南
  • PROJECT_ID:要刪除排程的 Google Cloud 專案。
  • SCHEDULE_ID:建立排程時產生的專屬排程 ID。

HTTP 方法和網址:

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

如要傳送要求,請選擇以下其中一個選項:

curl

執行下列指令:

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

執行下列指令:

$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

畫面會顯示類似以下的輸出。OPERATION_ID 代表刪除作業。

{
  "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 適用的 Vertex AI SDK

請使用下列範例刪除管道執行時間表:

from google.cloud import aiplatform

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

pipeline_job_schedule.delete()

SCHEDULE_ID:建立排程時產生的專屬排程 ID。

列出排程建立的所有管道工作

您可以指定排程 ID,查看排程建立的所有管道工作清單。

REST

如要列出管道排程建立的所有管道執行作業,請使用 projects.locations.pipelineJobs 方法傳送 GET 要求。

使用任何要求資料之前,請先替換以下項目:

  • LOCATION:您要執行管道的地區。如要進一步瞭解可使用 Vertex AI Pipelines 的區域,請參閱 Vertex AI 位置指南
  • PROJECT_ID:您要執行管道的 Google Cloud 專案。
  • SCHEDULE_ID:建立排程時產生的專屬排程 ID。

HTTP 方法和網址:

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

如要傳送要求,請選擇以下其中一個選項:

curl

執行下列指令:

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

執行下列指令:

$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

畫面會顯示類似以下的輸出內容。

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

Python 適用的 Vertex AI SDK

使用下列範例,按照建立時間由高至低的順序,列出排程建立的所有管道工作:

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。