-
Notifications
You must be signed in to change notification settings - Fork 1.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[components] google_cloud_pipeline_components JsonArray PipelineParam not resolved/serializable in component #7457
Comments
After further investigation, it seems kfp.v2 does not support PipelineParam json serialization (as implemented here for v1 #2212). Any plans on supporting this in v2? |
scratch that, I have no idea what is wrong here here is why I was thinking so:
|
This PR enables the user to pass different `bool`, `lists` and `dict` to a component. Kubeflow typically handles those arguments by serializing them as a string . For this reason, they need to be de-serialized again within the component in order for them to be properly handled. This might go away once we move to V2. References to the issue: kubeflow/pipelines#7457 kubeflow/pipelines#7719
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
This issue has been automatically closed because it has not had recent activity. Please comment "/reopen" to reopen it. |
Environment
Vertex AI on GCP
kfp = "^1.8.11"
google-cloud-pipeline-components = "^1.0.1"
Steps to reproduce
Gives this error:
Object of type PipelineParam is not JSON serializable
(but Lists are supposed to be serializable - #1945)inp.output does have
.to_struct()
, and if I use it ("--input-table", inp.output.to_struct()
) it goes through, although the serialization is passed to the component and not the resolved output value (these are the arguments to the component:)
JsonArray seems like an alias to List in the sdk code, which is why I think it might be a sdk issue, but it also might be the specific component that is not setup correctly, or me not understanding the serialization correctly. What do you think?
Expected result
args array is serialized and input_table has value "test" inside component
Materials and Reference
Impacted by this bug? Give it a 👍. We prioritise the issues with the most 👍.
The text was updated successfully, but these errors were encountered: