Kubeflow Pipelines에서 Vertex AI Pipelines로 마이그레이션

Kubeflow Pipelines 빌드 경험이 있는 개발자의 경우 다음과 같이 Vertex AI Pipelines와 Kubeflow Pipelines가 어떻게 다른지 이해해야 합니다.

데이터 전달(입력/출력)

도메인 특정 언어(DSL) 버전 사용

  • Vertex AI Pipelines는 TFX v0.30.0 이상 또는 Kubeflow Pipelines SDK v2 도메인별 언어(DSL)를 사용하여 빌드된 파이프라인을 실행할 수 있습니다.

    Kubeflow Pipelines SDK v2 DSL은 Kubeflow Pipelines SDK v1.6 이상에서 사용할 수 있습니다.

    Kubeflow Pipelines는 Kubeflow Pipelines SDK를 사용하여 빌드된 파이프라인을 실행할 수 있습니다. 또한 Kubeflow Pipelines v1.6 이상은 Kubeflow Pipelines SDK v2 DSL을 사용하여 빌드된 파이프라인을 실행할 수 있습니다.

스토리지

  • Kubeflow Pipelines 및 Vertex AI Pipelines는 스토리지를 서로 다른 방식으로 처리합니다. Kubeflow Pipelines에서는 영구 볼륨 클레임과 같은 Kubernetes 리소스를 활용할 수 있습니다. Vertex AI Pipelines에서는 데이터가 Cloud Storage에 저장되며 Cloud Storage FUSE를 사용하여 구성요소에 마운트됩니다.

    Vertex AI Pipelines에서는 Google Cloud 서비스를 사용하여 리소스를 제공할 수 있습니다. 예를 들어 Cloud Storage FUSE를 사용하여 파이프라인 단계에서 마운트된 볼륨으로 Cloud Storage 버킷에 액세스할 수 있습니다. Cloud Storage URI가 gs://example-bucket/example-pipeline이면 파이프라인 구성요소의 컨테이너가 Cloud Storage FUSE를 사용하여 /gcs/example-bucket/example-pipeline 경로로 URI에 액세스할 수 있습니다.

  • Vertex AI Pipelines를 사용하여 파이프라인을 실행할 때는 @pipeline 주석에 또는 파이프라인 실행을 만들었을 때 파이프라인 루트가 저장되어 있어야 합니다.

    Kubeflow Pipelines에서 파이프라인 루트 지정은 선택사항입니다. 파이프라인 실행의 아티팩트는 기본적으로 MinIO를 사용하여 저장됩니다.

Vertex AI Pipelines에서 지원되지 않는 기능

  • 다음 Kubeflow Pipelines 기능은 현재 Vertex AI Pipelines에서 지원되지 않습니다.

    • 캐시 만료: Kubeflow Pipelines에서는 Kubeflow Pipelines SDK v1 DSL을 사용하여 캐시된 구성요소 실행이 지정된 기간 후 만료되도록 지정할 수 있습니다.

      현재는 Kubeflow Pipelines SDK v2 DSL을 사용하여 지정된 기간 후 구성요소 실행이 만료되도록 지정할 수 없습니다.

      Vertex AI Pipelines에서 create_run_from_job_spec을 사용하여 파이프라인을 실행하는 경우 enable_caching 인수를 사용하여 이 파이프라인 실행에서 캐싱을 사용하지 않도록 지정할 수 있습니다.

    • 재귀: Kubeflow Pipelines에서 재귀적으로 호출되는 파이프라인 구성요소를 지정할 수 있습니다.

      현재까지 Vertex AI Pipelines는 재귀적으로 호출되는 파이프라인 구성요소를 지원하지 않습니다.