Coverage for src/lilbee/providers/model_defaults.py: 100%
11 statements
« prev ^ index » next coverage.py v7.15.2, created at 2026-08-14 11:46 +0000
« prev ^ index » next coverage.py v7.15.2, created at 2026-08-14 11:46 +0000
1"""Per-model default generation settings.
3A frozen snapshot of a model's default generation parameters, applied to config
4via ``cfg.apply_model_defaults`` and read back through ``cfg.model_defaults``
5(e.g. the reasoning layer's per-model ``max_reasoning_chars`` override).
6"""
8from __future__ import annotations
10from dataclasses import dataclass
13@dataclass(frozen=True)
14class ModelDefaults:
15 """Frozen snapshot of a model's default generation parameters."""
17 temperature: float | None = None
18 top_p: float | None = None
19 top_k: int | None = None
20 repeat_penalty: float | None = None
21 num_ctx: int | None = None
22 max_tokens: int | None = None
23 max_reasoning_chars: int | None = None