tracts.driver_utils.InferenceConfig#

class InferenceConfig(**data)#

Bases: BaseModel

Configuration for the inference process. This determines the list of parameters that can be processed from the driver file, together with their types and default values. Only parameters specified in this class will be processed and additional parameters in the driver file will raise an error. This is to ensure that the driver file is correctly specified and to provide clear error messages for missing or misspelled parameters. See online documentation for details on how to specify parameters in the driver file.

samples#

The configuration for the samples used in the inference.

Type:

SamplesConfig

models#

The configuration for the demographic and admixture models used in the inference.

Type:

ModelsConfig

start_params#

The configuration for the starting parameters used in the optimization.

Type:

StartParamsConfig

bounds#

Optional per-parameter admissibility bounds, narrowing the default bounds determined by each parameter’s type. Defaults to an empty ParamBoundsConfig() (no narrowing) if omitted from the driver file. See ParamBoundsConfig.

Type:

ParamBoundsConfig

optim#

The configuration for the optimization process used in the inference.

Type:

OptimizationConfig

output#

The configuration for the output of the inference process.

Type:

OutputConfig

bounds: ParamBoundsConfig#
model_config: ClassVar[ConfigDict] = {'extra': 'forbid'}#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

models: ModelsConfig#
optim: OptimizationConfig#
output: OutputConfig#