Per gli sviluppatori con esperienza nella creazione di pipeline Kubeflow, è importante comprendere i seguenti modi in cui Vertex AI Pipelines è diverso da Kubeflow Pipelines.
Trasmissione dei dati (input/output)
- Il passaggio dei dati tramite input e output è diverso dall'SDK Kubeflow Pipelines 1 all'SDK Kubeflow Pipelines 2. L'SDK Kubeflow Pipelines 2.0 prevede la separazione di parametri e elementi e questi non possono essere passati l'uno all'altro. Per informazioni più dettagliate, consulta Nozioni di base sulle pipeline Kubeflow e Tipi di dati di Kubeflow Pipelines.
Utilizzo della versione del linguaggio specifico del dominio (DSL)
Vertex AI Pipelines può eseguire pipeline create utilizzando TFX 0.30.0 o versioni successive o il linguaggio specifico del dominio (DSL) dell'SDK Kubeflow Pipelines 2.
Il DSL dell'SDK Kubeflow Pipelines 2 è disponibile nell'SDK Kubeflow Pipelines 1.6 o versioni successive.
Kubeflow Pipelines può eseguire pipeline create utilizzando l'SDK Kubeflow Pipelines. Kubeflow Pipelines 1.6 o versioni successive può anche eseguire pipeline create utilizzando il DSL dell'SDK Kubeflow Pipelines 2.
Archiviazione
Kubeflow Pipelines e Vertex AI Pipelines gestiscono lo spazio di archiviazione in modo diverso. In Kubeflow Pipelines puoi utilizzare le risorse Kubernetes come le richieste di volume permanente. In Vertex AI Pipelines, i tuoi dati vengono archiviati su Cloud Storage e montati nei componenti utilizzando Cloud Storage FUSE.
In Vertex AI Pipelines, puoi utilizzare i servizi Google Cloud per rendere disponibili le risorse. Ad esempio, puoi utilizzare Cloud Storage FUSE per accedere a un bucket Cloud Storage come volume montato in un passaggio della pipeline. Se il tuo URI Cloud Storage è
gs://example-bucket/example-pipeline
, il contenitore del componente della pipeline può utilizzare Cloud Storage FUSE per accedere all'URI come segue/gcs/example-bucket/example-pipeline
.Quando esegui una pipeline utilizzando Vertex AI Pipelines, la radice della pipeline deve essere stata specificata nell'annotazione
@pipeline
o quando hai creato l'esecuzione della pipeline.In Kubeflow Pipelines, la specifica della radice della pipeline è facoltativa. Per impostazione predefinita, gli elementi di una pipeline vengono archiviati utilizzando MinIO.
Funzionalità non supportate in Vertex AI Pipelines
Le seguenti funzionalità di Kubeflow Pipelines non sono attualmente supportate in Vertex AI Pipelines.
Scadenza della cache: in Kubeflow Pipelines, puoi specificare che le esecuzioni dei componenti memorizzati nella cache scadano dopo un determinato periodo di tempo utilizzando il DSL dell'SDK Kubeflow Pipelines 1.0.
Al momento, non puoi specificare che le esecuzioni dei componenti scadono dopo un determinato periodo di tempo utilizzando il DSL dell'SDK Kubeflow Pipelines 2.
In Vertex AI Pipelines, quando esegui una pipeline utilizzando
create_run_from_job_spec
puoi utilizzare l'argomentoenable_caching
per specificare che questa esecuzione della pipeline non utilizza la memorizzazione nella cache.Riccursione: in Kubeflow Pipelines, puoi specificare i componenti della pipeline che vengono chiamati in modo ricorsivo.
Al momento, Vertex AI Pipelines non supporta i componenti della pipeline invocati in modo ricorsivo.