Closed1

HydraとW&B連携時の注意点

bilzardbilzard

OmegaConfのオブジェクトはDictと互換性がない

omegaconf.dictconfig.DictConfigはdictの派生クラスでないのでW&Bのコンフィグと互換性がない。渡すときはdictに変換する必要がある。以下のようにすると、resolveした結果をdictで返す。

@hydra.main(config_path="configs/", config_name="defaults")
def run_experiment(cfg):
    wandb.config = omegaconf.OmegaConf.to_container(
        cfg, resolve=True, throw_on_missing=True
    )
    run = wandb.init(entity=cfg.wandb.entity, project=cfg.wandb.project)
    wandb.log({"loss": loss})
    model = Model(**wandb.config.model.configs)

Reference

https://wandb.ai/adrishd/hydra-example/reports/Configuring-W-B-Projects-with-Hydra--VmlldzoxNTA2MzQw

このスクラップは2023/11/15にクローズされました