Pour les développeurs ayant l'expérience de la création de pipelines Kubeflow, il est important de comprendre les différences suivantes entre Agent Platform Pipelines et Kubeflow Pipelines.
Transfert de données (entrées/sorties)
- Le transfert de données à l'aide d'entrées et de sorties ne s'effectue pas de la même manière avec le SDK Kubeflow Pipelines v1 et le SDK Kubeflow Pipelines v2. Le SDK Kubeflow Pipelines v2 sépare les paramètres des artefacts, et ils ne peuvent pas être transmis les uns aux autres. Pour obtenir des informations détaillées, consultez les sections Principes de base des pipelines Kubeflow Pipelines et Types de données de Kubeflow Pipelines.
Utilisation des versions dans un langage spécifique à un domaine (DSL, domain-specific language)
Agent Platform Pipelines peut exécuter des pipelines créés avec TFX v0.30.0 ou une version ultérieure, ou le langage spécifique au domaine (domain-specific language, DSL) du SDK Kubeflow Pipelines v2.
Le DSL du SDK Kubeflow Pipelines v2 est disponible dans la version 1.6 ou ultérieure du SDK Kubeflow Pipelines.
Kubeflow Pipelines peut exécuter des pipelines créés à l'aide du SDK Kubeflow Pipelines. Kubeflow Pipelines v1.6 ou version ultérieure peut également exécuter des pipelines créés à l'aide du DSL du SDK Kubeflow Pipelines v2.
Stockage
Kubeflow Pipelines et Agent Platform Pipelines gèrent le stockage différemment. Dans Kubeflow Pipelines, vous pouvez utiliser des ressources Kubernetes telles que les demandes de volume persistant. Dans Agent Platform Pipelines, vos données sont stockées sur Cloud Storage et installées dans vos composants à l'aide de Cloud Storage FUSE.
Dans Agent Platform Pipelines, vous pouvez utiliser les services Google Cloud pour rendre des ressources disponibles. Par exemple, vous pouvez utiliser Cloud Storage FUSE pour accéder à un bucket Cloud Storage en tant que volume installé dans une étape de pipeline. Si votre URI Cloud Storage est
gs://example-bucket/example-pipeline, le conteneur du composant de pipeline peut utiliser Cloud Storage FUSE pour accéder à cet URI en tant que chemin d'accès suivant :/gcs/example-bucket/example-pipeline.Lorsque vous exécutez un pipeline à l'aide d'Agent Platform Pipelines, la racine du pipeline doit avoir été spécifiée dans l'annotation
@pipelineou lors de la création de l'exécution du pipeline.Dans Kubeflow Pipelines, la spécification de la racine du pipeline est facultative. Par défaut, les artefacts d'exécution de pipeline sont stockés à l'aide de MinIO.
Fonctionnalités non disponibles dans Agent Platform Pipelines
Les fonctionnalités Kubeflow Pipelines suivantes ne sont pas compatibles avec Agent Platform Pipelines.
Expiration du cache : dans Kubeflow Pipelines, vous pouvez spécifier que les exécutions de composants mis en cache expirent au bout d'un certain temps à l'aide du DSL du SDK Kubeflow Pipelines v1.
Vous ne pouvez pas spécifier l'expiration des exécutions de composants après une durée spécifiée à l'aide du DSL du SDK Kubeflow Pipelines v2.
Dans Agent Platform Pipelines, lorsque vous exécutez un pipeline à l'aide de
create_run_from_job_spec, vous pouvez utiliser l'argumentenable_cachingpour spécifier que cette exécution de pipeline n'utilise pas la mise en cache.Récursion : dans Kubeflow Pipelines, vous pouvez spécifier les composants de pipeline qui sont appelés de manière récursive.
Agent Platform Pipelines n'est pas compatible avec les composants de pipeline appelés "récursivement".