流水线参数
在流水线组件之间传递数据
旧版本
此页面是关于 Kubeflow 流水线 V1 的,请参阅V2 文档以获取最新信息。
请注意,虽然 V2 后端能够运行通过 V1 SDK 提交的流水线,我们强烈建议迁移到 V2 SDK。作为参考,V1 SDK 的最终版本是kfp==1.8.22
,其参考文档可在此处获取。
名为 kfp.dsl.PipelineParam
类 表示对未来数据的引用,这些数据将传递给流水线或由任务生成。
您的流水线函数应该有参数,以便稍后可以在 Kubeflow 流水线 UI 中进行配置。
调用您的流水线函数时,每个函数参数都将是一个 PipelineParam
对象。您可以将这些对象作为参数传递给组件以实例化它们并创建任务。PipelineParam
也可以表示在流水线任务之间传递的中间值。每个任务都有输出,您可以从 task.outputs[<output_name>]
字典中获取对它们的引用。任务输出引用可以再次作为参数传递给其他组件。
在大多数情况下,您不需要手动构造 PipelineParam
对象。
以下代码示例展示了如何定义带参数的流水线
@kfp.dsl.pipeline(
name='My pipeline',
description='My machine learning pipeline'
)
def my_pipeline(
my_num: int = 1000,
my_name: str = 'some text',
my_url: str = 'http://example.com'
):
...
# In the pipeline function body you can use the `my_num`, `my_name`,
# `my_url` arguments as PipelineParam objects.
有关更多信息,您可以参考关于构建组件和流水线的指南。
最后修改于 2024年7月6日: 更新 Kubeflow Pipelines Legacy V1 警告文本 (#3792) (833cc62)