错误:在Python中使用Hydra框架时,键类型不兼容(NoneType)
我刚开始使用Hydra框架,打算通过扩展我的配置YAML文件,在命令行中覆盖配置。
下面是我的 config.yaml 配置文件:
params:
epochs: 1000
lr: 1e-4
split:
valid: 0.8
null: 0.2
我在我的 main() 函数上这样实现Hydra:
import hydra
from omegaconf import DictConfig, OmegaConf
@hydra.main(version_base=None, config_path="configs", config_name="config")
def main(cfg: DictConfig):
print(cfg)
...
if __name__ == "__main__":
main()
当我运行这个文件时,我会得到以下错误:
Incompatible key type 'NoneType'
full_key: params.split
object_type=dict
我到底漏掉了什么?
解决方案
问题在于Hydra无法处理最后一个键,其名称是 null。
只要把它改成另一个名字,问题就解决了:
params:
epochs: 1000
lr: 1e-4
split:
valid: 0.8
invalid: 0.2
站内所有文章版权归属LeftHeroAI导航站,无授权禁止任何主体转载、抄袭、复制内容,亦不得私自架设镜像站点。一经侵权,本站将通过法律途径追责。