from dataclasses import dataclass from pathlib import Path @dataclass class AberConfig: seq_len: int = 40 batch_size: int = 24 embed_dim: int = 96 hidden_dim: int = 160 num_layers: int = 2 dropout: float = 0.15 learning_rate: float = 2.5e-3 bootstrap_steps: int = 90 cpu_threads: int = 4 seed: int = 42 @property def root_dir(self) -> Path: return Path(__file__).resolve().parents[1] @property def checkpoint_path(self) -> Path: return self.root_dir / "artifacts" / "aber_checkpoint.pt"