Spaces:
Sleeping
Sleeping
| """Typed dataclass containers mirroring the YAML configuration structure.""" | |
| from __future__ import annotations | |
| from dataclasses import dataclass | |
| __all__ = [ | |
| "ModelCfg", | |
| "DatasetCfg", | |
| "OptimCfg", | |
| "SchedCfg", | |
| "TokenizerCfg", | |
| "TrainerCfg", | |
| "RuntimeCfg", | |
| "GenerationCfg", | |
| "TrainAppCfg", | |
| "InferAppCfg", | |
| ] | |
| class ModelCfg: | |
| name: str | |
| best_checkpoint_path: str | |
| latest_checkpoint_path: str | |
| tokenizer: str | |
| d_model: int | |
| num_layers: int | |
| num_heads: int | |
| d_ff: int | |
| dropout_rate: float | |
| max_seq_len: int | |
| vocab_size: int | |
| pad_id: int | |
| bos_id: int | |
| eos_id: int | |
| layer_norm_style: str | None = None | |
| class DatasetCfg: | |
| name: str | |
| path: str | |
| class OptimCfg: | |
| name: str | |
| lr: float | |
| betas: tuple[float, float] | |
| weight_decay: float | |
| eps: float | |
| class SchedCfg: | |
| name: str | |
| warmup_ratio: float | |
| min_lr_ratio: float | |
| max_lr_ratio: float | |
| hold_min: bool | |
| class TokenizerCfg: | |
| name: str | |
| path: str | |
| corpus: str | |
| dataset: str | |
| vocab_size: int | |
| max_seq_len: int | |
| pad_token: str | |
| bos_token: str | |
| eos_token: str | |
| unk_token: str | |
| special_tokens: list[str] | |
| pad_id: int | |
| bos_id: int | |
| eos_id: int | |
| unk_id: int | |
| class TrainerCfg: | |
| epochs: int | |
| batch_size: int | |
| shuffle: bool | |
| precision: str | |
| gradient_accumulation: int | |
| clip_grad_norm: float | |
| eval_interval: int | |
| save_interval: int | |
| debug_interval: int | |
| mixed_precision: bool | |
| gradient_checkpointing: bool | |
| label_smoothing: float | |
| export_best_to_model_path: bool | |
| resume: str | |
| class RuntimeCfg: | |
| seed: int | |
| device: str | |
| output_dir: str | |
| data_dir: str | |
| cache_dir: str | |
| tokenizer_dir: str | |
| checkpoint_path: str | |
| class GenerationCfg: | |
| max_new_tokens: int | |
| temperature: float | |
| top_k: int | None # None disables top-k | |
| top_p: float | None | |
| do_sample: bool | |
| presence_penalty: float | |
| frequency_penalty: float | |
| no_repeat_ngram: int | None | |
| min_steps_before_eos: int | |
| class TrainAppCfg: | |
| model: ModelCfg | |
| dataset: DatasetCfg | |
| optim: OptimCfg | |
| sched: SchedCfg | |
| trainer: TrainerCfg | |
| runtime: RuntimeCfg | |
| tokenizer: TokenizerCfg | |
| class InferAppCfg: | |
| model: ModelCfg | |
| runtime: RuntimeCfg | |
| tokenizer: TokenizerCfg | |
| generation: GenerationCfg | |
| input_text: str | |