mirror of https://github.com/kubeflow/website.git
				
				
				
			This commit is contained in:
		
							parent
							
								
									9e19444437
								
							
						
					
					
						commit
						83cd2d1125
					
				| 
						 | 
				
			
			@ -35,4 +35,4 @@ If there is a matching execution in Kubeflow Pipelines, the outputs of that exec
 | 
			
		|||
 | 
			
		||||
Cache is enabled by default with [Kubeflow Pipelines SDK v2](https://www.kubeflow.org/docs/components/pipelines/sdk-v2/) using `kfp.dsl.PipelineExecutionMode.V2_COMPATIBLE` mode.
 | 
			
		||||
 | 
			
		||||
You can turn off execution caching for pipeline runs that are created using Python. When you run a pipeline using [create_run_from_pipeline_func](https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.client.html#kfp.Client.create_run_from_pipeline_func) or [create_run_from_pipeline_package](https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.client.html#kfp.Client.create_run_from_pipeline_package) or [run_pipeline](https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.client.html#kfp.Client.run_pipeline,) you can use the `enable_caching` argument to specify that this pipeline run does not use caching.
 | 
			
		||||
You can turn off execution caching for pipeline runs that are created using Python. When you run a pipeline using [create_run_from_pipeline_func](https://kubeflow-pipelines.readthedocs.io/en/stable/source/client.html#kfp.Client.create_run_from_pipeline_func) or [create_run_from_pipeline_package](https://kubeflow-pipelines.readthedocs.io/en/stable/source/client.html#kfp.Client.create_run_from_pipeline_package) or [run_pipeline](https://kubeflow-pipelines.readthedocs.io/en/stable/source/client.html#kfp.Client.run_pipeline,) you can use the `enable_caching` argument to specify that this pipeline run does not use caching.
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -80,9 +80,9 @@ print(client.list_runs(namespace=user_namespace))
 | 
			
		|||
```
 | 
			
		||||
 | 
			
		||||
{{% alert title="Tip" color="info" %}}
 | 
			
		||||
* To set a default namespace for Pipelines SDK commands, use the [`kfp.Client().set_user_namespace()`](https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.client.html#kfp.Client.set_user_namespace) method, 
 | 
			
		||||
* To set a default namespace for Pipelines SDK commands, use the [`kfp.Client().set_user_namespace()`](https://kubeflow-pipelines.readthedocs.io/en/stable/source/client.html#kfp.Client.set_user_namespace) method, 
 | 
			
		||||
  this method stores your user namespace in a configuration file at `$HOME/.config/kfp/context.json`.
 | 
			
		||||
* Detailed documentation for `kfp.Client()` can be found in the [Kubeflow Pipelines SDK Reference](https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.client.html).
 | 
			
		||||
* Detailed documentation for `kfp.Client()` can be found in the [Kubeflow Pipelines SDK Reference](https://kubeflow-pipelines.readthedocs.io/en/stable/source/client.html).
 | 
			
		||||
{{% /alert %}}
 | 
			
		||||
 | 
			
		||||
## When using the REST API
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -41,7 +41,7 @@ If you want to specify the `pipeline root` to S3, please choose one of the follo
 | 
			
		|||
`dsl.get_pipeline_conf().add_op_transformer(aws.use_aws_secret('xxx', ‘xxx’, ‘xxx’))`
 | 
			
		||||
  
 | 
			
		||||
**references**:
 | 
			
		||||
* [add-op-transformer](https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.dsl.html#kfp.dsl.PipelineConf.add_op_transformer)
 | 
			
		||||
* [add-op-transformer](https://kubeflow-pipelines.readthedocs.io/en/stable/source/dsl.html#kfp.dsl.PipelineConf.add_op_transformer)
 | 
			
		||||
* [use-aws-secret](https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.extensions.html#kfp.aws.use_aws_secret)
 | 
			
		||||
 | 
			
		||||
## How to configure pipeline root
 | 
			
		||||
| 
						 | 
				
			
			@ -60,9 +60,9 @@ You can configure a pipeline root through the `kfp.dsl.pipeline` annotation when
 | 
			
		|||
 | 
			
		||||
####  Via Submitting a Pipeline through SDK
 | 
			
		||||
You can configure pipeline root via `pipeline_root` argument when you submit a Pipeline using one of the following:
 | 
			
		||||
* [create_run_from_pipeline_func](https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.client.html#kfp.Client.create_run_from_pipeline_func)
 | 
			
		||||
* [create_run_from_pipeline_package](https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.client.html#kfp.Client.create_run_from_pipeline_package) 
 | 
			
		||||
* [run_pipeline](https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.client.html#kfp.Client.run_pipeline).
 | 
			
		||||
* [create_run_from_pipeline_func](https://kubeflow-pipelines.readthedocs.io/en/stable/source/client.html#kfp.Client.create_run_from_pipeline_func)
 | 
			
		||||
* [create_run_from_pipeline_package](https://kubeflow-pipelines.readthedocs.io/en/stable/source/client.html#kfp.Client.create_run_from_pipeline_package) 
 | 
			
		||||
* [run_pipeline](https://kubeflow-pipelines.readthedocs.io/en/stable/source/client.html#kfp.Client.run_pipeline).
 | 
			
		||||
 | 
			
		||||
####  Via Submitting a Pipeline Run through UI
 | 
			
		||||
You can configure a pipeline root via the `pipeline_root` run parameters when you submit a pipeline run in the UI
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -268,7 +268,7 @@
 | 
			
		|||
    "    public website. The function extracts the CSV files and then merges them\n",
 | 
			
		||||
    "    into a single file.\n",
 | 
			
		||||
    "\n",
 | 
			
		||||
    "[container-op]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/kfp.dsl.html#kfp.dsl.ContainerOp\n",
 | 
			
		||||
    "[container-op]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/dsl.html#kfp.dsl.ContainerOp\n",
 | 
			
		||||
    "[component-spec]: https://www.kubeflow.org/docs/components/pipelines/reference/component-spec/\n",
 | 
			
		||||
    "[python-function-component]: https://www.kubeflow.org/docs/components/pipelines/sdk-v2/python-function-components/\n",
 | 
			
		||||
    "[component-dev]: https://www.kubeflow.org/docs/components/pipelines/sdk-v2/component-development/\n",
 | 
			
		||||
| 
						 | 
				
			
			@ -454,7 +454,7 @@
 | 
			
		|||
    "    to load the component specification YAML for any components that you are\n",
 | 
			
		||||
    "    reusing in this pipeline.\n",
 | 
			
		||||
    "\n",
 | 
			
		||||
    "[load_component_from_url]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/kfp.components.html?highlight=load_component_from_url#kfp.components.load_component_from_url"
 | 
			
		||||
    "[load_component_from_url]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/components.html?highlight=load_component_from_url#kfp.components.load_component_from_url"
 | 
			
		||||
   ]
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
| 
						 | 
				
			
			@ -570,7 +570,7 @@
 | 
			
		|||
    "\n",
 | 
			
		||||
    "1.  Create an instance of the [`kfp.Client` class][kfp-client] following steps in [connecting to Kubeflow Pipelines using the SDK client][connect-api].\n",
 | 
			
		||||
    "\n",
 | 
			
		||||
    "[kfp-client]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/kfp.client.html#kfp.Client\n",
 | 
			
		||||
    "[kfp-client]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/client.html#kfp.Client\n",
 | 
			
		||||
    "[connect-api]: https://www.kubeflow.org/docs/components/pipelines/sdk/connect-api"
 | 
			
		||||
   ]
 | 
			
		||||
  },
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -264,7 +264,7 @@ when designing a pipeline.
 | 
			
		|||
    public website. The function extracts the CSV files and then merges them
 | 
			
		||||
    into a single file.
 | 
			
		||||
 | 
			
		||||
[container-op]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.dsl.html#kfp.dsl.ContainerOp
 | 
			
		||||
[container-op]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/dsl.html#kfp.dsl.ContainerOp
 | 
			
		||||
[component-spec]: https://www.kubeflow.org/docs/components/pipelines/reference/component-spec/
 | 
			
		||||
[python-function-component]: https://www.kubeflow.org/docs/components/pipelines/sdk-v2/python-function-components/
 | 
			
		||||
[component-dev]: https://www.kubeflow.org/docs/components/pipelines/sdk-v2/component-development/
 | 
			
		||||
| 
						 | 
				
			
			@ -403,7 +403,7 @@ def merge_csv(tar_data: Input[Artifact], output_csv: Output[Dataset]):
 | 
			
		|||
    to load the component specification YAML for any components that you are
 | 
			
		||||
    reusing in this pipeline.
 | 
			
		||||
 | 
			
		||||
[load_component_from_url]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.components.html?highlight=load_component_from_url#kfp.components.load_component_from_url
 | 
			
		||||
[load_component_from_url]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/components.html?highlight=load_component_from_url#kfp.components.load_component_from_url
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
```python
 | 
			
		||||
| 
						 | 
				
			
			@ -476,7 +476,7 @@ See the guide to [getting started with the UI][quickstart].
 | 
			
		|||
 | 
			
		||||
1.  Create an instance of the [`kfp.Client` class][kfp-client] following steps in [connecting to Kubeflow Pipelines using the SDK client][connect-api].
 | 
			
		||||
 | 
			
		||||
[kfp-client]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.client.html#kfp.Client
 | 
			
		||||
[kfp-client]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/client.html#kfp.Client
 | 
			
		||||
[connect-api]: https://www.kubeflow.org/docs/components/pipelines/sdk/connect-api
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -559,10 +559,10 @@ client.create_run_from_pipeline_func(my_pipeline, arguments={},
 | 
			
		|||
    mode=kfp.dsl.PipelineExecutionMode.V2_COMPATIBLE)
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
[kfp-load-comp-file]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.components.html#kfp.components.load_component_from_file
 | 
			
		||||
[kfp-load-comp-url]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.components.html#kfp.components.load_component_from_url
 | 
			
		||||
[kfp-load-comp-text]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.components.html#kfp.components.load_component_from_text
 | 
			
		||||
[kfp-containerop]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.dsl.html#kfp.dsl.ContainerOp
 | 
			
		||||
[kfp-load-comp-file]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/components.html#kfp.components.load_component_from_file
 | 
			
		||||
[kfp-load-comp-url]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/components.html#kfp.components.load_component_from_url
 | 
			
		||||
[kfp-load-comp-text]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/components.html#kfp.components.load_component_from_text
 | 
			
		||||
[kfp-containerop]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/dsl.html#kfp.dsl.ContainerOp
 | 
			
		||||
 | 
			
		||||
## Organizing the component files
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -78,7 +78,7 @@
 | 
			
		|||
   "source": [
 | 
			
		||||
    "3. Create an instance of the [`kfp.Client` class][kfp-client] following steps in [connecting to Kubeflow Pipelines using the SDK client][connect-api].\n",
 | 
			
		||||
    "\n",
 | 
			
		||||
    "[kfp-client]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/kfp.client.html#kfp.Client\n",
 | 
			
		||||
    "[kfp-client]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/client.html#kfp.Client\n",
 | 
			
		||||
    "[connect-api]: https://www.kubeflow.org/docs/components/pipelines/sdk/connect-api"
 | 
			
		||||
   ]
 | 
			
		||||
  },
 | 
			
		||||
| 
						 | 
				
			
			@ -110,7 +110,7 @@
 | 
			
		|||
    "    into a factory function that you can use to create\n",
 | 
			
		||||
    "    [`kfp.dsl.ContainerOp`][container-op] class instances to use as steps in your pipeline.\n",
 | 
			
		||||
    "\n",
 | 
			
		||||
    "[container-op]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.dsl.html#kfp.dsl.ContainerOp"
 | 
			
		||||
    "[container-op]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/dsl.html#kfp.dsl.ContainerOp"
 | 
			
		||||
   ]
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
| 
						 | 
				
			
			@ -329,7 +329,7 @@
 | 
			
		|||
    "The following example demonstrates how to return multiple outputs by value. \n",
 | 
			
		||||
    "\n",
 | 
			
		||||
    "[python37]: https://hub.docker.com/layers/python/library/python/3.7/images/sha256-7eef781ed825f3b95c99f03f4189a8e30e718726e8490651fa1b941c6c815ad1?context=explore\n",
 | 
			
		||||
    "[create-component-from-func]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/kfp.components.html#kfp.components.create_component_from_func\n",
 | 
			
		||||
    "[create-component-from-func]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/components.html#kfp.components.create_component_from_func\n",
 | 
			
		||||
    "[subprocess]: https://docs.python.org/3/library/subprocess.html\n",
 | 
			
		||||
    "[tf-docker]: https://www.tensorflow.org/install/docker\n",
 | 
			
		||||
    "[pytorch-docker]: https://hub.docker.com/r/pytorch/pytorch/tags\n",
 | 
			
		||||
| 
						 | 
				
			
			@ -338,8 +338,8 @@
 | 
			
		|||
    "[named-tuple]: https://docs.python.org/3/library/collections.html#collections.namedtuple\n",
 | 
			
		||||
    "[kfp-visualize]: https://www.kubeflow.org/docs/components/pipelines/sdk/output-viewer/\n",
 | 
			
		||||
    "[kfp-metrics]: https://www.kubeflow.org/docs/components/pipelines/sdk/pipelines-metrics/\n",
 | 
			
		||||
    "[input-path]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/kfp.components.html#kfp.components.InputPath\n",
 | 
			
		||||
    "[output-path]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/kfp.components.html#kfp.components.OutputPath\n",
 | 
			
		||||
    "[input-path]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/components.html#kfp.components.InputPath\n",
 | 
			
		||||
    "[output-path]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/components.html#kfp.components.OutputPath\n",
 | 
			
		||||
    "[vs-dsl-component]: https://github.com/kubeflow/pipelines/blob/sdk/release-1.8/sdk/python/kfp/v2/components/component_decorator.py"
 | 
			
		||||
   ]
 | 
			
		||||
  },
 | 
			
		||||
| 
						 | 
				
			
			@ -456,12 +456,12 @@
 | 
			
		|||
    "    that your function expects an argument to be an\n",
 | 
			
		||||
    "    [`io.TextIOWrapper`][textiowrapper] that this function can write to.\n",
 | 
			
		||||
    "\n",
 | 
			
		||||
    "[input-binary]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/kfp.components.html#kfp.components.InputBinaryFile\n",
 | 
			
		||||
    "[input-path]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/kfp.components.html#kfp.components.InputPath\n",
 | 
			
		||||
    "[input-text]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/kfp.components.html#kfp.components.InputTextFile\n",
 | 
			
		||||
    "[output-binary]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/kfp.components.html#kfp.components.OutputBinaryFile\n",
 | 
			
		||||
    "[output-path]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/kfp.components.html#kfp.components.OutputPath\n",
 | 
			
		||||
    "[output-text]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/kfp.components.html#kfp.components.OutputTextFile\n",
 | 
			
		||||
    "[input-binary]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/components.html#kfp.components.InputBinaryFile\n",
 | 
			
		||||
    "[input-path]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/components.html#kfp.components.InputPath\n",
 | 
			
		||||
    "[input-text]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/components.html#kfp.components.InputTextFile\n",
 | 
			
		||||
    "[output-binary]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/components.html#kfp.components.OutputBinaryFile\n",
 | 
			
		||||
    "[output-path]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/components.html#kfp.components.OutputPath\n",
 | 
			
		||||
    "[output-text]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/components.html#kfp.components.OutputTextFile\n",
 | 
			
		||||
    "[bytesio]: https://docs.python.org/3/library/io.html#io.BytesIO\n",
 | 
			
		||||
    "[textiowrapper]: https://docs.python.org/3/library/io.html#io.TextIOWrapper\n",
 | 
			
		||||
    "\n",
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -84,7 +84,7 @@ from kfp.v2.dsl import (
 | 
			
		|||
 | 
			
		||||
3. Create an instance of the [`kfp.Client` class][kfp-client] following steps in [connecting to Kubeflow Pipelines using the SDK client][connect-api].
 | 
			
		||||
 | 
			
		||||
[kfp-client]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.client.html#kfp.Client
 | 
			
		||||
[kfp-client]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/client.html#kfp.Client
 | 
			
		||||
[connect-api]: https://www.kubeflow.org/docs/components/pipelines/sdk/connect-api
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -107,7 +107,7 @@ through the process of creating a simple component.
 | 
			
		|||
    into a factory function that you can use to create
 | 
			
		||||
    [`kfp.dsl.ContainerOp`][container-op] class instances to use as steps in your pipeline.
 | 
			
		||||
 | 
			
		||||
[container-op]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.dsl.html#kfp.dsl.ContainerOp
 | 
			
		||||
[container-op]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/dsl.html#kfp.dsl.ContainerOp
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
```python
 | 
			
		||||
| 
						 | 
				
			
			@ -299,7 +299,7 @@ outputs as a new subclass of `tuple`.
 | 
			
		|||
The following example demonstrates how to return multiple outputs by value. 
 | 
			
		||||
 | 
			
		||||
[python37]: https://hub.docker.com/layers/python/library/python/3.7/images/sha256-7eef781ed825f3b95c99f03f4189a8e30e718726e8490651fa1b941c6c815ad1?context=explore
 | 
			
		||||
[create-component-from-func]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.components.html#kfp.components.create_component_from_func
 | 
			
		||||
[create-component-from-func]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/components.html#kfp.components.create_component_from_func
 | 
			
		||||
[subprocess]: https://docs.python.org/3/library/subprocess.html
 | 
			
		||||
[tf-docker]: https://www.tensorflow.org/install/docker
 | 
			
		||||
[pytorch-docker]: https://hub.docker.com/r/pytorch/pytorch/tags
 | 
			
		||||
| 
						 | 
				
			
			@ -308,8 +308,8 @@ The following example demonstrates how to return multiple outputs by value.
 | 
			
		|||
[named-tuple]: https://docs.python.org/3/library/collections.html#collections.namedtuple
 | 
			
		||||
[kfp-visualize]: https://www.kubeflow.org/docs/components/pipelines/sdk/output-viewer/
 | 
			
		||||
[kfp-metrics]: https://www.kubeflow.org/docs/components/pipelines/sdk/pipelines-metrics/
 | 
			
		||||
[input-path]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.components.html#kfp.components.InputPath
 | 
			
		||||
[output-path]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.components.html#kfp.components.OutputPath
 | 
			
		||||
[input-path]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/components.html#kfp.components.InputPath
 | 
			
		||||
[output-path]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/components.html#kfp.components.OutputPath
 | 
			
		||||
[vs-dsl-component]: https://github.com/kubeflow/pipelines/blob/sdk/release-1.8/sdk/python/kfp/v2/components/component_decorator.py
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -408,12 +408,12 @@ To return a file as an output, use one of the following type annotations:
 | 
			
		|||
    that your function expects an argument to be an
 | 
			
		||||
    [`io.TextIOWrapper`][textiowrapper] that this function can write to.
 | 
			
		||||
 | 
			
		||||
[input-binary]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.components.html#kfp.components.InputBinaryFile
 | 
			
		||||
[input-path]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.components.html#kfp.components.InputPath
 | 
			
		||||
[input-text]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.components.html#kfp.components.InputTextFile
 | 
			
		||||
[output-binary]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.components.html#kfp.components.OutputBinaryFile
 | 
			
		||||
[output-path]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.components.html#kfp.components.OutputPath
 | 
			
		||||
[output-text]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.components.html#kfp.components.OutputTextFile
 | 
			
		||||
[input-binary]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/components.html#kfp.components.InputBinaryFile
 | 
			
		||||
[input-path]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/components.html#kfp.components.InputPath
 | 
			
		||||
[input-text]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/components.html#kfp.components.InputTextFile
 | 
			
		||||
[output-binary]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/components.html#kfp.components.OutputBinaryFile
 | 
			
		||||
[output-path]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/components.html#kfp.components.OutputPath
 | 
			
		||||
[output-text]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/components.html#kfp.components.OutputTextFile
 | 
			
		||||
[bytesio]: https://docs.python.org/3/library/io.html#io.BytesIO
 | 
			
		||||
[textiowrapper]: https://docs.python.org/3/library/io.html#io.TextIOWrapper
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -157,5 +157,5 @@ Kubeflow Pipelines v2 compatible mode is currently in Beta stage. It is under ac
 | 
			
		|||
[build-pipeline]: /docs/components/pipelines/sdk-v2/build-pipeline/
 | 
			
		||||
[build-component]: /docs/components/pipelines/sdk-v2/component-development/
 | 
			
		||||
[python-component]: /docs/components/pipelines/sdk-v2/python-function-components/
 | 
			
		||||
[kfp-client]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.client.html#kfp.Client
 | 
			
		||||
[kfp-client]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/client.html#kfp.Client
 | 
			
		||||
[connect-api]: /docs/components/pipelines/sdk/connect-api/ 
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -224,7 +224,7 @@
 | 
			
		|||
    "    public website. The function extracts the CSV files and then merges them\n",
 | 
			
		||||
    "    into a single file.\n",
 | 
			
		||||
    "\n",
 | 
			
		||||
    "[container-op]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/kfp.dsl.html#kfp.dsl.ContainerOp\n",
 | 
			
		||||
    "[container-op]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/dsl.html#kfp.dsl.ContainerOp\n",
 | 
			
		||||
    "[component-spec]: https://www.kubeflow.org/docs/components/pipelines/reference/component-spec/\n",
 | 
			
		||||
    "[python-function-component]: https://www.kubeflow.org/docs/components/pipelines/sdk/python-function-components/\n",
 | 
			
		||||
    "[component-dev]: https://www.kubeflow.org/docs/components/pipelines/sdk/component-development/\n",
 | 
			
		||||
| 
						 | 
				
			
			@ -359,8 +359,8 @@
 | 
			
		|||
    "\n",
 | 
			
		||||
    "[web-download-component]: https://github.com/kubeflow/pipelines/blob/sdk/release-1.8/components/web/Download/component.yaml\n",
 | 
			
		||||
    "[python-function-components]: https://www.kubeflow.org/docs/components/pipelines/sdk/python-function-components/\n",
 | 
			
		||||
    "[input-path]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/kfp.components.html?highlight=inputpath#kfp.components.InputPath\n",
 | 
			
		||||
    "[output-path]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/kfp.components.html?highlight=outputpath#kfp.components.OutputPath"
 | 
			
		||||
    "[input-path]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/components.html?highlight=inputpath#kfp.components.InputPath\n",
 | 
			
		||||
    "[output-path]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/components.html?highlight=outputpath#kfp.components.OutputPath"
 | 
			
		||||
   ]
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
| 
						 | 
				
			
			@ -396,8 +396,8 @@
 | 
			
		|||
    "    in, the path to save the component specification to, and a list of PyPI\n",
 | 
			
		||||
    "    packages that need to be installed in the container at runtime.\n",
 | 
			
		||||
    "\n",
 | 
			
		||||
    "[create_component_from_func]: (https://kubeflow-pipelines.readthedocs.io/en/latest/source/kfp.components.html#kfp.components.create_component_from_func\n",
 | 
			
		||||
    "[container-op]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.dsl.html#kfp.dsl.ContainerOp"
 | 
			
		||||
    "[create_component_from_func]: (https://kubeflow-pipelines.readthedocs.io/en/latest/source/components.html#kfp.components.create_component_from_func\n",
 | 
			
		||||
    "[container-op]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/dsl.html#kfp.dsl.ContainerOp"
 | 
			
		||||
   ]
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
| 
						 | 
				
			
			@ -427,7 +427,7 @@
 | 
			
		|||
    "    to load the component specification YAML for any components that you are\n",
 | 
			
		||||
    "    reusing in this pipeline.\n",
 | 
			
		||||
    "\n",
 | 
			
		||||
    "[load_component_from_url]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/kfp.components.html?highlight=load_component_from_url#kfp.components.load_component_from_url"
 | 
			
		||||
    "[load_component_from_url]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/components.html?highlight=load_component_from_url#kfp.components.load_component_from_url"
 | 
			
		||||
   ]
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
| 
						 | 
				
			
			@ -529,7 +529,7 @@
 | 
			
		|||
    "\n",
 | 
			
		||||
    "1.  Create an instance of the [`kfp.Client` class][kfp-client] following steps in [connecting to Kubeflow Pipelines using the SDK client][connect-api].\n",
 | 
			
		||||
    "\n",
 | 
			
		||||
    "[kfp-client]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/kfp.client.html#kfp.Client\n",
 | 
			
		||||
    "[kfp-client]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/client.html#kfp.Client\n",
 | 
			
		||||
    "[connect-api]: https://www.kubeflow.org/docs/components/pipelines/sdk/connect-api"
 | 
			
		||||
   ]
 | 
			
		||||
  },
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -220,7 +220,7 @@ when designing a pipeline.
 | 
			
		|||
    public website. The function extracts the CSV files and then merges them
 | 
			
		||||
    into a single file.
 | 
			
		||||
 | 
			
		||||
[container-op]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.dsl.html#kfp.dsl.ContainerOp
 | 
			
		||||
[container-op]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/dsl.html#kfp.dsl.ContainerOp
 | 
			
		||||
[component-spec]: https://www.kubeflow.org/docs/components/pipelines/reference/component-spec/
 | 
			
		||||
[python-function-component]: https://www.kubeflow.org/docs/components/pipelines/sdk/python-function-components/
 | 
			
		||||
[component-dev]: https://www.kubeflow.org/docs/components/pipelines/sdk/component-development/
 | 
			
		||||
| 
						 | 
				
			
			@ -320,8 +320,8 @@ $ head merged_data.csv
 | 
			
		|||
 | 
			
		||||
[web-download-component]: https://github.com/kubeflow/pipelines/blob/sdk/release-1.8/components/web/Download/component.yaml
 | 
			
		||||
[python-function-components]: https://www.kubeflow.org/docs/components/pipelines/sdk/python-function-components/
 | 
			
		||||
[input-path]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.components.html?highlight=inputpath#kfp.components.InputPath
 | 
			
		||||
[output-path]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.components.html?highlight=outputpath#kfp.components.OutputPath
 | 
			
		||||
[input-path]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/components.html?highlight=inputpath#kfp.components.InputPath
 | 
			
		||||
[output-path]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/components.html?highlight=outputpath#kfp.components.OutputPath
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
```python
 | 
			
		||||
| 
						 | 
				
			
			@ -344,8 +344,8 @@ def merge_csv(file_path: comp.InputPath('Tarball'),
 | 
			
		|||
    in, the path to save the component specification to, and a list of PyPI
 | 
			
		||||
    packages that need to be installed in the container at runtime.
 | 
			
		||||
 | 
			
		||||
[create_component_from_func]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.components.html#kfp.components.create_component_from_func
 | 
			
		||||
[container-op]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.dsl.html#kfp.dsl.ContainerOp
 | 
			
		||||
[create_component_from_func]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/components.html#kfp.components.create_component_from_func
 | 
			
		||||
[container-op]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/dsl.html#kfp.dsl.ContainerOp
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
```python
 | 
			
		||||
| 
						 | 
				
			
			@ -362,7 +362,7 @@ create_step_merge_csv = kfp.components.create_component_from_func(
 | 
			
		|||
    to load the component specification YAML for any components that you are
 | 
			
		||||
    reusing in this pipeline.
 | 
			
		||||
 | 
			
		||||
[load_component_from_url]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.components.html?highlight=load_component_from_url#kfp.components.load_component_from_url
 | 
			
		||||
[load_component_from_url]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/components.html?highlight=load_component_from_url#kfp.components.load_component_from_url
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
```python
 | 
			
		||||
| 
						 | 
				
			
			@ -421,7 +421,7 @@ See the guide to [getting started with the UI][quickstart].
 | 
			
		|||
 | 
			
		||||
1.  Create an instance of the [`kfp.Client` class][kfp-client] following steps in [connecting to Kubeflow Pipelines using the SDK client][connect-api].
 | 
			
		||||
 | 
			
		||||
[kfp-client]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.client.html#kfp.Client
 | 
			
		||||
[kfp-client]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/client.html#kfp.Client
 | 
			
		||||
[connect-api]: https://www.kubeflow.org/docs/components/pipelines/sdk/connect-api
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -555,10 +555,10 @@ client = kfp.Client(host='<your-kubeflow-pipelines-host-name>')
 | 
			
		|||
client.create_run_from_pipeline_func(my_pipeline, arguments={})
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
[kfp-load-comp-file]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.components.html#kfp.components.load_component_from_file
 | 
			
		||||
[kfp-load-comp-url]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.components.html#kfp.components.load_component_from_url
 | 
			
		||||
[kfp-load-comp-text]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.components.html#kfp.components.load_component_from_text
 | 
			
		||||
[kfp-containerop]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.dsl.html#kfp.dsl.ContainerOp
 | 
			
		||||
[kfp-load-comp-file]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/components.html#kfp.components.load_component_from_file
 | 
			
		||||
[kfp-load-comp-url]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/components.html#kfp.components.load_component_from_url
 | 
			
		||||
[kfp-load-comp-text]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/components.html#kfp.components.load_component_from_text
 | 
			
		||||
[kfp-containerop]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/dsl.html#kfp.dsl.ContainerOp
 | 
			
		||||
 | 
			
		||||
## Organizing the component files
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -29,7 +29,7 @@ component, which writes the variable's value to the log.
 | 
			
		|||
[Learn more about lightweight Python components](/docs/components/pipelines/sdk/lightweight-python-components/)
 | 
			
		||||
 | 
			
		||||
To build a component, define a stand-alone Python function and then call 
 | 
			
		||||
[kfp.components.func_to_container_op(func)](https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.components.html#kfp.components.func_to_container_op) to convert the 
 | 
			
		||||
[kfp.components.func_to_container_op(func)](https://kubeflow-pipelines.readthedocs.io/en/stable/source/components.html#kfp.components.func_to_container_op) to convert the 
 | 
			
		||||
function to a component that can be used in a pipeline. The following function gets an 
 | 
			
		||||
environment variable and writes it to the log.
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -43,16 +43,16 @@ def logg_env_function():
 | 
			
		|||
```
 | 
			
		||||
 | 
			
		||||
Transform the function into a component using 
 | 
			
		||||
[kfp.components.func_to_container_op(func)](https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.components.html#kfp.components.func_to_container_op).  
 | 
			
		||||
[kfp.components.func_to_container_op(func)](https://kubeflow-pipelines.readthedocs.io/en/stable/source/components.html#kfp.components.func_to_container_op).  
 | 
			
		||||
```python
 | 
			
		||||
image_name = 'tensorflow/tensorflow:1.11.0-py3'
 | 
			
		||||
logg_env_function_op = comp.func_to_container_op(logg_env_function,
 | 
			
		||||
                                                 base_image=image_name)
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
Add this component to a pipeline. Use [add_env_variable](https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.dsl.html#kfp.dsl.ContainerOp.container) to pass an 
 | 
			
		||||
Add this component to a pipeline. Use [add_env_variable](https://kubeflow-pipelines.readthedocs.io/en/stable/source/dsl.html#kfp.dsl.ContainerOp.container) to pass an 
 | 
			
		||||
environment variable into the component. This code is the same no matter if your
 | 
			
		||||
using python lightweight components or a [container operation](https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.dsl.html#kfp.dsl.ContainerOp). 
 | 
			
		||||
using python lightweight components or a [container operation](https://kubeflow-pipelines.readthedocs.io/en/stable/source/dsl.html#kfp.dsl.ContainerOp). 
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
```python
 | 
			
		||||
| 
						 | 
				
			
			@ -70,7 +70,7 @@ def environment_pipeline():
 | 
			
		|||
```
 | 
			
		||||
 | 
			
		||||
To pass more environment variables into a component, add more instances of 
 | 
			
		||||
[add_env_variable()](https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.dsl.html#kfp.dsl.ContainerOp.container). Use the following command to run this pipeline using the 
 | 
			
		||||
[add_env_variable()](https://kubeflow-pipelines.readthedocs.io/en/stable/source/dsl.html#kfp.dsl.ContainerOp.container). Use the following command to run this pipeline using the 
 | 
			
		||||
Kubeflow Pipelines SDK.
 | 
			
		||||
 | 
			
		||||
```python
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -30,7 +30,7 @@ This feature allows users to perform some action (`get`, `create`, `apply`,
 | 
			
		|||
Users are able to set conditions that denote the success or failure of the
 | 
			
		||||
step undertaking that action.
 | 
			
		||||
 | 
			
		||||
[Link](https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.dsl.html#kfp.dsl.ResourceOp)
 | 
			
		||||
[Link](https://kubeflow-pipelines.readthedocs.io/en/stable/source/dsl.html#kfp.dsl.ResourceOp)
 | 
			
		||||
to the corresponding Python library.
 | 
			
		||||
 | 
			
		||||
#### Arguments
 | 
			
		||||
| 
						 | 
				
			
			@ -48,7 +48,7 @@ For more information, please refer to the aforementioned link to the library.
 | 
			
		|||
* `failure_condition`: Condition to denote failure of the step once it is true.
 | 
			
		||||
  (_optional_)
 | 
			
		||||
* `attribute_outputs`: Similar to `file_outputs` of
 | 
			
		||||
  [`kfp.dsl.ContainerOp`](https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.dsl.html#kfp.dsl.ContainerOp).
 | 
			
		||||
  [`kfp.dsl.ContainerOp`](https://kubeflow-pipelines.readthedocs.io/en/stable/source/dsl.html#kfp.dsl.ContainerOp).
 | 
			
		||||
  Maps output parameter names to JSON paths in the Kubernetes object.
 | 
			
		||||
  More on that in the following section.
 | 
			
		||||
  (_optional_)
 | 
			
		||||
| 
						 | 
				
			
			@ -88,7 +88,7 @@ Request the creation of PVC instances simple and fast.
 | 
			
		|||
 | 
			
		||||
A ResourceOp specialized in PVC creation.
 | 
			
		||||
 | 
			
		||||
[Link](https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.dsl.html#kfp.dsl.VolumeOp)
 | 
			
		||||
[Link](https://kubeflow-pipelines.readthedocs.io/en/stable/source/dsl.html#kfp.dsl.VolumeOp)
 | 
			
		||||
to the corresponding Python library.
 | 
			
		||||
 | 
			
		||||
#### Arguments
 | 
			
		||||
| 
						 | 
				
			
			@ -176,7 +176,7 @@ Those dependencies can then be parsed properly by a `ContainerOp`, when consumed
 | 
			
		|||
in `pvolumes` argument or `add_pvolumes()` method, to extend the dependencies
 | 
			
		||||
of that step.
 | 
			
		||||
 | 
			
		||||
[Link](https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.dsl.html#kfp.dsl.PipelineVolume)
 | 
			
		||||
[Link](https://kubeflow-pipelines.readthedocs.io/en/stable/source/dsl.html#kfp.dsl.PipelineVolume)
 | 
			
		||||
to the corresponding Python library.
 | 
			
		||||
 | 
			
		||||
_(*) Inherits from V1Volume class of Kubernetes Python client._
 | 
			
		||||
| 
						 | 
				
			
			@ -212,7 +212,7 @@ Request the creation of Volume Snapshot instances simple and fast.
 | 
			
		|||
 | 
			
		||||
A ResourceOp specialized in Volume Snapshot creation.
 | 
			
		||||
 | 
			
		||||
[Link](https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.dsl.html#kfp.dsl.VolumeSnapshotOp)
 | 
			
		||||
[Link](https://kubeflow-pipelines.readthedocs.io/en/stable/source/dsl.html#kfp.dsl.VolumeSnapshotOp)
 | 
			
		||||
to the corresponding Python library.
 | 
			
		||||
 | 
			
		||||
**NOTE:** You should check if your Kubernetes cluster admin has Volume Snapshots
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -6,7 +6,7 @@ weight = 70
 | 
			
		|||
+++
 | 
			
		||||
 | 
			
		||||
The [`kfp.dsl.PipelineParam` 
 | 
			
		||||
class](https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.dsl.html#kfp.dsl.PipelineParam)
 | 
			
		||||
class](https://kubeflow-pipelines.readthedocs.io/en/stable/source/dsl.html#kfp.dsl.PipelineParam)
 | 
			
		||||
represents a reference to future data that will be passed to the pipeline or produced by a task.
 | 
			
		||||
 | 
			
		||||
Your pipeline function should have parameters, so that they can later be configured in the Kubeflow Pipelines UI.
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -63,7 +63,7 @@
 | 
			
		|||
   "source": [
 | 
			
		||||
    "3. Create an instance of the [`kfp.Client` class][kfp-client] following steps in [connecting to Kubeflow Pipelines using the SDK client][connect-api].\n",
 | 
			
		||||
    "\n",
 | 
			
		||||
    "[kfp-client]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/kfp.client.html#kfp.Client\n",
 | 
			
		||||
    "[kfp-client]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/client.html#kfp.Client\n",
 | 
			
		||||
    "[connect-api]: https://www.kubeflow.org/docs/components/pipelines/sdk/connect-api"
 | 
			
		||||
   ]
 | 
			
		||||
  },
 | 
			
		||||
| 
						 | 
				
			
			@ -112,7 +112,7 @@
 | 
			
		|||
    "    factory function that you can use to create [`kfp.dsl.ContainerOp`][container-op] class instances for your pipeline.\n",
 | 
			
		||||
    "    The component specification YAML is a reusable and shareable definition of your component.\n",
 | 
			
		||||
    "\n",
 | 
			
		||||
    "[container-op]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.dsl.html#kfp.dsl.ContainerOp"
 | 
			
		||||
    "[container-op]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/dsl.html#kfp.dsl.ContainerOp"
 | 
			
		||||
   ]
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
| 
						 | 
				
			
			@ -346,7 +346,7 @@
 | 
			
		|||
    "including component metadata and metrics. \n",
 | 
			
		||||
    "\n",
 | 
			
		||||
    "[python37]: https://hub.docker.com/layers/python/library/python/3.7/images/sha256-7eef781ed825f3b95c99f03f4189a8e30e718726e8490651fa1b941c6c815ad1?context=explore\n",
 | 
			
		||||
    "[create-component-from-func]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/kfp.components.html#kfp.components.create_component_from_func\n",
 | 
			
		||||
    "[create-component-from-func]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/components.html#kfp.components.create_component_from_func\n",
 | 
			
		||||
    "[subprocess]: https://docs.python.org/3/library/subprocess.html\n",
 | 
			
		||||
    "[tf-docker]: https://www.tensorflow.org/install/docker\n",
 | 
			
		||||
    "[pytorch-docker]: https://hub.docker.com/r/pytorch/pytorch/tags\n",
 | 
			
		||||
| 
						 | 
				
			
			@ -355,8 +355,8 @@
 | 
			
		|||
    "[named-tuple]: https://docs.python.org/3/library/collections.html#collections.namedtuple\n",
 | 
			
		||||
    "[kfp-visualize]: https://www.kubeflow.org/docs/components/pipelines/sdk/output-viewer/\n",
 | 
			
		||||
    "[kfp-metrics]: https://www.kubeflow.org/docs/components/pipelines/sdk/pipelines-metrics/\n",
 | 
			
		||||
    "[input-path]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/kfp.components.html#kfp.components.InputPath\n",
 | 
			
		||||
    "[output-path]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/kfp.components.html#kfp.components.OutputPath"
 | 
			
		||||
    "[input-path]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/components.html#kfp.components.InputPath\n",
 | 
			
		||||
    "[output-path]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/components.html#kfp.components.OutputPath"
 | 
			
		||||
   ]
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
| 
						 | 
				
			
			@ -482,12 +482,12 @@
 | 
			
		|||
    "    that your function expects a parameter to be an\n",
 | 
			
		||||
    "    [`io.TextIOWrapper`][textiowrapper] that this function can write to.\n",
 | 
			
		||||
    "\n",
 | 
			
		||||
    "[input-binary]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/kfp.components.html#kfp.components.InputBinaryFile\n",
 | 
			
		||||
    "[input-path]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/kfp.components.html#kfp.components.InputPath\n",
 | 
			
		||||
    "[input-text]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/kfp.components.html#kfp.components.InputTextFile\n",
 | 
			
		||||
    "[output-binary]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/kfp.components.html#kfp.components.OutputBinaryFile\n",
 | 
			
		||||
    "[output-path]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/kfp.components.html#kfp.components.OutputPath\n",
 | 
			
		||||
    "[output-text]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/kfp.components.html#kfp.components.OutputTextFile\n",
 | 
			
		||||
    "[input-binary]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/components.html#kfp.components.InputBinaryFile\n",
 | 
			
		||||
    "[input-path]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/components.html#kfp.components.InputPath\n",
 | 
			
		||||
    "[input-text]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/components.html#kfp.components.InputTextFile\n",
 | 
			
		||||
    "[output-binary]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/components.html#kfp.components.OutputBinaryFile\n",
 | 
			
		||||
    "[output-path]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/components.html#kfp.components.OutputPath\n",
 | 
			
		||||
    "[output-text]: https://kubeflow-pipelines.readthedocs.io/en/latest/source/components.html#kfp.components.OutputTextFile\n",
 | 
			
		||||
    "[bytesio]: https://docs.python.org/3/library/io.html#io.BytesIO\n",
 | 
			
		||||
    "[textiowrapper]: https://docs.python.org/3/library/io.html#io.TextIOWrapper\n",
 | 
			
		||||
    "\n",
 | 
			
		||||
| 
						 | 
				
			
			@ -589,7 +589,7 @@
 | 
			
		|||
    "    [`kfp.dsl.ContainerOp`][container-op] class instances for your pipeline. This example also specifies the base container\n",
 | 
			
		||||
    "    image to run this function in.\n",
 | 
			
		||||
    "\n",
 | 
			
		||||
    "[container-op]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.dsl.html#kfp.dsl.ContainerOp"
 | 
			
		||||
    "[container-op]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/dsl.html#kfp.dsl.ContainerOp"
 | 
			
		||||
   ]
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -69,7 +69,7 @@ from kfp.components import create_component_from_func
 | 
			
		|||
 | 
			
		||||
3. Create an instance of the [`kfp.Client` class][kfp-client] following steps in [connecting to Kubeflow Pipelines using the SDK client][connect-api].
 | 
			
		||||
 | 
			
		||||
[kfp-client]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.client.html#kfp.Client
 | 
			
		||||
[kfp-client]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/client.html#kfp.Client
 | 
			
		||||
[connect-api]: https://www.kubeflow.org/docs/components/pipelines/sdk/connect-api
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -100,7 +100,7 @@ def add(a: float, b: float) -> float:
 | 
			
		|||
    factory function that you can use to create [`kfp.dsl.ContainerOp`][container-op] class instances for your pipeline.
 | 
			
		||||
    The component specification YAML is a reusable and shareable definition of your component.
 | 
			
		||||
 | 
			
		||||
[container-op]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.dsl.html#kfp.dsl.ContainerOp
 | 
			
		||||
[container-op]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/dsl.html#kfp.dsl.ContainerOp
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
```python
 | 
			
		||||
| 
						 | 
				
			
			@ -316,7 +316,7 @@ The following example demonstrates how to return multiple outputs by value,
 | 
			
		|||
including component metadata and metrics. 
 | 
			
		||||
 | 
			
		||||
[python37]: https://hub.docker.com/layers/python/library/python/3.7/images/sha256-7eef781ed825f3b95c99f03f4189a8e30e718726e8490651fa1b941c6c815ad1?context=explore
 | 
			
		||||
[create-component-from-func]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.components.html#kfp.components.create_component_from_func
 | 
			
		||||
[create-component-from-func]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/components.html#kfp.components.create_component_from_func
 | 
			
		||||
[subprocess]: https://docs.python.org/3/library/subprocess.html
 | 
			
		||||
[tf-docker]: https://www.tensorflow.org/install/docker
 | 
			
		||||
[pytorch-docker]: https://hub.docker.com/r/pytorch/pytorch/tags
 | 
			
		||||
| 
						 | 
				
			
			@ -325,8 +325,8 @@ including component metadata and metrics.
 | 
			
		|||
[named-tuple]: https://docs.python.org/3/library/collections.html#collections.namedtuple
 | 
			
		||||
[kfp-visualize]: https://www.kubeflow.org/docs/components/pipelines/sdk/output-viewer/
 | 
			
		||||
[kfp-metrics]: https://www.kubeflow.org/docs/components/pipelines/sdk/pipelines-metrics/
 | 
			
		||||
[input-path]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.components.html#kfp.components.InputPath
 | 
			
		||||
[output-path]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.components.html#kfp.components.OutputPath
 | 
			
		||||
[input-path]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/components.html#kfp.components.InputPath
 | 
			
		||||
[output-path]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/components.html#kfp.components.OutputPath
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
```python
 | 
			
		||||
| 
						 | 
				
			
			@ -434,12 +434,12 @@ To return a file as an output, use one of the following type annotations:
 | 
			
		|||
    that your function expects a parameter to be an
 | 
			
		||||
    [`io.TextIOWrapper`][textiowrapper] that this function can write to.
 | 
			
		||||
 | 
			
		||||
[input-binary]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.components.html#kfp.components.InputBinaryFile
 | 
			
		||||
[input-path]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.components.html#kfp.components.InputPath
 | 
			
		||||
[input-text]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.components.html#kfp.components.InputTextFile
 | 
			
		||||
[output-binary]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.components.html#kfp.components.OutputBinaryFile
 | 
			
		||||
[output-path]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.components.html#kfp.components.OutputPath
 | 
			
		||||
[output-text]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.components.html#kfp.components.OutputTextFile
 | 
			
		||||
[input-binary]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/components.html#kfp.components.InputBinaryFile
 | 
			
		||||
[input-path]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/components.html#kfp.components.InputPath
 | 
			
		||||
[input-text]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/components.html#kfp.components.InputTextFile
 | 
			
		||||
[output-binary]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/components.html#kfp.components.OutputBinaryFile
 | 
			
		||||
[output-path]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/components.html#kfp.components.OutputPath
 | 
			
		||||
[output-text]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/components.html#kfp.components.OutputTextFile
 | 
			
		||||
[bytesio]: https://docs.python.org/3/library/io.html#io.BytesIO
 | 
			
		||||
[textiowrapper]: https://docs.python.org/3/library/io.html#io.TextIOWrapper
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -523,7 +523,7 @@ my_divmod(100, 7)
 | 
			
		|||
    [`kfp.dsl.ContainerOp`][container-op] class instances for your pipeline. This example also specifies the base container
 | 
			
		||||
    image to run this function in.
 | 
			
		||||
 | 
			
		||||
[container-op]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.dsl.html#kfp.dsl.ContainerOp
 | 
			
		||||
[container-op]: https://kubeflow-pipelines.readthedocs.io/en/stable/source/dsl.html#kfp.dsl.ContainerOp
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
```python
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -8,7 +8,7 @@ weight = 10
 | 
			
		|||
{{% stable-status %}}
 | 
			
		||||
 | 
			
		||||
The [Kubeflow Pipelines 
 | 
			
		||||
SDK](https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.html)
 | 
			
		||||
SDK](https://kubeflow-pipelines.readthedocs.io/en/stable/source/html)
 | 
			
		||||
provides a set of Python packages that you can use to specify and run your 
 | 
			
		||||
machine learning (ML) workflows. A *pipeline* is a description of an ML 
 | 
			
		||||
workflow, including all of the *components* that make up the steps in the 
 | 
			
		||||
| 
						 | 
				
			
			@ -22,7 +22,7 @@ please follow the [Kubeflow Pipelines SDK for Tekton](/docs/components/pipelines
 | 
			
		|||
 | 
			
		||||
The Kubeflow Pipelines SDK includes the following packages:
 | 
			
		||||
 | 
			
		||||
* [`kfp.compiler`](https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.compiler.html)
 | 
			
		||||
* [`kfp.compiler`](https://kubeflow-pipelines.readthedocs.io/en/stable/source/compiler.html)
 | 
			
		||||
  includes classes and methods for compiling pipeline Python DSL into a workflow yaml spec
 | 
			
		||||
    Methods in this package include, but are not limited
 | 
			
		||||
  to, the following:
 | 
			
		||||
| 
						 | 
				
			
			@ -32,7 +32,7 @@ The Kubeflow Pipelines SDK includes the following packages:
 | 
			
		|||
    can process. The Kubeflow Pipelines service converts the static 
 | 
			
		||||
    configuration into a set of Kubernetes resources for execution.
 | 
			
		||||
 | 
			
		||||
* [`kfp.components`](https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.components.html)
 | 
			
		||||
* [`kfp.components`](https://kubeflow-pipelines.readthedocs.io/en/stable/source/components.html)
 | 
			
		||||
  includes classes and methods for interacting with pipeline components. 
 | 
			
		||||
  Methods in this package include, but are not limited to, the following:
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -40,24 +40,24 @@ The Kubeflow Pipelines SDK includes the following packages:
 | 
			
		|||
    pipeline component and returns a factory function.
 | 
			
		||||
    You can then call the factory function to construct an instance of a 
 | 
			
		||||
    pipeline task
 | 
			
		||||
    ([`ContainerOp`](https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.dsl.html#kfp.dsl.ContainerOp)) 
 | 
			
		||||
    ([`ContainerOp`](https://kubeflow-pipelines.readthedocs.io/en/stable/source/dsl.html#kfp.dsl.ContainerOp)) 
 | 
			
		||||
    that runs the original function in a container.
 | 
			
		||||
 | 
			
		||||
  * `kfp.components.load_component_from_file` loads a pipeline component from
 | 
			
		||||
    a file and returns a factory function.
 | 
			
		||||
    You can then call the factory function to construct an instance of a 
 | 
			
		||||
    pipeline task 
 | 
			
		||||
    ([`ContainerOp`](https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.dsl.html#kfp.dsl.ContainerOp)) 
 | 
			
		||||
    ([`ContainerOp`](https://kubeflow-pipelines.readthedocs.io/en/stable/source/dsl.html#kfp.dsl.ContainerOp)) 
 | 
			
		||||
    that runs the component container image.
 | 
			
		||||
 | 
			
		||||
  * `kfp.components.load_component_from_url` loads a pipeline component from
 | 
			
		||||
    a URL and returns a factory function.
 | 
			
		||||
    You can then call the factory function to construct an instance of a 
 | 
			
		||||
    pipeline task 
 | 
			
		||||
    ([`ContainerOp`](https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.dsl.html#kfp.dsl.ContainerOp)) 
 | 
			
		||||
    ([`ContainerOp`](https://kubeflow-pipelines.readthedocs.io/en/stable/source/dsl.html#kfp.dsl.ContainerOp)) 
 | 
			
		||||
    that runs the component container image.
 | 
			
		||||
 | 
			
		||||
* [`kfp.dsl`](https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.dsl.html)
 | 
			
		||||
* [`kfp.dsl`](https://kubeflow-pipelines.readthedocs.io/en/stable/source/dsl.html)
 | 
			
		||||
  contains the domain-specific language (DSL) that you can use to define and
 | 
			
		||||
  interact with pipelines and components. 
 | 
			
		||||
  Methods, classes, and modules in this package include, but are not limited to, 
 | 
			
		||||
| 
						 | 
				
			
			@ -68,45 +68,45 @@ The Kubeflow Pipelines SDK includes the following packages:
 | 
			
		|||
    [pipeline parameters](/docs/components/pipelines/sdk/parameters/).
 | 
			
		||||
  * `kfp.dsl.component` is a decorator for DSL functions that returns a
 | 
			
		||||
    pipeline component.
 | 
			
		||||
    ([`ContainerOp`](https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.dsl.html#kfp.dsl.ContainerOp)).
 | 
			
		||||
    ([`ContainerOp`](https://kubeflow-pipelines.readthedocs.io/en/stable/source/dsl.html#kfp.dsl.ContainerOp)).
 | 
			
		||||
  * `kfp.dsl.pipeline` is a decorator for Python functions that returns a
 | 
			
		||||
    pipeline.
 | 
			
		||||
  * `kfp.dsl.python_component` is a decorator for Python functions that adds
 | 
			
		||||
    pipeline component metadata to the function object.
 | 
			
		||||
  * [`kfp.dsl.types`](https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.dsl.types.html) 
 | 
			
		||||
  * [`kfp.dsl.types`](https://kubeflow-pipelines.readthedocs.io/en/stable/source/dsl.types.html) 
 | 
			
		||||
    contains a list of types defined by the Kubeflow Pipelines SDK. Types
 | 
			
		||||
    include basic types like `String`, `Integer`, `Float`, and `Bool`, as well
 | 
			
		||||
    as domain-specific types like `GCPProjectID` and `GCRPath`.
 | 
			
		||||
    See the guide to 
 | 
			
		||||
    [DSL static type checking](/docs/components/pipelines/sdk/static-type-checking).
 | 
			
		||||
  * [`kfp.dsl.ResourceOp`](https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.dsl.html#kfp.dsl.ResourceOp)
 | 
			
		||||
  * [`kfp.dsl.ResourceOp`](https://kubeflow-pipelines.readthedocs.io/en/stable/source/dsl.html#kfp.dsl.ResourceOp)
 | 
			
		||||
    represents a pipeline task (op) which lets you directly manipulate 
 | 
			
		||||
    Kubernetes resources (`create`, `get`, `apply`, ...).
 | 
			
		||||
  * [`kfp.dsl.VolumeOp`](https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.dsl.html#kfp.dsl.VolumeOp)
 | 
			
		||||
  * [`kfp.dsl.VolumeOp`](https://kubeflow-pipelines.readthedocs.io/en/stable/source/dsl.html#kfp.dsl.VolumeOp)
 | 
			
		||||
    represents a pipeline task (op) which creates a new `PersistentVolumeClaim` 
 | 
			
		||||
    (PVC). It aims to make the common case of creating a `PersistentVolumeClaim` 
 | 
			
		||||
    fast.
 | 
			
		||||
  * [`kfp.dsl.VolumeSnapshotOp`](https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.dsl.html#kfp.dsl.VolumeSnapshotOp)
 | 
			
		||||
  * [`kfp.dsl.VolumeSnapshotOp`](https://kubeflow-pipelines.readthedocs.io/en/stable/source/dsl.html#kfp.dsl.VolumeSnapshotOp)
 | 
			
		||||
    represents a pipeline task (op) which creates a new `VolumeSnapshot`. It 
 | 
			
		||||
    aims to make the common case of creating a `VolumeSnapshot` fast.
 | 
			
		||||
  * [`kfp.dsl.PipelineVolume`](https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.dsl.html#kfp.dsl.PipelineVolume)
 | 
			
		||||
  * [`kfp.dsl.PipelineVolume`](https://kubeflow-pipelines.readthedocs.io/en/stable/source/dsl.html#kfp.dsl.PipelineVolume)
 | 
			
		||||
    represents a volume used to pass data between pipeline steps. `ContainerOp`s 
 | 
			
		||||
    can mount a `PipelineVolume` either via the constructor's argument 
 | 
			
		||||
    `pvolumes` or `add_pvolumes()` method.
 | 
			
		||||
  * [`kfp.dsl.ParallelFor`](https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.dsl.html#kfp.dsl.ParallelFor)
 | 
			
		||||
  * [`kfp.dsl.ParallelFor`](https://kubeflow-pipelines.readthedocs.io/en/stable/source/dsl.html#kfp.dsl.ParallelFor)
 | 
			
		||||
    represents a parallel for loop over a static or dynamic set of items in a pipeline.
 | 
			
		||||
    Each iteration of the for loop is executed in parallel.
 | 
			
		||||
  
 | 
			
		||||
  * [`kfp.dsl.ExitHandler`](https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.dsl.html#kfp.dsl.ExitHandler)
 | 
			
		||||
  * [`kfp.dsl.ExitHandler`](https://kubeflow-pipelines.readthedocs.io/en/stable/source/dsl.html#kfp.dsl.ExitHandler)
 | 
			
		||||
    represents an exit handler that is invoked upon exiting a pipeline. A typical
 | 
			
		||||
    usage of `ExitHandler` is garbage collection.
 | 
			
		||||
  
 | 
			
		||||
  * [`kfp.dsl.Condition`](https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.dsl.html#kfp.dsl.Condition)
 | 
			
		||||
  * [`kfp.dsl.Condition`](https://kubeflow-pipelines.readthedocs.io/en/stable/source/dsl.html#kfp.dsl.Condition)
 | 
			
		||||
    represents a group of ops, that will only be executed when a certain condition is met.
 | 
			
		||||
    The condition specified need to be determined at runtime, by incorporating at least one task output, 
 | 
			
		||||
    or PipelineParam in the boolean expression.
 | 
			
		||||
 | 
			
		||||
* [`kfp.Client`](https://kubeflow-pipelines.readthedocs.io/en/stable/source/kfp.client.html)
 | 
			
		||||
* [`kfp.Client`](https://kubeflow-pipelines.readthedocs.io/en/stable/source/client.html)
 | 
			
		||||
  contains the Python client libraries for the [Kubeflow Pipelines 
 | 
			
		||||
  API](/docs/components/pipelines/reference/api/kubeflow-pipeline-api-spec/).
 | 
			
		||||
  Methods in this package include, but are not limited to, the following:
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue