21 lines
556 B
Python
21 lines
556 B
Python
from omegaconf import OmegaConf
|
|
|
|
|
|
def load_config(*yaml_files, cli_args=None):
|
|
if cli_args is None:
|
|
cli_args = []
|
|
yaml_confs = [OmegaConf.load(f) for f in yaml_files]
|
|
cli_conf = OmegaConf.from_cli(cli_args)
|
|
conf = OmegaConf.merge(*yaml_confs, cli_conf)
|
|
OmegaConf.resolve(conf)
|
|
return conf
|
|
|
|
|
|
def config_to_primitive(config, resolve=True):
|
|
return OmegaConf.to_container(config, resolve=resolve)
|
|
|
|
|
|
def save_config(config, path):
|
|
with open(path, "w", encoding="utf-8") as fp:
|
|
OmegaConf.save(config=config, f=fp)
|