Skip to main content
Version: 0.11

Compose API

Hydra 0.11.0 introduces a new experimental API for composing configuration via the hydra.experimental.compose() function. Prior to calling compose(), you have to initialize Hydra: This can be done by using the standard @hydra.main() or by calling hydra.experimental.initialize().

Here is an example Jupyter notebook utilizing this API.

hydra.experimental.compose() example#

from hydra.experimental import compose, initialize

if __name__ == "__main__":    initialize(        config_dir="conf", strict=True,    )
    cfg = compose("config.yaml", overrides=["db=mysql", "db.user=me"])    print(OmegaConf.to_yaml(cfg))

API Documentation#

def compose(config_file=None, overrides=[], strict=None):    """    :param config_file: optional config file to load    :param overrides: list of overrides for config file    :param strict: optionally override the default strict mode    :return: the composed config    """

def initialize(config_dir=None, strict=None, caller_stack_depth=1):    """    Initializes the Hydra sub system
    :param config_dir: config directory relative to the calling script    :param strict: Default value for strict mode    :param caller_stack_depth:    :return:    """