h2di commited on
Commit
cd88447
·
verified ·
1 Parent(s): 935e699

Upload config.py with huggingface_hub

Browse files
Files changed (1) hide show
  1. config.py +39 -0
config.py ADDED
@@ -0,0 +1,39 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ from dataclasses import dataclass
2
+
3
+
4
+ @dataclass
5
+ class TrainingConfig:
6
+ """Configuration for training (as a dataclass)."""
7
+
8
+ # Model parameters
9
+ d_model: int = 512
10
+ n_heads: int = 8
11
+ n_encoder_layers: int = 6
12
+ n_decoder_layers: int = 6
13
+ vocab_in: int = 12 # digits 0-9 + padding token + start
14
+ vocab_out: int = 11 # digits 0-9 + padding token + start
15
+ block_size_in: int = 128 # max length of position n
16
+ block_size_out: int = 129 # context_length + 1 (inclusive)
17
+ pad_token: int = -1
18
+ start_token: int = 10
19
+
20
+ # Training parameters
21
+ batch_size: int = 64
22
+ learning_rate: float = 1e-4
23
+ weight_decay: float = 0.01
24
+ num_epochs: int = 100
25
+ gradient_clip: float = 1.0
26
+ warmup_steps: int = 1000
27
+
28
+ # Dataset parameters
29
+ context_length: int = 128
30
+ train_split: float = 0.9
31
+ num_workers: int = 4
32
+ device: str = "cpu"
33
+
34
+ # Logging and checkpointing
35
+ log_interval: int = 100
36
+ eval_interval: int = 1000
37
+ save_interval: int = 5000
38
+ checkpoint_dir: str = "checkpoints"
39
+ log_dir: str = "runs"