如何使用专用于 GCP 的 TFX SDK 实现 Kubeflow "Run Paramters"?
How do I implement the Kubeflow "Run Paramters" with the TFX SDK specialized for GCP?
我目前正在使用 Kubeflow 作为我的编排器。编排器实际上是托管在 GCP 上的 AI 平台管道实例。如何使用 Tensorflow Extended SDK 创建 运行-time 参数?我怀疑这是我应该使用的 class,但是文档意义不大,也没有提供任何示例。 https://www.tensorflow.org/tfx/api_docs/python/tfx/orchestration/data_types/RuntimeParameter
类似于下图。
例如,您想要将模块文件位置添加为 运行时间参数,该参数将传递给 TFX 管道中的转换组件。
首先设置您的 setup_pipeline.py 并定义模块文件参数:
# setup_pipeline.py
from typing import Text
from tfx.orchestration import data_types, pipeline
from tfx.orchestration.kubeflow import kubeflow_dag_runner
from tfx.components import Transform
_module_file_param = data_types.RuntimeParameter(
name='module-file',
default=
'/tfx-src/tfx/examples/iris/iris_utils_native_keras.py',
ptype=Text,
)
接下来,定义一个函数来指定管道中使用的组件并传递参数。
def create_pipeline(..., module_file):
# setup components:
...
transform = Transform(
...
module_file=module_file
)
...
components = [..., transform, ...]
return pipeline.Pipeline(
...,
components=components
)
最后,设置 Kubeflow DAG 运行ner,以便它将参数传递给 create_pipeline
函数。有关更完整的示例,请参阅 here。
if __name__ == "__main__":
# instantiate a kfp_runner
...
kfp_runner = kubeflow_dag_runner.KubeflowDagRunner(
...
)
kfp_runner.run(
create_pipeline(..., module_file=_module_file_param
))
然后您可以 运行 python -m setup_pipeline
这将生成指定管道配置的 yaml 文件,然后您可以将其上传到 Kubeflow GCP 界面。
我目前正在使用 Kubeflow 作为我的编排器。编排器实际上是托管在 GCP 上的 AI 平台管道实例。如何使用 Tensorflow Extended SDK 创建 运行-time 参数?我怀疑这是我应该使用的 class,但是文档意义不大,也没有提供任何示例。 https://www.tensorflow.org/tfx/api_docs/python/tfx/orchestration/data_types/RuntimeParameter
类似于下图。
例如,您想要将模块文件位置添加为 运行时间参数,该参数将传递给 TFX 管道中的转换组件。
首先设置您的 setup_pipeline.py 并定义模块文件参数:
# setup_pipeline.py
from typing import Text
from tfx.orchestration import data_types, pipeline
from tfx.orchestration.kubeflow import kubeflow_dag_runner
from tfx.components import Transform
_module_file_param = data_types.RuntimeParameter(
name='module-file',
default=
'/tfx-src/tfx/examples/iris/iris_utils_native_keras.py',
ptype=Text,
)
接下来,定义一个函数来指定管道中使用的组件并传递参数。
def create_pipeline(..., module_file):
# setup components:
...
transform = Transform(
...
module_file=module_file
)
...
components = [..., transform, ...]
return pipeline.Pipeline(
...,
components=components
)
最后,设置 Kubeflow DAG 运行ner,以便它将参数传递给 create_pipeline
函数。有关更完整的示例,请参阅 here。
if __name__ == "__main__":
# instantiate a kfp_runner
...
kfp_runner = kubeflow_dag_runner.KubeflowDagRunner(
...
)
kfp_runner.run(
create_pipeline(..., module_file=_module_file_param
))
然后您可以 运行 python -m setup_pipeline
这将生成指定管道配置的 yaml 文件,然后您可以将其上传到 Kubeflow GCP 界面。