Migra de Kubeflow Pipelines a Vertex AI Pipelines

Para los desarrolladores con experiencia en la compilación de canalizaciones de Kubeflow, es importante comprender las siguientes maneras en las que Vertex AI Pipelines difiere de Kubeflow Pipelines.

Transferencia de datos (entradas/salidas)

Uso de la versión de lenguaje específico del dominio (DSL)

  • Vertex AI Pipelines puede ejecutar canalizaciones que se compilaron con TFX v0.30.0 o una versión posterior, o el lenguaje específico del dominio (DSL) del SDK de Kubeflow Pipelines v2.

    El DSL del SDK de Kubeflow Pipelines v2 está disponible en la versión 1.6 o posterior del SDK de Kubeflow Pipelines.

    Kubeflow Pipelines puede ejecutar canalizaciones que se compilaron mediante el SDK de Kubeflow Pipelines. Kubeflow Pipelines v1.6 o una versión más reciente también puede ejecutar canalizaciones compiladas con el DSL del SDK de Kubeflow Pipelines v2.

Almacenamiento

  • Kubeflow Pipelines y Vertex AI Pipelines manejan el almacenamiento de manera diferente. En Kubeflow Pipelines, puedes usar recursos de Kubernetes, como reclamaciones de volumen persistente. En Vertex AI Pipelines, tus datos se almacenan en Cloud Storage y se activan en tus componentes con Cloud Storage FUSE.

    En Vertex AI Pipelines, puedes usar los servicios de Google Cloud para que los recursos estén disponibles; por ejemplo, puedes usar Cloud Storage FUSE para acceder a un bucket de Cloud Storage como un volumen activado en un paso de canalización. Si el URI de Cloud Storage es gs://example-bucket/example-pipeline, el contenedor del componente de la canalización puede usar Cloud Storage FUSE para acceder al URI como la siguiente ruta: /gcs/example-bucket/example-pipeline.

  • Cuando ejecutas una canalización con Vertex AI Pipelines, la raíz de la canalización debe haberse especificado en la anotación @pipeline o cuando creaste la ejecución de canalización.

    En Kubeflow Pipelines, la especificación de la raíz de la canalización es opcional. Los artefactos de una ejecución de canalización se almacenan con MinIO de forma predeterminada.

Funciones no compatibles con Vertex AI Pipelines

  • Por el momento, las siguientes funciones de Kubeflow Pipelines no son compatibles con Vertex AI Pipelines.

    • Vencimiento de la caché: En Kubeflow Pipelines, puedes especificar que las ejecuciones de los componentes almacenados en caché venzan después de un período determinado mediante el DSL del SDK v1 de Kubeflow Pipelines.

      Actualmente, no puedes especificar que las ejecuciones de componentes venzan después de un período especificado mediante el DSL de SDK v2 de Kubeflow Pipelines.

      En Vertex AI Pipelines, cuando ejecutas una canalización con create_run_from_job_spec, puedes usar el argumento enable_caching para especificar que esta ejecución de canalización no use el almacenamiento en caché.

    • Recursión: En Kubeflow Pipelines, puedes especificar componentes de canalización que se llaman de forma recurrente.

      Por el momento, Vertex AI Pipelines no admite componentes de canalización a los que se llama de forma recursiva.