Closed b4sus closed 3 months ago
Hi @b4sus, which Python version are you using? I think this might be a known incompatibility issue with Python 3.11, and we have a fix that should be available in the next SDK release.
Hey @chensun , I am indeed using 3.11. I've just tried 3.10 as base image, the behavior was the same - all errors. I don't see how this could relate with version - first 2 problems are yaml related:
Points 2. and 3. are failing in kfp-driver image, nothing to do with python imo.
Why do you think it is python version related?
Tested with beta.1, first 2 problems are gone. Remaining issue is the component input artifact not implemented yet
- so still unusable.
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.
I'm having the same problem component input artifact not implemented yet
with ParalellFor
while trying the advanced ML pipeline example from https://www.kubeflow.org/docs/components/pipelines/v2/installation/quickstart/
comp-for-loop-1:
dag:
tasks:
train-model:
cachingOptions:
enableCache: true
componentRef:
name: comp-train-model
inputs:
artifacts:
normalized_iris_dataset:
componentInputArtifact: pipelinechannel--normalize-dataset-normalized_iris_dataset
parameters:
n_neighbors:
componentInputParameter: pipelinechannel--neighbors-loop-item
taskInfo:
name: train-model
inputDefinitions:
artifacts:
pipelinechannel--normalize-dataset-normalized_iris_dataset:
artifactType:
schemaTitle: system.Dataset
schemaVersion: 0.0.1
parameters:
pipelinechannel--neighbors:
parameterType: LIST
pipelinechannel--neighbors-loop-item:
parameterType: NUMBER_INTEGER
I think the problem is the compiler creates a seperate pipline for a ParallelFor
loop and I have not seen any pipeline examples that receive Artifact
as Input
and pass it to component like these lines
inputs:
artifacts:
normalized_iris_dataset:
componentInputArtifact: pipelinechannel--normalize-dataset-normalized_iris_dataset
So I think if there are any working examples follow this pattern then we can temporarily fix by manually editing the pipeline YAML file.
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
Steps to reproduce
Simple pipeline defined like this:
When running the pipeline, getting the following error:
As a workaround, I can only compile the pipeline, change the
TasksGroupType.FOR-LOOP-2
toTasksGroupType-FOR-LOOP-2
in yaml and upload the pipeline. However when I run it, I get other error from kfp-driver:As a workaround, I can remove the parallelism - respectively the
iteratorPolicy
from compiled pipeline yaml (meaning all will run at once), upload and run again, the pipeline run successfully.However, my other pipeline, where the tasks in parallel context are getting the input not as parameters, but as an artifact, like this:
there is another error in kfp-driver:
Does that mean that for now tasks in parallel context cannot get artifacts from other tasks, only parameters? Is there a plan to fix this?
Expected result
Pipeline with ParallelFor should run out of the box, respecting parallelism parameter and tasks in parallel context should be able to accept artifacts.
Impacted by this bug? Give it a 👍.