我正在关注 pipelines tutorial ,创建所有需要的文件,使用 kedro run --node=preprocessing_data
启动 kedro 但遇到了这样的错误消息:
ValueError: Pipeline does not contain nodes named ['preprocessing_data'].
如果我在没有
node
参数的情况下运行 kedro,我会收到kedro.context.context.KedroContextError: Pipeline contains no nodes
文件内容:
src/project/pipelines/data_engineering/nodes.py
def preprocess_data(data: SparkDataSet) -> None:
print(data)
return
src/project/pipelines/data_engineering/pipeline.py
def create_pipeline(**kwargs):
return Pipeline(
[
node(
func=preprocess_data,
inputs="data",
outputs="preprocessed_data",
name="preprocessing_data",
),
]
)
src/project/pipeline.py
def create_pipelines(**kwargs) -> Dict[str, Pipeline]:
de_pipeline = de.create_pipeline()
return {
"de": de_pipeline,
"__default__": Pipeline([])
}
最佳答案
我认为您似乎需要在 __default__
中设置管道。
例如
def create_pipelines(**kwargs) -> Dict[str, Pipeline]:
de_pipeline = de.create_pipeline()
return {
"de": data_engineering_pipeline,
"__default__": data_engineering_pipeline
}
然后
kedro run --node=preprocessing_data
对我有用。关于python - 管道在kedro中找不到节点,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/60355240/