【发布时间】:2020-08-20 15:14:32
【问题描述】:
有没有办法使用字典而不是为 parameters.yml 使用 yaml 配置?我想将它保留为 Python 对象,因为我的 IDE 可以轻松跟踪依赖关系。对于我的参数,我在其中注入函数。
如果我需要使用 yml,我将不得不使用
def steps1(x, func1):
func1 = eval(func1)
这将很容易破坏重构功能。
【问题讨论】:
标签: kedro
有没有办法使用字典而不是为 parameters.yml 使用 yaml 配置?我想将它保留为 Python 对象,因为我的 IDE 可以轻松跟踪依赖关系。对于我的参数,我在其中注入函数。
如果我需要使用 yml,我将不得不使用
def steps1(x, func1):
func1 = eval(func1)
这将很容易破坏重构功能。
【问题讨论】:
标签: kedro
您可以覆盖 src.package_name.run.ProjectContext 中的 params 属性,以便它使用 Python 字典而不是配置加载器。也欢迎您编写您的自定义 ConfigLoader 并改用它(通过覆盖 _create_config_loader),但这可能需要更多的努力。
请记住,Kedro 中的参数意味着“尽可能地愚蠢”,因为它被认为是静态配置,最好从代码中分离出来。您用表达式描述的内容听起来更适合节点。
【讨论】: