我有一个主配置文件,比如说config.yaml
:
num_layers: 4
embedding_size: 512
learning_rate: 0.2
max_steps: 200000
我希望能够在命令行上用另一个文件(例如 say )覆盖它,big_model.yaml
我在概念上会使用如下:
python my_script.py --override big_model.yaml
可能big_model.yaml
看起来像:
num_layers: 8
embedding_size: 1024
我希望能够用任意数量的此类文件覆盖,每个文件都优先于最后一个。假设我也有fast_learn.yaml
learning_rate: 2.0
所以我想在概念上做一些类似的事情:
python my_script.py --override big_model.yaml --override fast_learn.yaml
在 hydra 中执行此操作的最简单/最标准的方法是什么?(或者可能在 omegaconf 中?)
(请注意,我希望这些覆盖文件理想情况下只是标准 yaml 文件,理想情况下覆盖早期的 yaml 文件;但如果我必须使用覆盖 DSL 来编写,我可以这样做,如果这是最简单/最好的/最标准的方式)