nat.plugins.config_optimizer.parameters.base#

ABC for parameter optimizers.

Classes#

BaseParameterOptimizer

Interface that all parameter optimization strategies must implement.

Module Contents#

class BaseParameterOptimizer#

Bases: abc.ABC

Interface that all parameter optimization strategies must implement.

Parameter optimizers run first in the optimization pipeline. They receive the original base_cfg and return a new config with the best numeric parameters applied. Implementations may also return a tuple (Config, dict, int) for (tuned_cfg, best_params, n_trials).

Unlike BasePromptOptimizer, this interface returns a Config (or tuple including it). The config is not mutated; a new instance is produced with suggested values applied.

abstractmethod run(
*,
base_cfg: nat.data_models.config.Config,
full_space: dict[str, nat.data_models.optimizable.SearchSpace],
optimizer_config: nat.data_models.optimizer.OptimizerConfig,
opt_run_config: nat.data_models.optimizer.OptimizerRunConfig,
) nat.data_models.config.Config#
Async:

Run parameter optimization and return the tuned config (or tuple).