googleapis / googleapis/python-aiplatform

random sort of args in vertex pipeline proto/clone

未关闭
#1,930 10 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
api: vertex-ai type: feature request
主要语言
Python
星标
905
派生
465
平均合并
1 天 13 小时
30 天内合并 PR
44

描述

Hi,

given a pipeline with args (d,c,b,a), when you upload it using `PipelineJob.submit`, internally inside `self._gca_resource`, stores the args alphabetically (a,b,c,d)

For me, the alphabetical sort wouldn't be a major problem. But fact is that in vertex, the pipeline proto, and therefore the display of args when you clone the pipeline, has a seemingly random sort.

I tried to debug the random sort, but couldn't find where the pipeline proto is build.

Code to reproduce

```py
from google.cloud import aiplatform
from kfp.v2 import compiler

@component(base_image='python:3.9-slim',
install_kfp_package=True)
def test(a: str, b: str, c: str, d: str) -> str:
return a + b + c + d

@pipeline(
name='kfp-test-pipeline',
description='Pipeline test.',
pipeline_root='gs://bucket/test'
)
def pipeline(
d: str = 'd',
c: str = 'c',
b: str = 'b',
a: str = 'a',
):
test_ = test(a=a, b=b, c=c, d=d)

pipeline_filename = 'kfp_pipeline.json'
compiler.Compiler().compile(pipeline_func=pipeline,
package_path=pipeline_filename)
job = aiplatform.PipelineJob(
display_name='display_name',
# location=location,
template_path=pipeline_filename,
project='project',
pipeline_root='gs://bucket/test',
)

job.submit()
```

贡献指南

打开贡献指南

调研方向

使用提供的 Python 示例复现顺序差异,从 PipelineJob.submit 开始并检查 _gca_resource。跟踪编译后的 kfp_pipeline.json,直到 Vertex pipeline proto,并确定参数顺序在哪里发生变化;完成的标准是克隆的 pipeline 按声明顺序显示参数,而不是按看似随机的顺序显示。

由索引模型根据 Issue 内容生成。

评估

技术栈
google-cloud, python
领域
cloud, machine-learning
Issue 类型
缺陷
难度
4/5
预计耗时
3-5 天
活跃度
停滞
描述清晰度
需要澄清
新手友好度
35/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。