def log_config_info()

in utils/trigger_training.py [0:0]


def log_config_info(config_path: Path, config: dict):
    print(f"\nUsing config: {config_path}\n")

    experiment = config["experiment"]
    config_details: list[Tuple[str, Any]] = []
    config_details.append(("experiment.name", experiment["name"]))
    config_details.append(("experiment.src", experiment["src"]))
    config_details.append(("experiment.trg", experiment["trg"]))
    if config.get("start-stage"):
        config_details.append(("start-stage", config["start-stage"]))
    config_details.append(("target-stage", config["target-stage"]))

    previous_group_ids = config.get("previous_group_ids")
    if previous_group_ids:
        config_details.append(("previous_group_ids", previous_group_ids))

    pretrained_models: Optional[dict] = experiment.get("pretrained-models")
    if pretrained_models:
        for key, value in pretrained_models.items():
            config_details.append((key, json.dumps(value, indent=2)))

    key_len = 0
    for key, _ in config_details:
        key_len = max(key_len, len(key))

    for key, value in config_details:
        if "\n" in value:
            # Nicely indent any multiline value.
            padding = " " * (key_len + 6)
            lines = [padding + n for n in value.split("\n")]
            value = "\n".join(lines).strip()  # noqa: PLW2901

        print(f"{key.rjust(key_len + 4, ' ')}: {value}")