从装饰有 hydra.main() 的函数返回配置

Returning the config from the function decorated with hydra.main()

是否可以选择从@hydra.main装饰器下的函数获取配置对象作为字典?

我试过类似的东西,但是它 returns None

@hydra.main(config_path="conf", config_name="config")
def my_app(cfg) -> dict:
    print(cfg) # --> work, the cfg object exists inside the function scope
    return cfg
a = my_app()
print(a)

我知道我可以使用 API,但我不想使用它,因为它的功能有限(Tab 完成、Multirun 等)

没有。 @hydra.main() 不是有意 return 值。 (如果您多次使用 --multirun 和您的函数 returns,您期望 return 的值是多少?)

从您的 @hydra.main 函数中调用您的逻辑并将 cfg 对象传递给它。