커스텀 학습 작업(Vertex AI API의 CustomJob
리소스)은 Vertec AI에서 커스텀 머신러닝(ML) 학습 코드를 실행하기 위한 기본 방법입니다.
작업을 제출하기 전에
Vertex AI에서 CustomJob
을 만들려면 먼저 Python 학습 애플리케이션이나 커스텀 컨테이너 이미지를 만들어 Vertex AI에서 실행하려는 학습 코드와 종속 항목을 정의해야 합니다.
이 가이드의 후반 섹션에 설명된 Google Cloud CLI의 자동 패키징 기능을 사용하여 단일 명령어로 로컬 머신의 코드에서 Docker 컨테이너 이미지를 만들고 이 컨테이너 이미지를 Artifact Registry에 내보내고 CustomJob
을 만들어야 합니다.
그렇지 않으면 Python 학습 애플리케이션 또는 커스텀 컨테이너 이미지를 수동으로 만들어야 합니다.
어떤 옵션을 선택해야 할지 잘 모르겠다면 학습 코드 요구사항을 참조하세요.
커스텀 작업에 포함되는 항목
커스텀 작업을 만들 때는 Vertex AI가 다음과 같은 학습 코드를 실행하는 데 필요한 설정을 지정해 주어야 합니다.
- 단일 노드 학습을 위한 작업자 풀 하나(
WorkerPoolSpec
) 또는 분산형 학습을 위한 여러 작업자 풀 - (선택 사항) 작업 예약 구성을 위한 설정(
Scheduling
), 학습 코드를 위한 특정 환경 변수 설정, 서비스 계정 사용, VPC 네트워크 피어링 사용
작업자 풀 내에서 다음 설정을 지정할 수 있습니다.
- 머신 유형 및 가속기
- 작업자 풀이 실행하는 학습 코드 유형의 구성: Python 학습 애플리케이션(
PythonPackageSpec
) 또는 커스텀 컨테이너(ContainerSpec
)
또한 작업 시작 중 새 컴퓨팅 리소스를 만드는 대신 영구 리소스에서 실행되도록 커스텀 작업을 구성할 수 있습니다. 영구 리소스에 대한 자세한 내용은 영구 리소스 개요를 참조하세요.
분산 학습 구성
여러 작업자 풀을 지정하여 분산 학습에 대해 CustomJob
을 구성할 수 있습니다.
이 페이지의 대부분 예시에서는 한 개의 작업자 풀이 있는 단일 복제본 학습 작업을 보여줍니다. 분산형 학습을 위해 수정하려면 다음 안내를 따르세요.
- 첫 번째 작업자 풀을 사용하여 기본 복제본을 구성하고 복제본 카운트를 1로 설정합니다.
- 머신러닝 프레임워크가 분산형 학습에 이러한 추가 클러스터 태스크를 지원하는 경우 작업자 복제본, 매개변수 서버 복제본 또는 평가자 복제본을 구성하는 작업자 풀을 추가합니다.
분산형 학습 사용에 대해 자세히 알아보세요.
CustomJob
만들기
CustomJob
을 만들려면 사용하려는 도구에 따라 다음 탭 중 하나의 안내를 따르세요. gcloud CLI를 사용하는 경우 단일 명령어를 사용하여 로컬 머신의 학습 코드를 Docker 컨테이너 이미지에 자동 패키징하고 컨테이너 이미지를 Artifact Registry에 내보내며 CustomJob
을 만들 수 있습니다. 다른 옵션의 경우에는 Python 학습 애플리케이션 또는 커스텀 컨테이너 이미지가 이미 생성되었다고 가정합니다.
gcloud
다음 예시에서는 gcloud ai custom-jobs create
명령어를 사용합니다.
학습 코드가 로컬 컴퓨터에 있으면 자동 패키징 사용 섹션을 따르는 것이 좋습니다. 또는 이미 Python 학습 애플리케이션 또는 커스텀 컨테이너 이미지를 만든 경우에는 자동 패키징 사용 안함 섹션으로 건너뜁니다.
자동 패키징 사용
로컬 컴퓨터에 학습 코드가 있는 경우 단일 명령어를 사용하여 다음을 수행할 수 있습니다.
- 코드를 기반으로 커스텀 Docker 이미지를 빌드합니다.
- 이미지를 Artifact Registry로 내보내기
- 이미지를 기반으로
CustomJob
을 시작합니다.
결과는 다른 커스텀 컨테이너를 사용하여 CustomJob
을 만드는 것과 비슷합니다. 워크플로상 편리할 경우 이 버전의 명령어를 사용할 수 있습니다.
시작하기 전에
이 버전의 명령어는 Docker 이미지를 빌드하고 푸시하므로 로컬 컴퓨터에서 다음 구성을 수행해야 합니다.
Linux를 사용하는 경우
sudo
없이 실행할 수 있도록 Docker를 구성합니다.Enable the Container Registry API.
Docker 인증을 구성하면 Docker 이미지를 Artifact Registry에 내보낼 수 있습니다.
gcloud auth configure-docker
Docker 이미지 빌드 및 푸시 후 CustomJob
만들기
다음 명령어는 사전 빌드된 학습 컨테이너 이미지와 로컬 Python 코드를 기반으로 Docker 이미지를 빌드하고 이미지를 Artifact Registry에 내보낸 후 CustomJob
을 만듭니다.
gcloud ai custom-jobs create \
--region=LOCATION \
--display-name=JOB_NAME \
--worker-pool-spec=machine-type=MACHINE_TYPE,replica-count=REPLICA_COUNT,executor-image-uri=EXECUTOR_IMAGE_URI,local-package-path=WORKING_DIRECTORY,script=SCRIPT_PATH
다음을 바꿉니다.
LOCATION: 컨테이너 또는 Python 패키지가 실행될 리전입니다.
JOB_NAME: 필수.
CustomJob
의 표시 이름입니다.MACHINE_TYPE: 머신 유형입니다. 학습에 사용 가능한 머신 유형을 참고하세요.
REPLICA_COUNT: 사용할 작업자 복제본의 수입니다. 대부분의 경우 첫 작업자 풀에서 이를
1
로 설정합니다.EXECUTOR_IMAGE_URI: 제공된 코드를 실행하는 컨테이너 이미지의 URI입니다. 학습에 사용 가능한 사전 빌드된 컨테이너를 참고하세요.
이 이미지는 이 명령어로 빌드 중인 새 Docker 이미지의 기본 이미지 역할을 합니다.
WORKING_DIRECTORY: 학습 코드를 실행하는 진입점 스크립트가 포함된 로컬 파일 시스템의 디렉터리(다음 목록 항목 참조)
스크립트의 상위 디렉터리 또는 상위 수준의 디렉터리를 사용할 수 있습니다. 정규화된 Python 모듈 이름을 지정하기 위해 상위 수준 디렉터리를 사용할 수 있습니다(다음 목록 항목 참조).
requirements.txt
또는setup.py
파일이 포함된 경우 더 높은 수준의 디렉터리를 사용해야 할 수 있습니다. 자세한 내용은 종속 항목 설치를 참조하세요.상위 수준 디렉터리를 지정하더라도 이 명령어는 진입점 스크립트의 상위 디렉터리만 Docker 이미지에 복사합니다.
SCRIPT_PATH: 학습 코드의 진입점인 스크립트의 경로입니다(로컬 파일 시스템의 WORKING_DIRECTORY 기준). Python 스크립트(
.py
로 끝남) 또는 Bash 스크립트일 수 있습니다.예를 들어
/hello-world/trainer/task.py
를 실행하려고 하고 WORKING_DIRECTORY가/hello-world
면 이 값에trainer/task.py
를 사용합니다.script
대신python-module
사용원하는 경우
script=SCRIPT_PATH
를python-module=PYTHON_MODULE
로 바꿔 학습의 진입점으로 실행할 WORKING_DIRECTORY의 Python 모듈 이름을 지정할 수 있습니다. 예를 들어script=trainer/task.py
대신python-module=trainer.task
를 지정할 수 있습니다.이 경우 결과 Docker 컨테이너는 스크립트가 아닌 모듈로 코드를 로드합니다. 진입점 스크립트가 WORKING_DIRECTORY에서 다른 Python 모듈을 가져오는 경우 이 옵션을 사용하는 것이 좋습니다.
종속 항목 설치
자동 패키징을 사용할 때는 gcloud CLI의 local-run
명령어를 사용할 때 가능한 방법과 동일한 방법으로 컨테이너에 Python 종속 항목을 설치할 수 있습니다. Python 종속 항목을 설치하기 위한 여러 방법을 알아보려면 local-run
명령어 가이드의 종속 항목 설치 섹션을 참조하세요.
local-run
명령어를 사용할 때와 비교해서 자동 패키징을 사용할 때는 종속 항목 지정 문법이 약간 다릅니다. 명령줄 플래그를 사용하여 종속 항목을 지정하는 대신 --worker-pool-spec
플래그 값의 옵션을 사용해야 합니다. 또한 이러한 옵션 내부의 값을 쉼표 대신 세미콜론으로 구분해야 합니다. 다음 문법을 참조하세요.
local-run
명령어의--local-package-path
플래그 대신--worker-pool-spec
플래그 값의local-package-path
옵션을 사용합니다. 이 옵션으로 지정하는 작업 디렉터리에requirements.txt
또는setup.py
파일이 포함된 경우 자동 패키징이 이 파일을 기준으로 종속 항목을 설치합니다.앞의 예시는 이 문법을 보여줍니다.
(선택사항)
--requirements
플래그 대신--worker-pool-spec
플래그 값의requirements
옵션을 사용합니다. 쉼표 대신 세미콜론을 사용하여 PyPI 종속 항목을 구분합니다.(선택사항)
--extra-packages
플래그 대신--worker-pool-spec
플래그 값의extra-packages
옵션을 사용합니다. 쉼표 대신 세미콜론을 사용하여 로컬 종속 항목을 구분합니다.(선택사항)
--extra-dirs
플래그 대신--worker-pool-spec
플래그 값의extra-dirs
옵션을 사용합니다. 쉼표 대신 세미콜론을 사용하여 디렉터리 경로를 구분합니다.
다음 예시에서는 모든 선택적인 기술을 사용해서 종속 항목을 설치하는 방법을 보여줍니다. (이들 중 일부만 지정할 수 있습니다.) 세미콜론 문법을 표시하기 위해 예시에는 각 옵션에 대해 2개 값이 지정되어 있습니다. 예시 길이를 줄이기 위 다른 --worker-pool-spec
옵션은 [...]
로 대체되어 있습니다.
gcloud ai custom-jobs create \
--region=LOCATION \
--display-name=JOB_NAME \
--worker-pool-spec=[...],requirements=PYPI_DEP_1;PYPI_DEP_2,extra-packages=LOCAL_DEP_1;LOCAL_DEP_2,extra-dirs=EXTRA_DIR_1;EXTRA_DIR_2
이러한 자리표시자에 적합한 값을 알아보려면 local-run
명령어 가이드에서 '종속 항목 설치'를 참조하세요.
자동 패키지 사용 안함
자동 패키징을 사용하지 않는 경우 다음 중 하나와 비슷한 명령어를 사용하여 CustomJob
을 만들 수 있습니다. Python 학습 애플리케이션 또는 커스텀 컨테이너 이미지 중 무엇을 만들었는지에 따라 다음 탭 중 하나를 선택합니다.
Python 학습 앱
gcloud ai custom-jobs create \
--region=LOCATION \
--display-name=JOB_NAME \
--python-package-uris=PYTHON_PACKAGE_URIS \
--worker-pool-spec=machine-type=MACHINE_TYPE,replica-count=REPLICA_COUNT,executor-image-uri=EXECUTOR_IMAGE_URI,python-module=PYTHON_MODULE
다음을 바꿉니다.
- LOCATION: 컨테이너 또는 Python 패키지가 실행될 리전입니다.
-
JOB_NAME: 필수.
CustomJob
의 표시 이름입니다. - PYTHON_PACKAGE_URIS: 학습 프로그램 및 종속 패키지인 Python 패키지 파일을 지정하는 쉼표로 구분된 Cloud Storage URI 목록입니다. 패키지 URI의 최대 개수는 100개입니다.
- MACHINE_TYPE: 머신 유형입니다. 학습에 사용 가능한 머신 유형을 참고하세요.
-
REPLICA_COUNT: 사용할 작업자 복제본의 수입니다. 대부분의 경우 첫 작업자 풀에서 이를
1
로 설정합니다. - EXECUTOR_IMAGE_URI: 제공된 코드를 실행하는 컨테이너 이미지의 URI입니다. 학습에 사용 가능한 사전 빌드된 컨테이너를 참고하세요.
- PYTHON_MODULE: 패키지를 설치한 후 실행할 Python 모듈 이름입니다.
커스텀 컨테이너 이미지
gcloud ai custom-jobs create \
--region=LOCATION \
--display-name=JOB_NAME \
--worker-pool-spec=machine-type=MACHINE_TYPE,replica-count=REPLICA_COUNT,container-image-uri=CUSTOM_CONTAINER_IMAGE_URI
다음을 바꿉니다.
- LOCATION: 컨테이너 또는 Python 패키지가 실행될 리전입니다.
-
JOB_NAME: 필수.
CustomJob
의 표시 이름입니다. - MACHINE_TYPE: 머신 유형입니다. 학습에 사용 가능한 머신 유형을 참고하세요.
-
REPLICA_COUNT: 사용할 작업자 복제본의 수입니다. 대부분의 경우 첫 작업자 풀에서 이를
1
로 설정합니다. - CUSTOM_CONTAINER_IMAGE_URI: 각 작업자 복제본에서 실행할 Artifact Registry, Container Registry 또는 Docker Hub의 컨테이너 이미지 URI입니다.
분산형 학습
분산형 학습을 수행하려면 작업자 풀마다 한 번씩 --worker-pool-spec
플래그를 여러 번 지정합니다.
자동 패키징을 사용하는 경우에는 첫 번째 작업자 풀에서 local-package-path
, script
, 자동 패키징과 관련된 기타 옵션만 지정하면 됩니다.
이후 작업자 풀에서는 학습 코드와 관련된 필드를 생략합니다. 여기에는 모두 자동 패키징으로 작성된 것과 동일한 학습 컨테이너가 사용됩니다.
예를 들어 다음 명령어는 보조 작업자 풀을 사용하도록 이전 자동 패키징 예시를 수정합니다.
gcloud ai custom-jobs create \
--region=LOCATION \
--display-name=JOB_NAME \
--worker-pool-spec=machine-type=MACHINE_TYPE,replica-count=REPLICA_COUNT,executor-image-uri=EXECUTOR_IMAGE_URI,local-package-path=WORKING_DIRECTORY,script=SCRIPT_PATH \
--worker-pool-spec=machine-type=SECOND_POOL_MACHINE_TYPE,replica-count=SECOND_POOL_REPLICA_COUNT
자동 패키징을 사용하지 않는 경우에는 각 작업자 풀을 완전히 독립적으로 지정합니다. 어떤 필드도 생략하면 안 됩니다.
다음 명령어는 보조 작업자 풀을 사용하도록 이전 예시를 수정합니다.
Python 학습 앱
gcloud ai custom-jobs create \
--region=LOCATION \
--display-name=JOB_NAME \
--python-package-uris=PYTHON_PACKAGE_URIS \
--worker-pool-spec=machine-type=MACHINE_TYPE,replica-count=REPLICA_COUNT,executor-image-uri=EXECUTOR_IMAGE_URI,python-module=PYTHON_MODULE \
--worker-pool-spec=machine-type=SECOND_POOL_MACHINE_TYPE,replica-count=SECOND_POOL_REPLICA_COUNT,executor-image-uri=SECOND_POOL_EXECUTOR_IMAGE_URI,python-module=SECOND_POOL_PYTHON_MODULE
커스텀 컨테이너 이미지
gcloud ai custom-jobs create \
--region=LOCATION \
--display-name=JOB_NAME \
--worker-pool-spec=machine-type=MACHINE_TYPE,replica-count=REPLICA_COUNT,container-image-uri=CUSTOM_CONTAINER_IMAGE_URI \
--worker-pool-spec=machine-type=SECOND_POOL_MACHINE_TYPE,replica-count=SECOND_POOL_REPLICA_COUNT,container-image-uri=SECOND_POOL_CUSTOM_CONTAINER_IMAGE_URI
고급 구성
앞의 예시에서 사용할 수 없는 구성 옵션을 지정하려면--config
플래그를 사용하여 CustomJobSpec
필드를 포함하는 로컬 환경의 config.yaml
파일에 경로를 지정합니다. 예를 들면 다음과 같습니다.
gcloud ai custom-jobs create \
--region=LOCATION \
--display-name=JOB_NAME \
--config=config.yaml
config.yaml
파일의 예시를 참조하세요.
콘솔
Google Cloud 콘솔에서는 CustomJob
리소스를 직접 만들 수 없습니다.
하지만 CustomJob
을 만드는 TrainingPipeline
리소스를 만들 수 있습니다.
다음 안내에서는 CustomJob
을 만들고 다른 작업을 수행하지 않는 TrainingPipeline
을 만드는 방법을 설명합니다. 관리형 데이터 세트로 학습 또는 학습 종료 시 Model
리소스 만들기와 같은 추가 TrainingPipeline
기능을 사용하려면 학습 파이프라인 만들기를 참조하세요.
Google Cloud 콘솔의 Vertex AI 섹션에서 학습 파이프라인 페이지로 이동합니다.
만들기를 클릭하여 새 모델 학습 창을 엽니다.
학습 방법 단계에서 다음 설정을 지정합니다.
데이터 세트 드롭다운 목록에서 관리형 데이터 세트 없음을 선택합니다.
커스텀 학습(고급)을 선택합니다.
계속을 클릭합니다.
모델 세부정보 단계에서 새 모델 학습 또는 새 버전 학습을 선택합니다. 새 모델 학습을 선택한 경우 모델에 사용할 이름(MODEL_NAME)을 입력합니다. 계속을 클릭합니다.
학습 컨테이너 단계에서 다음 설정을 지정합니다.
학습에 사전 빌드된 컨테이너를 사용할지 커스텀 컨테이너를 사용할지 선택합니다.
선택에 따라 다음 중 하나를 실행합니다.
사전 빌드된 컨테이너를 학습에 사용하려면 Cloud Storage에 업로드한 학습 패키지를 사용하는 데 필요한 정보를 Vertex AI에 제공합니다.
모델 프레임워크 및 모델 프레임워크 버전 드롭다운 목록을 사용하여 사용할 사전 빌드된 컨테이너를 지정합니다.
패키지 위치 필드에 만들어 업로드한 Python 학습 애플리케이션의 Cloud Storage URI를 지정합니다. 이 파일은 일반적으로
.tar.gz
로 끝납니다.Python 모듈 필드에 학습 애플리케이션 진입점의 모듈 이름을 입력합니다.
학습용 커스텀 컨테이너를 사용하려면 컨테이너 이미지 필드에서 컨테이너 이미지의 Artifact Registry 또는 Docker Hub URI를 지정합니다.
모델 출력 디렉터리 필드에서 액세스 권한이 있는 버킷에 있는 디렉터리의 Cloud Storage URI를 지정할 수 있습니다. 아직 디렉터리가 존재하지 않아도 됩니다.
이 값은
baseOutputDirectory
API 필드의 Vertex AI로 전달되어 학습 애플리케이션이 실행되면 액세스할 수 있는 여러 환경 변수를 설정합니다.선택사항: 인수 필드에서 학습 코드 실행을 시작할 때 사용할 Vertex AI의 인수를 지정할 수 있습니다. 결합된 모든 인수의 최대 길이는 100,000자입니다. 이 인수의 동작은 사용하는 컨테이너 유형에 따라 달라집니다.
사전 빌드된 컨테이너를 사용하는 경우 Vertex AI가 인수를 Python 모듈에 명령줄 플래그로 전달합니다.
커스텀 컨테이너를 사용하는 경우 Vertex AI는 인수의
CMD
명령어를 인수로 재정의합니다.
계속을 클릭합니다.
초매개변수 미세 조정 단계에서 초매개변수 미세 조정 사용 체크박스가 해제된 것을 확인합니다. 계속을 클릭합니다.
컴퓨팅 및 가격 책정 단계에서 다음 설정을 지정합니다.
리전 드롭다운 목록에서 "커스텀 학습을 지원하는 리전"을 선택합니다.
작업자 풀 0 섹션에서 학습에 사용할 컴퓨팅 리소스를 지정합니다.
가속기를 지정하는 경우 선택한 가속기를 선택한 리전에서 사용할 수 있는지 확인합니다.
분산형 학습을 수행하려면 작업자 풀 추가를 클릭하고 원하는 각 추가 작업자 풀에 대해 컴퓨팅 리소스 세트를 추가로 지정합니다.
계속을 클릭합니다.
예측 컨테이너 단계에서 예측 컨테이너 없음을 선택합니다.
학습 시작을 클릭하여 커스텀 학습 파이프라인을 시작합니다.
REST
요청 데이터를 사용하기 전에 다음을 바꿉니다.
- LOCATION: 컨테이너 또는 Python 패키지가 실행될 리전입니다.
- PROJECT_ID: 프로젝트 ID
-
JOB_NAME: 필수.
CustomJob
의 표시 이름입니다. - 커스텀 학습 작업을 다음과 같이 정의합니다.
- MACHINE_TYPE: 머신 유형입니다. 학습에 사용 가능한 머신 유형을 참고하세요.
- ACCELERATOR_TYPE: (선택사항) 작업에 연결할 가속기의 유형입니다.
- ACCELERATOR_COUNT: (선택사항) 작업에 연결할 가속기의 수입니다.
- DISK_TYPE: (선택사항) 작업에 사용할 부팅 디스크의 유형으로
pd-standard
(기본값) 또는pd-ssd
입니다. 디스크 유형에 대해 자세히 알아보세요. - DISK_SIZE: (선택사항) 작업에 사용할 부팅 디스크의 크기(GB)입니다. 기본값은 100입니다.
-
REPLICA_COUNT: 사용할 작업자 복제본의 수입니다. 대부분의 경우 첫 작업자 풀에서 이를
1
로 설정합니다. - 학습 애플리케이션이 커스텀 컨테이너에서 실행되는 경우 다음을 지정합니다.
- CUSTOM_CONTAINER_IMAGE_URI: 각 작업자 복제본에서 실행할 Artifact Registry, Container Registry 또는 Docker Hub의 컨테이너 이미지 URI입니다.
- CUSTOM_CONTAINER_COMMAND: (선택사항) 컨테이너가 시작될 때 호출되는 명령어입니다. 이 명령어는 컨테이너의 기본 진입점을 재정의합니다.
- CUSTOM_CONTAINER_ARGS: (선택사항) 컨테이너 시작 시 전달될 인수입니다.
- 학습 애플리케이션이 사전 빌드된 컨테이너에서 실행되는 Python 패키지인 경우 다음을 지정합니다.
- EXECUTOR_IMAGE_URI: 제공된 코드를 실행하는 컨테이너 이미지의 URI입니다. 학습에 사용 가능한 사전 빌드된 컨테이너를 참고하세요.
- PYTHON_PACKAGE_URIS: 학습 프로그램 및 종속 패키지인 Python 패키지 파일을 지정하는 쉼표로 구분된 Cloud Storage URI 목록입니다. 패키지 URI의 최대 개수는 100개입니다.
- PYTHON_MODULE: 패키지를 설치한 후 실행할 Python 모듈 이름입니다.
- PYTHON_PACKAGE_ARGS: (선택사항) Python 모듈로 전달할 명령줄 인수입니다.
- 작업 예약 옵션에 대해 알아보세요.
- TIMEOUT: (선택사항) 작업의 최대 실행 시간입니다.
- 이 커스텀 작업에 적용할 모든 라벨의 LABEL_NAME 및 LABEL_VALUE를 지정합니다.
HTTP 메서드 및 URL:
POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/customJobs
JSON 요청 본문:
{ "displayName": "JOB_NAME", "jobSpec": { "workerPoolSpecs": [ { "machineSpec": { "machineType": MACHINE_TYPE, "acceleratorType": ACCELERATOR_TYPE, "acceleratorCount": ACCELERATOR_COUNT }, "replicaCount": REPLICA_COUNT, "diskSpec": { "bootDiskType": DISK_TYPE, "bootDiskSizeGb": DISK_SIZE }, // Union field task can be only one of the following: "containerSpec": { "imageUri": CUSTOM_CONTAINER_IMAGE_URI, "command": [ CUSTOM_CONTAINER_COMMAND ], "args": [ CUSTOM_CONTAINER_ARGS ] }, "pythonPackageSpec": { "executorImageUri": EXECUTOR_IMAGE_URI, "packageUris": [ PYTHON_PACKAGE_URIS ], "pythonModule": PYTHON_MODULE, "args": [ PYTHON_PACKAGE_ARGS ] } // End of list of possible types for union field task. } // Specify one workerPoolSpec for single replica training, or multiple workerPoolSpecs // for distributed training. ], "scheduling": { "timeout": TIMEOUT } }, "labels": { LABEL_NAME_1": LABEL_VALUE_1, LABEL_NAME_2": LABEL_VALUE_2 } }
요청을 보내려면 다음 옵션 중 하나를 선택합니다.
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/customJobs"
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/customJobs" | Select-Object -Expand Content
응답에는 사양 및 TRAININGPIPELINE_ID에 대한 정보가 포함됩니다.
Java
이 샘플을 사용해 보기 전에 Vertex AI 빠른 시작: 클라이언트 라이브러리 사용의 Java 설정 안내를 따르세요. 자세한 내용은 Vertex AI Java API 참고 문서를 참조하세요.
Vertex AI에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
Node.js
이 샘플을 사용해 보기 전에 Vertex AI 빠른 시작: 클라이언트 라이브러리 사용의 Node.js 설정 안내를 따르세요. 자세한 내용은 Vertex AI Node.js API 참고 문서를 참조하세요.
Vertex AI에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
Python
Vertex AI SDK for Python을 설치하거나 업데이트하는 방법은 Vertex AI SDK for Python 설치를 참조하세요. 자세한 내용은 Python API 참고 문서를 확인하세요.
다음 단계
- 보다 빠르고 저렴하게 학습시킬 수 있도록 텐서보드 프로파일러를 사용하여 학습 성능 병목 현상을 찾는 방법을 알아보기
- 학습 파이프라인 만들기를 참조하여 Vertex AI에서 커스텀 학습 애플리케이션을 실행하기 위한 학습 파이프라인을 만드는 방법 알아보기