2024-04-27 05:14:31 发布
网友
是否可以覆盖Kedro笔记本中parameters.yaml文件中的属性
我试图在笔记本中动态更改参数值。我希望能够让用户能够运行一个标准的管道,但可定制的参数。我不想更改YAML文件,我只想更改笔记本寿命的参数
我已尝试在上下文中编辑参数,但这没有影响
context.params.update({"test_param": 2})
我是否遗漏了什么,或者这不是预期的用例
Kedro支持通过运行
kedro run params "key1:value1,key2:value2"
这解决了您的第二个用例
对于笔记本电脑用例,更新context.params没有任何效果,因为上下文不会在self上存储参数,而是在每次调用属性时从配置中提取参数
context.params
self
但是,在实例化上下文对象后,仍然可以向其添加额外参数:
extra_params = context._extra_params or {} extra_params.update({"test_param": 2}) context._extra_params = extra_params
这将更新应用于来自配置的常规参数之上的额外参数
Kedro支持通过运行
这解决了您的第二个用例
对于笔记本电脑用例,更新
context.params
没有任何效果,因为上下文不会在self
上存储参数,而是在每次调用属性时从配置中提取参数但是,在实例化上下文对象后,仍然可以向其添加额外参数:
这将更新应用于来自配置的常规参数之上的额外参数
相关问题 更多 >
编程相关推荐