스케줄러 API를 사용하여 파이프라인 실행 예약

스케줄러 API를 사용하여 Vertex AI에서 일회성 또는 반복 파이프라인 실행을 예약할 수 있습니다. 이렇게 하면 프로젝트에서 지속적인 학습을 구현할 수 있습니다.

일정을 만들면 다음 상태 중 하나가 됩니다.

  • ACTIVE: 활성 일정은 크론 일정 표현식을 사용하여 구성된 빈도에 따라 파이프라인 실행을 계속 만듭니다. 일정은 시작 시간에 활성화되고 지정된 종료 시간 또는 일시중지할 때까지 해당 상태로 유지됩니다.

  • PAUSED: 일시중지된 일정은 파이프라인 실행을 만들지 않습니다. 일시중지된 일정을 재개하여 다시 활성화할 수 있습니다. 일시중지된 일정을 재개할 때 catch_up 매개변수를 사용하여 건너뛴 실행(일정이 활성 상태였다면 예약되었어야 하는 실행)을 재예약하고 가능한 가장 빠른 일정으로 제출해야 하는지 여부를 지정할 수 있습니다.

  • COMPLETED: 완료된 일정이 더 이상 새 파이프라인 실행을 만들지 않습니다. 일정은 지정된 종료 시간에 따라 완료됩니다.

스케줄러 API를 사용하여 다음을 수행할 수 있습니다.

시작하기 전에

스케줄러 API를 사용하여 파이프라인 실행을 예약하기 전에 다음 안내에 따라 Google Cloud 콘솔에서 Google Cloud 프로젝트 및 개발 환경을 설정하세요.

  1. 스케줄러 API를 사용하려면 사용자 또는 서비스 계정에 다음 IAM 권한 중 하나 이상을 부여하세요.

    • roles/aiplatform.admin
    • roles/aiplatform.user
  2. 파이프라인을 빌드하고 컴파일합니다. 자세한 내용은 파이프라인 빌드를 참조하세요.

일정 만들기

일회성 또는 반복 일정을 만들 수 있습니다.

콘솔

Google Cloud 콘솔을 사용하여 일정을 만들려면 다음 안내를 따르세요. 프로젝트 및 리전에 대한 일정이 이미 있으면 파이프라인 실행 만들기의 안내를 따릅니다.

다음 안내에 따라 파이프라인 일정을 만듭니다.

  1. Google Cloud 콘솔의 Vertex AI 섹션에서 파이프라인 페이지의 일정 탭으로 이동합니다.

    일정으로 이동

  2. 예약된 실행 만들기를 클릭하여 파이프라인 실행 만들기 창을 엽니다.

  3. 다음 옵션 중 하나를 선택하여 다음 실행 세부정보를 지정합니다.

    • 기존 파이프라인 템플릿을 기반으로 파이프라인 실행을 만들려면 기존 파이프라인에서 선택을 클릭하고 다음 세부정보를 입력합니다.

      1. 파이프라인 또는 구성요소 정의 파일이 포함된 저장소를 선택합니다.

      2. 파이프라인 또는 구성요소버전을 선택합니다.

    • 컴파일된 파이프라인 정의를 업로드하려면 파일 업로드를 클릭하고 다음 세부정보를 입력합니다.

      1. 찾아보기를 클릭하여 파일 선택자를 엽니다. 실행하려는 컴파일된 파이프라인 YAML 파일로 이동하고, 파이프라인을 선택하고, 열기를 클릭합니다.

      2. 파이프라인 또는 구성요소 이름에 기본적으로 파이프라인 정의에 지정된 이름이 표시됩니다. 선택적으로 다른 파이프라인 이름을 지정합니다.

    • Cloud Storage에서 파이프라인 정의 파일을 가져오려면 Cloud Storage에서 가져오기를 클릭하고 다음 세부정보를 입력합니다.

      1. 찾아보기를 클릭하여 파이프라인 정의 객체가 포함된 Cloud Storage 버킷으로 이동하고, 파일을 선택한 후 선택을 클릭합니다.

      2. 파이프라인 또는 구성요소 이름을 지정합니다.

  4. 파이프라인 실행을 고유하게 식별하기 위해 실행 이름을 지정합니다.

  5. 다음과 같이 실행 일정을 지정합니다.

    1. 반복을 선택합니다.

    2. 시작 시간에 예약이 활성화되는 시간을 지정합니다.

      • 예약을 만든 후 첫 번째 실행이 즉시 발생하도록 예약하려면 즉시를 선택합니다.

      • 특정 시간과 날짜에 첫 번째 실행을 예약하려면 사용(On)을 선택합니다.

    3. 빈도 필드에서 예약 빈도를 지정하고 unix-cron 기반의 크론 예약 표현식을 사용해서 파이프라인 실행을 예약하고 실행합니다.

    4. 종료에서 예약이 종료되는 시간을 지정합니다.

      • 예약으로 파이프라인 실행이 무제한 생성되도록 하려면 안함을 선택합니다.

      • 특정 날짜와 시간에 일정이 종료되도록 하려면 사용을 선택하고 일정의 종료날짜 및 시간을 지정합니다.

  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: 파이프라인 실행을 예약하고 실행할 빈도를 나타내는 크론 일정 표현식. 자세한 내용은 크론을 참조하세요.
  • MAX_CONCURRENT_RUN_COUNT: 일정의 최대 동시 실행 수
  • API_REQUEST_TEMPLATE: 예약된 파이프라인 실행을 실행하는 데 사용되는 PipelineService.CreatePipelineJob API 요청 템플릿. API 요청 템플릿의 파라미터에 대한 자세한 내용은 pipelineJobs.create 문서를 참조하세요. 스케줄러 API가 이 파라미터를 지원하지 않으므로 템플릿에 pipelineJobId 파라미터를 지정할 수 없습니다.

HTTP 메서드 및 URL:

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

다음과 같은 방법으로 파이프라인 실행 일정을 만들 수 있습니다.

  • 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: 파이프라인 실행을 예약하고 실행할 빈도를 나타내는 크론 일정 표현식. 자세한 내용은 크론을 참조하세요.

  • 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: 파이프라인 실행을 예약하고 실행할 빈도를 나타내는 크론 일정 표현식. 자세한 내용은 크론을 참조하세요.

  • MAX_CONCURRENT_RUN_COUNT: 일정의 최대 동시 실행 수

  • MAX_RUN_COUNT: 일정 완료 후 만들어지는 최대 파이프라인 실행 수입니다.

일정 나열

Google Cloud 프로젝트에 대해 만든 파이프라인 일정 목록을 볼 수 있습니다.

콘솔

선택한 리전에 대한 Google Cloud Console의 일정 탭에서 파이프라인 일정 목록을 볼 수 있습니다.

파이프라인 일정 목록을 보려면 Google Cloud 콘솔의 Vertex AI 섹션에서 파이프라인 페이지의 일정 탭으로 이동하세요.

일정으로 이동

REST

프로젝트의 파이프라인 실행 일정을 나열하려면 projects.locations.schedules.list 메서드를 사용하여 GET 요청을 전송하세요.

요청 데이터를 사용하기 전에 다음을 바꿉니다.

  • LOCATION: 파이프라인을 실행하려는 리전. Vertex AI Pipelines을 사용할 수 있는 리전에 대한 자세한 내용은 Vertex AI 위치 가이드를 참조하세요.
  • PROJECT_ID: 파이프라인을 실행하려는 Google Cloud 프로젝트
  • FILTER: (선택사항) 일정 목록을 필터링하는 표현식. 자세한 내용은 다음을 참조하세요...
  • PAGE_SIZE: (선택사항) 페이지당 나열할 일정 수
  • PAGE_TOKEN: (선택사항) 일반적으로 이전 ScheduleService.ListSchedules[] 호출에서 ListSchedulesResponse.next_page_token[]를 통해 가져온 표준 목록 페이지 토큰
  • ORDER_BY: (선택사항) 응답에서 일정의 정렬 순서를 나타내는 쉼표로 구분된 필드 목록

HTTP 메서드 및 URL:

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

다음 샘플을 사용하여 생성 시간 내림차순으로 프로젝트의 모든 일정을 나열합니다.

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 메서드 및 URL:

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

다음 샘플을 사용하여 일정 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 섹션에서 파이프라인 페이지의 일정 탭으로 이동합니다.

    일정으로 이동

  2. 일시중지하려는 일정과 동일한 행에 있는 옵션 메뉴로 이동한 다음 일시중지를 클릭합니다. 상태 열에 활성이 표시되는 모든 일정을 일시중지할 수 있습니다.

REST

프로젝트에서 파이프라인 실행 일정을 재개하려면 projects.locations.schedules.pause 메서드를 사용하여 POST 요청을 전송하세요.

요청 데이터를 사용하기 전에 다음을 바꿉니다.

  • LOCATION: 파이프라인 실행 일정이 현재 활성 상태인 리전. Vertex AI Pipelines을 사용할 수 있는 리전에 대한 자세한 내용은 Vertex AI 위치 가이드를 참조하세요.
  • PROJECT_ID: 파이프라인 실행 일정이 현재 활성 상태인 Google Cloud 프로젝트
  • SCHEDULE_ID: 일정을 만드는 동안 생성된 고유 일정 ID

HTTP 메서드 및 URL:

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

다음 샘플을 사용하여 파이프라인 실행 일정을 일시중지합니다.

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 메서드 및 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}'

요청을 보내려면 다음 옵션 중 하나를 선택합니다.

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

다음 샘플을 사용하여 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 섹션에서 파이프라인 페이지의 일정 탭으로 이동합니다.

    일정으로 이동

  2. 재개하려는 일정과 동일한 행에 있는 옵션 메뉴로 이동한 후 재개를 클릭합니다. 상태 열에 일시중지됨이 표시되는 모든 일정을 재개할 수 있습니다.

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 메서드 및 URL:

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

다음 샘플을 사용하여 일시중지된 파이프라인 실행 일정을 재개합니다.

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 섹션에서 파이프라인 페이지의 일정 탭으로 이동합니다.

    일정으로 이동

  2. 삭제하려는 일정과 동일한 행에 있는 옵션 메뉴로 이동한 후 삭제를 클릭합니다.

  3. 삭제를 확인하려면 삭제를 클릭합니다.

REST

프로젝트에서 파이프라인 실행 일정을 삭제하려면 projects.locations.schedules.delete 메서드를 사용하여 DELETE 요청을 전송하세요.

요청 데이터를 사용하기 전에 다음을 바꿉니다.

  • LOCATION: 파이프라인 일정을 삭제할 리전. Vertex AI Pipelines을 사용할 수 있는 리전에 대한 자세한 내용은 Vertex AI 위치 가이드를 참조하세요.
  • PROJECT_ID: 일정을 삭제하려는 Google Cloud 프로젝트
  • SCHEDULE_ID: 일정을 만드는 동안 생성된 고유한 일정 ID

HTTP 메서드 및 URL:

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

다음 샘플을 사용하여 파이프라인 실행 일정을 삭제합니다.

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 메서드 및 URL:

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

다음 샘플을 사용하여 일정에 따라 생성된 모든 파이프라인 작업을 생성 시간 내림차순으로 나열합니다.

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