使用 KFP CLI
本节概述了 KFP CLI 中的可用命令。有关 KFP CLI 中所有可用命令的更全面文档,请参阅 命令行界面 位于 KFP SDK 参考文档中。
安装
安装 KFP SDK 时会安装 KFP CLI:pip install kfp
。
检查 KFP CLI 是否可用
要检查您的环境中是否安装了 KFP CLI,请运行以下命令
kfp --version
通用语法
KFP CLI 中的所有命令都使用以下通用语法
kfp [OPTIONS] COMMAND [ARGS]...
例如,要列出特定端点的所有运行,请运行以下命令
kfp --endpoint http://my_kfp_endpoint.com run list
获取命令帮助
要获取特定命令的帮助,请直接在命令行中使用参数 --help
。例如,要查看有关 kfp run
命令的指南,请键入以下命令
kfp run --help
KFP CLI 的主要功能
您可以使用 KFP CLI 执行以下操作
与 KFP 资源交互
大多数 KFP CLI 命令允许您从 KFP 后端创建、读取、更新或删除 KFP 资源。所有这些命令都使用以下通用语法
kfp <resource_name> <action>
<resource_name>
参数可以是以下之一
运行
重复运行
管道
实验
对于 <resource_name>
参数的所有值,<action>
参数可以是以下之一
创建
列出
获取
删除
某些资源名称具有额外的资源特定操作。下表列出了一些资源特定操作的示例
资源名称 | 额外的资源特定操作 |
---|---|
运行 |
|
重复运行 |
|
实验 |
|
管道 |
|
编译管道
您可以使用 kfp dsl compile
命令将 Python 文件中定义的管道或组件编译为 IR YAML。
要编译 Python 文件中定义的管道定义,请运行以下命令。
kfp dsl compile --py [PATH_TO_INPUT_PYTHON] --output [PATH_TO_OUTPUT_YAML] --function [PIPELINE_NAME]
例如
kfp dsl compile --py path/to/pipeline.py --output path/to/output.yaml
要从包含多个管道或组件定义的 Python 文件中编译单个管道或组件,请使用
--function
参数。例如
kfp dsl compile --py path/to/pipeline.py --output path/to/output.yaml --function my_pipeline
kfp dsl compile --py path/to/pipeline.py --output path/to/output.yaml --function my_component
要指定管道参数,请使用
--pipeline-parameters
参数并以 JSON 格式提供参数。kfp dsl compile [PATH_TO_INPUT_PYTHON] --output [PATH_TO_OUTPUT_YAML] --pipeline-parameters [PIPELINE_PARAMETERS_JSON]
例如
kfp dsl compile --py path/to/pipeline.py --output path/to/output.yaml --pipeline-parameters '{"param1": 2.0, "param2": "my_val"}'
构建容器化 Python 组件
您可以在 KFP SDK 中编写容器化 Python 组件。这使您能够处理更多源代码,代码组织优于更简单的轻量级 Python 组件编写体验。
准备工作
运行以下命令安装包含附加 Docker 依赖项的 KFP SDK
pip install kfp[all]
构建组件
要构建容器化 Python 组件,请在 KFP CLI 中使用以下便捷命令。使用此命令,您可以构建一个包含 COMPONENTS_DIRECTORY
中所有源代码的镜像。该命令使用目录中找到的组件作为组件运行时入口点。
kfp component build [OPTIONS] [COMPONENTS_DIRECTORY] [ARGS]...
例如
kfp component build src/ --component-filepattern my_component --push-image
有关 kfp component build
命令支持的参数和标志的更多信息,请参阅 构建 位于 KFP SDK API 参考中。有关创建容器化 Python 组件的更多信息,请参阅 编写 Python 容器化组件。