作为 CI/CD 管道的一部分,我想自动部署或更新 Vertex AI 管道。但是,我不知道如何使用 gcloud CLI 工具创建 Vertex AI 管道。
使用 Python SDK 我有两个文件:一个文件定义并编译管道 (vertex_pipeline.py),另一个文件 (submit_to_vertex.py),其中编译的管道 (greet_pipeline.json) 用于创建或将管道提交给 Vertex AI。
这些文件如下所示:
# vertex_pipeline.py
from kfp import dsl
from kfp.compile import Compiler
@dsl.component(base_image=IMAGE)
def greet(name: str):
print(f"Hi {name=}. How are you today?")
@dsl.pipeline(name="greet_pipeline"):
def greet_pipeline(people_to_greet: str = "Tom"):
greet_task=greet(name=people_to_greet)
if __name__ == "__main__":
Compiler().compile(pipeline_func=greet_pipeline, package_path="greet_pipeline.json")
# submit_to_vertex.py
import google.cloud.aiplatform as aiplatform
PROJECT_ID=...
LOCATION=...
...
aiplatform.init(project=PROJECT_ID,location=LOCATION)
pipeline_=aiplatform.pipeline_jobs.PipelineJob(...)
pipeline_.submit(service_account=SERVICE_ACCOUNT)
gcloud 的第二个文件相当于什么?我已阅读 gcloud 的文档,但找不到任何相关内容。
截至今天(2024-09-19)gcloud 还没有此功能。
但是,您可以使用纯 API 来执行此类操作(请参阅使用 Pipelines REST API 的原始示例): https://github.com/GoogleCloudPlatform/vertex-ai-samples/blob/bb2c8c502d281f49fb5b5fa2a40fada0c8b66144/notebooks/official/pipelines/pipelines_intro_kfp.ipynb