def _handle_timeout_simulator()

in scripts/old_config_converter.py [0:0]


def _handle_timeout_simulator(trainer):
    if "timeout_simulator_config" not in trainer:
        return

    trainer["timeout_simulator"] = trainer["timeout_simulator_config"]
    del trainer["timeout_simulator_config"]
    timeout_simulator = trainer["timeout_simulator"]

    if "type" not in timeout_simulator:
        pass
    elif "never" == timeout_simulator["type"].lower():
        timeout_simulator["_base_"] = "base_never_timeout_simulator"
    elif "default" == timeout_simulator["type"].lower():
        timeout_simulator["_base_"] = "base_never_timeout_simulator"
    elif "gaussian" == timeout_simulator["type"].lower():
        timeout_simulator["_base_"] = "base_gaussian_timeout_simulator"
    timeout_simulator.pop("type", None)

    if "base_gaussian_timeout_simulator" == timeout_simulator.get("_base_", None):
        timeout_simulator["duration_distribution_generator"] = {}
        if "mean_per_example" in timeout_simulator:
            timeout_simulator["duration_distribution_generator"][
                "training_duration_mean"
            ] = timeout_simulator["mean_per_example"]
            del timeout_simulator["mean_per_example"]
        if "std_per_example" in timeout_simulator:
            timeout_simulator["duration_distribution_generator"][
                "training_duration_sd"
            ] = timeout_simulator["std_per_example"]
            del timeout_simulator["std_per_example"]
        if "min_duration_per_example" in timeout_simulator:
            timeout_simulator["duration_distribution_generator"][
                "training_duration_min"
            ] = timeout_simulator["min_duration_per_example"]
            del timeout_simulator["min_duration_per_example"]