parameters
parameters
¶
Abstract base class for parameter collections with serialization helpers.
Parameters is the common superclass for every configuration group in
config/ (DataParameters, TrainingHyperparams, GenerateParameters,
etc.). It extends pydantic.BaseModel with:
- Recursive iteration over nested parameter groups.
- Name-based lookup across the full parameter tree (
get(),has()). - YAML / JSON round-trip serialization (
from_yaml(),to_yaml(),from_json()).
Classes:
| Name | Description |
|---|---|
Parameters |
Abstract base for parameter collections used throughout the config layer. |
Parameters
pydantic-model
¶
Bases: BaseModel
Abstract base for parameter collections used throughout the config layer.
Subclasses define typed fields (e.g. int, Literal["auto"] | float)
and inherit recursive iteration, name-based lookup, and YAML / JSON
serialization from this class.
Config:
default:pydantic_model_config
get(name, default=None)
¶
Look up a parameter or sub-group by name across the full tree.
Checks direct attributes first, then walks nested groups recursively.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
name
|
str
|
Field name to search for. |
required |
default
|
Any
|
Value returned when |
None
|
Returns:
| Type | Description |
|---|---|
DataT | Any | None
|
The parameter value or sub-group if found, otherwise |
Source code in src/nemo_safe_synthesizer/configurator/parameters.py
has(name)
¶
Check whether name exists anywhere in the parameter tree.
Unlike get(), this does not conflate falsy values (0, "",
False, None) with absence.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
name
|
str
|
Field name to search for. |
required |
Returns:
| Type | Description |
|---|---|
bool
|
|
Source code in src/nemo_safe_synthesizer/configurator/parameters.py
from_yaml_str(raw)
classmethod
¶
Construct an instance from a YAML-formatted string.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
raw
|
str
|
YAML content as a string. |
required |
Returns:
| Type | Description |
|---|---|
Self
|
A validated |
Source code in src/nemo_safe_synthesizer/configurator/parameters.py
from_json(path, overrides=None)
classmethod
¶
Load from a JSON file, optionally applying field overrides.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
path
|
PathT
|
Path to the JSON file. |
required |
overrides
|
dict | None
|
Field-level overrides applied via |
None
|
Returns:
| Type | Description |
|---|---|
Self
|
A validated |
Source code in src/nemo_safe_synthesizer/configurator/parameters.py
from_yaml(path, overrides=None)
classmethod
¶
Load from a YAML file, optionally applying field overrides.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
path
|
PathT
|
Path to the YAML file. |
required |
overrides
|
dict | None
|
Field-level overrides applied via |
None
|
Returns:
| Type | Description |
|---|---|
Self
|
A validated |
Raises:
| Type | Description |
|---|---|
FileNotFoundError
|
If |
Source code in src/nemo_safe_synthesizer/configurator/parameters.py
to_yaml(path, exclude_unset=True)
¶
Serialize this instance to a YAML file.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
path
|
PathT
|
Destination file path. |
required |
exclude_unset
|
bool
|
If |
True
|
Source code in src/nemo_safe_synthesizer/configurator/parameters.py
from_params(**kwargs)
classmethod
¶
Construct a Parameters instance from keyword arguments.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
**kwargs
|
Parameter values passed to |
{}
|
Returns:
| Type | Description |
|---|---|
Self
|
A validated |
Source code in src/nemo_safe_synthesizer/configurator/parameters.py
get_auto_params()
¶
Yield parameters whose current value is the "auto" sentinel.