kfp.compiler¶
The kfp.compiler module contains the compiler for compiling pipeline definitions.
Classes:
| Compiles pipelines composed using the KFP SDK DSL to a YAML pipeline definition. |
| Options for Kubernetes manifest output during pipeline compilation. |
- class kfp.compiler.Compiler[source]¶
Bases:
objectCompiles pipelines composed using the KFP SDK DSL to a YAML pipeline definition.
The pipeline definition is PipelineSpec IR, the protobuf message that defines a pipeline.
Example
@dsl.pipeline( name='name', ) def my_pipeline(a: int, b: str = 'default value'): ... kfp.compiler.Compiler().compile( pipeline_func=my_pipeline, package_path='path/to/pipeline.yaml', pipeline_parameters={'a': 1}, )Methods:
compile(pipeline_func, package_path[, ...])Compiles the pipeline or component function into IR YAML.
- compile(pipeline_func: BaseComponent, package_path: str, pipeline_name: str | None =
None, pipeline_display_name: str | None =None, pipeline_parameters: dict[str, Any] | None =None, type_check: bool =True, kubernetes_manifest_options: KubernetesManifestOptions | None =None, kubernetes_manifest_format: bool =False) None[source]¶ Compiles the pipeline or component function into IR YAML.
- Parameters¶
- pipeline_func: BaseComponent¶
Pipeline function constructed with the
@dsl.pipelineor component constructed with the@dsl.componentdecorator.- package_path: str¶
Output YAML file path. For example,
'~/my_pipeline.yaml'or'~/my_component.yaml'.- pipeline_name: str | None =
None¶ Name of the pipeline.
- pipeline_display_name: str | None =
None¶ Display name of the pipeline
- pipeline_parameters: dict[str, Any] | None =
None¶ Map of parameter names to argument values.
- type_check: bool =
True¶ Whether to enable type checking of component interfaces during compilation.
- kubernetes_manifest_options: KubernetesManifestOptions | None =
None¶ KubernetesManifestOptions object for Kubernetes manifest output during pipeline compilation.
- kubernetes_manifest_format: bool =
False¶ Output the compiled pipeline as a Kubernetes manifest.
- compile(pipeline_func: BaseComponent, package_path: str, pipeline_name: str | None =
- class kfp.compiler.KubernetesManifestOptions(pipeline_name: str | None =
None, pipeline_display_name: str | None =None, pipeline_version_name: str | None =None, pipeline_version_display_name: str | None =None, namespace: str | None =None, include_pipeline_manifest: bool =False)[source]¶ Bases:
objectOptions for Kubernetes manifest output during pipeline compilation.
- Parameters¶
- pipeline_name: str | None =
None¶ Name for the Pipeline resource (defaults to pipeline_spec.pipeline_info.name).
- pipeline_display_name: str | None =
None¶ Display name for the Pipeline resource (defaults to pipeline_name).
- pipeline_version_name: str | None =
None¶ Name for the PipelineVersion resource (defaults to pipeline_name).
- pipeline_version_display_name: str | None =
None¶ Display name for the PipelineVersion resource (defaults to pipeline_display_name).
- namespace: str | None =
None¶ Kubernetes namespace for the resources (optional).
- include_pipeline_manifest: bool =
False¶ Whether to include the Pipeline manifest (default: False).
- pipeline_name: str | None =
Methods:
set_pipeline_spec(pipeline_spec)Attributes:
- set_pipeline_spec(pipeline_spec)[source]¶
- property pipeline_name : str | None¶
- property pipeline_display_name : str | None¶
- property pipeline_version_name : str | None¶
- property pipeline_version_display_name : str | None¶