Para os programadores com experiência na criação de pipelines do Kubeflow, é importante compreender as seguintes formas em que os Vertex AI Pipelines são diferentes dos pipelines do Kubeflow.
Transmissão de dados (entradas/saídas)
- A transmissão de dados através de entradas e saídas difere entre o SDK v1 do Kubeflow Pipelines e o SDK v2 do Kubeflow Pipelines. O SDK Kubeflow Pipelines v2 tem a separação de parâmetros e artefactos, e não podem ser transmitidos uns aos outros. Para informações mais detalhadas, consulte os artigos Noções básicas dos pipelines do Kubeflow Pipelines e Tipos de dados do Kubeflow Pipelines.
Utilização da versão da linguagem específica do domínio (DSL)
Os Vertex AI Pipelines podem executar pipelines criados com o TFX v0.30.0 ou posterior, ou a linguagem específica do domínio (DSL) do Kubeflow Pipelines SDK v2.
O DSL do SDK Kubeflow Pipelines v2 está disponível no SDK Kubeflow Pipelines v1.6 ou posterior.
O Kubeflow Pipelines pode executar pipelines criados com o SDK do Kubeflow Pipelines. O Kubeflow Pipelines v1.6 ou posterior também pode executar pipelines criados com o DSL do SDK v2 do Kubeflow Pipelines.
Armazenamento
O Kubeflow Pipelines e o Vertex AI Pipelines processam o armazenamento de forma diferente. No Kubeflow Pipelines, pode usar recursos do Kubernetes, como reivindicações de volume persistente. Nos Vertex AI Pipelines, os seus dados são armazenados no Cloud Storage e montados nos seus componentes através do Cloud Storage FUSE.
Nos Vertex AI Pipelines, pode usar Google Cloud serviços para disponibilizar recursos. Por exemplo, pode usar o Cloud Storage FUSE para aceder a um contentor do Cloud Storage como um volume montado num passo do pipeline. Se o URI do Cloud Storage for
gs://example-bucket/example-pipeline
, o contentor do componente do pipeline pode usar o Cloud Storage FUSE para aceder a esse URI como o seguinte caminho:/gcs/example-bucket/example-pipeline
.Quando executa um pipeline através do Vertex AI Pipelines, a raiz do pipeline tem de ter sido especificada na anotação
@pipeline
ou quando criou a execução do pipeline.Nos Kubeflow Pipelines, a especificação da raiz do pipeline é opcional. Por predefinição, os artefactos de uma execução de pipeline são armazenados através do MinIO.
Funcionalidades não suportadas nos pipelines da Vertex AI
As seguintes funcionalidades do Kubeflow Pipelines não são suportadas no Vertex AI Pipelines.
Expiração da cache: nos Kubeflow Pipelines, pode especificar que as execuções de componentes em cache expiram após um período especificado através do DSL do SDK v1 dos Kubeflow Pipelines.
Não pode especificar que as execuções de componentes expirem após um período especificado com o DSL do SDK v2 do Kubeflow Pipelines.
Nos pipelines da Vertex AI, quando executa um pipeline usando
create_run_from_job_spec
, pode usar o argumentoenable_caching
para especificar que esta execução do pipeline não usa o armazenamento em cache.Recursão: nos Kubeflow Pipelines, pode especificar componentes do pipeline que são chamados recursivamente.
O Vertex AI Pipelines não suporta componentes de pipelines que são chamados recursivamente.