Hydra配置疑问:能否将二级兄弟文件设为默认配置?
Hydra二级兄弟配置作为默认配置的实现问题
你的写法不可行,原因是Hydra的配置路径解析逻辑和文件系统物理路径不同:它不支持../这类文件系统相对跳转写法,所有配置路径都是基于Hydra配置根目录的逻辑路径。
针对你的文件结构,假设dir_1是Hydra的配置根目录(即初始化Hydra时指定config_path="dir_1"),正确的写法应该是直接从配置根目录出发,用逻辑路径定位到目标配置文件:
修改conf.yaml的内容为:
defaults: - /dir_1_2/dir_1_2_1/dataset_paths_1@dataset_paths - _self_
或者省略开头的/(默认从配置根目录开始解析):
defaults: - dir_1_2/dir_1_2_1/dataset_paths_1@dataset_paths - _self_
这样就能把dataset_paths_1.yaml的配置内容挂载到conf.yaml的dataset_paths节点下,作为默认配置生效。
内容的提问来源于stack exchange,提问作者Ilan Geffen
相关产品推荐
相关产品推荐

