In KFP v1, any value can be given for the type field of an input. This can be problematic during pipeline compile if parameters are passed to a pipeline. An InconsistentTypeException will be thrown if the type hint of a parameter does not match the type of the input defined in the component YAML.
For example, in the inputs for the Download Data example component, the values of string and URI are given as types for the inputs. While it is clear that these types should be strings, an InconsistentTypeException is thrown during compile for a pipeline with a parameter type-hinted as str in the Python DSL because KFP defines its string type as String with a capital S.
We should update all our example component resources to only use KFP base types so that these components continue to work 'out of the box' when support for pipeline parameters is available in Elyra (elyra-ai/elyra#3001).
In KFP v1, any value can be given for the
typefield of an input. This can be problematic during pipelinecompileif parameters are passed to a pipeline. AnInconsistentTypeExceptionwill be thrown if the type hint of a parameter does not match the type of the input defined in the component YAML.For example, in the inputs for the Download Data example component, the values of
stringandURIare given as types for the inputs. While it is clear that these types should be strings, anInconsistentTypeExceptionis thrown duringcompilefor a pipeline with a parameter type-hinted asstrin the Python DSL because KFP defines its string type asStringwith a capital S.We should update all our example component resources to only use KFP base types so that these components continue to work 'out of the box' when support for pipeline parameters is available in Elyra (elyra-ai/elyra#3001).