파이프라인 단계의 머신 구성 지정

Kubeflow 파이프라인 구성요소는 파이프라인 단계를 만드는 팩토리 함수입니다. 각 구성요소는 구성요소의 입력, 출력, 구현을 설명합니다. 예를 들어 train_op는 다음 코드 샘플의 구성요소입니다.

예를 들어 학습 구성요소는 CSV 파일을 입력으로 사용하고 이를 사용해서 모델을 학습시킬 수 있습니다. 파이프라인 단계에서 머신 유형 매개변수를 설정하여 파이프라인에서 각 단계의 요구사항을 관리할 수 있습니다. 2개의 학습 단계가 있는데 한 단계는 큰 데이터 파일로 학습되고 다른 단계는 작은 데이터 파일로 학습되는 경우, 두 번째 태스크보다 첫 번째 태스크에 더 많은 메모리 및 CPU와 더 적은 리소스를 할당할 수 있습니다.

기본적으로 구성요소는 4개 코어 CPU 및 16GB 메모리가 포함된 e2-standard-4 머신을 사용하여 Vertex AI CustomJob로 실행됩니다. 머신 유형에 나열된 Google Cloud 관련 머신 리소스 중 하나를 선택하는 방법에 대한 자세한 내용은 Vertex AI Pipelines로 Google Cloud 머신 리소스 요청을 참조하세요.

다음 샘플은 한 단계에 대해 CPU, 메모리, GPU 구성 설정을 설정하는 방법을 보여줍니다.

from kfp import dsl

@dsl.pipeline(name='custom-container-pipeline')
def pipeline():
  generate = generate_op()
  train = (
    train_op(
      training_data=generate.outputs['training_data'],
      test_data=generate.outputs['test_data'],
      config_file=generate.outputs['config_file'])
    .set_cpu_limit('CPU_LIMIT')
    .set_memory_limit('MEMORY_LIMIT')
    .add_node_selector_constraint(SELECTOR_CONSTRAINT)
    .set_accelerator_limit(ACCELERATOR_LIMIT))

다음을 바꿉니다.

  • CPU_LIMIT: 이 연산자의 최대 CPU 한도입니다. 이 문자열 값은 숫자(CPU 수를 나타내는 정수 값) 또는 1/1000을 나타내는 'm'으로 표시된 숫자일 수 있습니다. 최대 96개까지 CPU를 지정할 수 있습니다.

  • MEMORY_LIMIT: 이 연산자의 최대 메모리 한도입니다. 이 문자열 값은 숫자이거나 "K"(킬로바이트), "M"(메가바이트), "G"(기가바이트)와 함께 표시된 숫자일 수 있습니다. 최대 624GB까지 지원됩니다.

  • SELECTOR_CONSTRAINT: 각 제약조건은 키-값 쌍 라벨입니다. 한 노드에서 실행될 수 있는 컨테이너에 대해 이 노드에는 각 제약조건이 라벨로 포함되어야 합니다. 예를 들면 'cloud.google.com/gke-accelerator', 'NVIDIA_TESLA_T4'입니다.

    사용할 수 있는 제약조건은 다음과 같습니다.

    • NVIDIA_H100_80GB
    • NVIDIA_A100_80GB
    • NVIDIA_TESLA_A100(NVIDIA A100 40GB)
    • NVIDIA_TESLA_P4
    • NVIDIA_TESLA_P100
    • NVIDIA_TESLA_T4
    • NVIDIA_TESLA_V100
    • NVIDIA_L4

    • TPU_V2
    • TPU_V3
  • ACCELERATOR_LIMIT: 연산자의 가속기(GPU 또는 TPU) 한도입니다. 양의 정수를 지정할 수 있습니다. 사용 가능한 GPU 및 구성 방법에 대한 자세한 내용은 GPU를 참조하세요. 사용 가능한 TPU 및 구성 방법에 대한 자세한 내용은 TPU를 참조하세요.

CustomJob은 최대 96개 CPU와 624GB 메모리로 제한하는 특정 머신 유형을 지원합니다. 지정한 CPU, 메모리, 가속기 구성에 따라 Vertex AI Pipelines는 지원되는 머신 유형과 가장 일치하는 항목을 자동으로 선택합니다.