Migrar desde flujos de procesamiento de Kubeflow a Vertex AI

Si tienes experiencia creando flujos de procesamiento de Kubeflow, es importante que sepas en qué se diferencia Vertex AI Pipelines de Kubeflow Pipelines.

Transferencia de datos (entradas y salidas)

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

  • Vertex AI Pipelines puede ejecutar las pipelines que se hayan creado con TFX 0.30.0 o versiones posteriores, o con el lenguaje específico del dominio (DSL) de la versión 2 del SDK de Kubeflow Pipelines.

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

    Kubeflow Pipelines puede ejecutar flujos de trabajo creados con el SDK de Kubeflow Pipelines. Kubeflow Pipelines 1.6 o versiones posteriores también pueden ejecutar las canalizaciones creadas con el DSL de la versión 2 del SDK de Kubeflow Pipelines.

Almacenamiento

  • Kubeflow Pipelines y Vertex AI Pipelines gestionan el almacenamiento de forma 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 montan en tus componentes mediante Cloud Storage FUSE.

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

  • Cuando ejecutas un flujo de trabajo con Vertex AI Pipelines, la raíz del flujo de trabajo debe haberse especificado en la anotación @pipeline o al crear la ejecución del flujo de trabajo.

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

Funciones no compatibles con Vertex AI Pipelines

  • Las siguientes funciones de Kubeflow Pipelines no se admiten en Vertex AI Pipelines.

    • Vencimiento de la caché: en Kubeflow Pipelines, puedes especificar que las ejecuciones de componentes almacenadas en caché caduquen después de un periodo determinado mediante el DSL de la versión 1 del SDK de Kubeflow Pipelines.

      No puedes especificar que las ejecuciones de componentes caduquen después de un periodo de tiempo determinado con el DSL del SDK de Kubeflow Pipelines v2.

      En Vertex AI Pipelines, cuando ejecutas un flujo de procesamiento con create_run_from_job_spec, puedes usar el argumento enable_caching para especificar que esta ejecución del flujo de procesamiento no use la caché.

    • Recursión: en Kubeflow Pipelines, puedes especificar componentes de flujo de procesamiento que se llamen de forma recursiva.

      Vertex AI Pipelines no admite componentes de flujo de procesamiento que se llamen de forma recursiva.