nirs4all.pipeline.dagml.host_finetune module

Scoped host-optimizer proposals evaluated by native DAG, not a Python CV loop.

nirs4all.pipeline.dagml.host_finetune.attach_host_finetune_splitter(pipeline: list[Any]) → list[Any][source]

Carry the original split policy into fingerprinted host model metadata.

Called after public validation and naming, never accepts an injected private config key from user input. A frozen outer FoldSet is not reused on new rows: only its original splitter policy is cloned for an inner training scope.

nirs4all.pipeline.dagml.host_finetune.is_host_finetune(config: dict[str, Any]) → bool[source]

Choose the host optimizer before execution, never after native failure.

nirs4all.pipeline.dagml.host_finetune.run_scoped_finetune(model: Any, upstream: list[Any], x: ndarray | None, y: ndarray, config: dict[str, Any], *, scope: dict[str, Any], task_type: Any, y_transform: Any = None, inner_cv: dict[str, Any] | None = None, training_controls: dict[str, Any] | None = None, scoped_dataset: Any = None, source_index: int | None = None) → tuple[dict[str, Any], dict[str, Any]][source]

Tune raw rows from one outer-training scope; no external targets enter.

The optimizer owns sampling only. DAG owns the bounded ask/evaluate/tell loop, every candidate’s fold-train preprocessing, scores and selection. The outer caller subsequently fits its chosen estimator on its own train.

nirs4all.pipeline.dagml.host_finetune.scoped_inner_cv(config: dict[str, Any], resolver: Any, train_ids: list[str]) → dict[str, Any] | None[source]

Materialize the configured inner CV using only native outer-train rows.

nirs4all.pipeline.dagml.host_finetune.split_trial_fit_overrides(params: dict[str, Any]) → tuple[dict[str, Any], dict[str, Any]][source]

Separate sampled fit controls from model-constructor candidates.

nirs4all.pipeline.dagml.host_finetune.validate_host_finetune(config: dict[str, Any], *, internal: bool = False) → dict[str, Any][source]

Normalize the first restored host profile without ignoring controls.