Kubeflow Pipelines
Kubeflow Pipelines is a system for defining and running repeatable machine learning workflows on Kubernetes. It turns a graph of containerized steps into tracked runs, coordinates their inputs and outputs, and records the artifacts each run produces.
itArtificial intelligence and machine learning | OpenSkills.info
Course pathWalk it in order
Look it upDip in anytime
Go furtherLeaves this page
Intro
Kubeflow Pipelines
Kubeflow Pipelines, commonly shortened to KFP, orchestrates machine learning workflows on Kubernetes. A pipeline describes a directed graph of components. Each component packages one unit of work, such as preparing a dataset, training a model, or evaluating metrics. The KFP backend turns that graph into Kubernetes workloads, coordinates their dependencies, and records what happened during each run.
KFP separates a workflow definition from a workflow execution. Python code written with the KFP domain-specific language defines components, their typed inputs and outputs, and the connections between them. The compiler converts that definition into an intermediate representation called IR YAML. A KFP backend accepts the IR YAML and creates a run. This boundary makes the compiled package an inspectable deployment artifact rather than an instruction to execute the pipeline during Python import.
The execution path
The normal path has six stages:
- Component functions or container specifications define isolated tasks.
- A pipeline function connects task outputs to downstream inputs and adds control flow.
- The KFP compiler checks the graph and emits IR YAML.
- A user, client, API, or recurring-run configuration submits that package with runtime parameters.
- The backend schedules task containers as Kubernetes Pods and follows the graph's dependencies.
- The UI, API, artifact store, and metadata store expose status, logs, outputs, and lineage.
The decorated pipeline function resembles ordinary Python, but it constructs topology. Calling a component inside that function creates a task object. It does not run the component body. Data connections establish ordering: when one task consumes another task's output, the producer must finish before the consumer starts. Tasks with no dependency can run in parallel.
Continue the course
This section is part of the paid course.
See pricing to subscribe, or log in if you already have access.
Where this skill leads
Relevant careers
See how this topic contributes to broader role-level skill maps.
Sources
- https://www.kubeflow.org/docs/components/pipelines/
Supports
- Official Kubeflow Pipelines documentation map and current terminology
- Reference-path rationale
- https://www.kubeflow.org/docs/components/pipelines/concepts/pipeline/
Supports
- Pipeline graph, component, task, IR YAML, backend, Pod, parameter, artifact, caching, retry, and resource relationships
- Definition-to-execution boundary and quiz answers
- https://www.kubeflow.org/docs/components/pipelines/concepts/component/
Supports
- Component packaging, code, dependencies, images, typed interfaces, and isolated container execution
- https://www.kubeflow.org/docs/components/pipelines/user-guides/components/compose-components-into-pipelines/
Supports
- Pipeline functions as topology construction
- Data dependencies and parallel task behavior
- https://www.kubeflow.org/docs/components/pipelines/user-guides/data-handling/data-types/
Supports
- Parameter and artifact interface distinction, type checking, and lineage
- https://www.kubeflow.org/docs/components/pipelines/user-guides/data-handling/parameters/
Supports
- Small JSON-serialized parameter values and Python type mappings
- https://www.kubeflow.org/docs/components/pipelines/user-guides/data-handling/artifacts/
Supports
- Artifact classes, URI, path, metadata, object transfer, type checking, and UI rendering
- https://www.kubeflow.org/docs/components/pipelines/concepts/pipeline-root/
Supports
- Pipeline root as object-storage path for run artifacts
- Artifact bytes and metadata boundary
- https://www.kubeflow.org/docs/components/pipelines/concepts/metadata/
Supports
- Runtime metadata, executions, artifact availability, properties, and lineage graphs
- https://www.kubeflow.org/docs/components/pipelines/user-guides/core-functions/control-flow/
Supports
- Conditions, loops, exit handlers, final status, and ignoring upstream failure
- https://www.kubeflow.org/docs/components/pipelines/user-guides/core-functions/caching/
Supports
- Default caching, component and input matching, reused outputs, and cache configuration
- https://www.kubeflow.org/docs/components/pipelines/concepts/run/
Supports
- Runs, immutable run logs, recurring runs, triggers, and concurrency limits
- https://www.kubeflow.org/docs/components/pipelines/user-guides/core-functions/run-a-pipeline/
Supports
- Dashboard, SDK client, and CLI submission paths
- https://www.kubeflow.org/docs/components/pipelines/user-guides/migration/
Supports
- Version 2 decorators, generic IR YAML, GUI, compatibility matrix, final version 1 SDK, and breaking changes
- https://www.kubeflow.org/docs/components/pipelines/operator-guides/multi-user/
Supports
- Profiles, namespaces, API authorization, run placement, shared pipeline definitions, and isolation limits
- https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/
Supports
- Pod Pending and failure states used in operational triage and quiz answers
- https://github.com/kubeflow/pipelines
Supports
- Standalone and full-platform installation, default execution engine, project scope, and Apache license
- https://github.com/kubeflow/pipelines/blob/master/LICENSE
Supports
- Kubeflow Pipelines open-source and free landscape classification
- https://terrytangyuan.github.io/awesome-kubeflow/
Supports
- Discovery of Kale, deployKF, ZenML, and Argo Workflows for Awesome Links
- https://kale.kubeflow.org/en/latest/
Supports
- Kale notebook annotations, dependency analysis, KFP version 2 compilation, and JupyterLab integration
- Kale Awesome Links rationale
- https://www.deploykf.org/guides/getting-started/
Supports
- deployKF production platform scope and access to Kubeflow Pipelines, Notebooks, and Katib
- deployKF Awesome Links rationale
- https://www.zenml.io/integrations/kubeflow
Supports
- ZenML use of Kubeflow as an orchestrator in a configurable MLOps stack
- ZenML Awesome Links rationale and landscape placement
- https://argo-workflows.readthedocs.io/
Supports
- Argo Workflows Kubernetes DAG execution scope and Awesome Links rationale
- https://github.com/argoproj/argo-workflows/blob/main/LICENSE
Supports
- Argo Workflows open-source and free landscape classification
- https://flyte.org/platform
Supports
- Flyte typed workflows, container execution, recovery, caching, lineage, multi-tenancy, and resource placement
- Flyte landscape placement
- https://github.com/flyteorg/flyte/blob/master/LICENSE
Supports
- Flyte open-source and free landscape classification
- https://cloud.google.com/vertex-ai/docs/pipelines/introduction
Supports
- Managed execution of pipelines defined with Kubeflow Pipelines or TFX
- Vertex AI Pipelines landscape placement
- https://cloud.google.com/vertex-ai/pricing
Supports
- Vertex AI proprietary paid managed-service classification
- https://docs.aws.amazon.com/sagemaker/latest/dg/pipelines.html
Supports
- SageMaker managed orchestration, authoring interfaces, AWS integrations, versioning, and lineage
- SageMaker Pipelines landscape placement
- https://aws.amazon.com/sagemaker/ai/pricing/
Supports
- SageMaker proprietary paid managed-service classification
- https://learn.microsoft.com/en-us/azure/machine-learning/overview-what-is-azure-machine-learning
Supports
- Azure Machine Learning lifecycle, pipeline, compute, identity, asset, and studio scope
- Azure Machine Learning landscape placement
- https://azure.microsoft.com/en-us/pricing/details/machine-learning/
Supports
- Azure Machine Learning proprietary paid managed-service classification
- https://github.com/zenml-io/zenml/blob/main/LICENSE
Supports
- ZenML open-core landscape classification
- https://www.zenml.io/pricing
Supports
- ZenML freemium landscape classification
- https://cloud.google.com/blog/products/ai-machine-learning/introducing-ai-hub-and-kubeflow-pipelines-making-ai-simpler-faster-and-more-useful-for-businesses/
Supports
- November 8, 2018 Kubeflow Pipelines announcement and reusable hybrid workflow scope
- https://cloud.google.com/blog/products/ai-machine-learning/getting-started-kubeflow-pipelines
Supports
- November 15, 2018 end-to-end workflow guide, reusable container steps, and parallel branches
- https://blog.kubeflow.org/releases/2020/03/02/kubeflow-1-0-cloud-native-ml-for-everyone.html
Supports
- March 2, 2020 Kubeflow 1.0 and stable platform applications on conformant Kubernetes
- https://blog.kubeflow.org/release/official/2020/11/18/kubeflow-1.2-blog-post.html
Supports
- November 18, 2020 KFP 1.0 stabilization, platform components, IR work, and Tekton backend availability
- https://blog.kubeflow.org/kubeflow-1.4-release/
Supports
- October 12, 2021 KFP 1.7, advanced metadata workflows, metrics, caching, version 2 compatible mode, and SDK version 2 tutorial
- https://blog.kubeflow.org/kubeflow-1.5.1-release/
Supports
- July 18, 2022 caching certificate changes for stricter Kubernetes distributions
- https://blog.kubeflow.org/kubeflow-1.8-release/
Supports
- October 23, 2023 distribution of KFP backend 2.0.3 and SDK 2.4.0
- https://cloud.google.com/blog/products/ai-machine-learning/whats-new-in-kubeflow-pipelines-v2/
Supports
- KFP version 2 decorators, IR, nested pipelines, UI, artifacts, lineage, and historical context
- https://blog.kubeflow.org/kubeflow-1.9-release/
Supports
- July 22, 2024 consolidation of Argo and Tekton backend support
