root commited on
Commit
070e573
1 Parent(s): 74b95fc

add ckpt27

Browse files
This view is limited to 50 files because it contains too many changes.   See raw diff
Files changed (50) hide show
  1. .gitattributes +5 -0
  2. checkpoint-1000/config.json +30 -0
  3. checkpoint-1000/generation_config.json +6 -0
  4. checkpoint-1000/latest +1 -0
  5. checkpoint-1000/model.safetensors +3 -0
  6. checkpoint-1000/rng_state_0.pth +0 -0
  7. checkpoint-1000/rng_state_1.pth +0 -0
  8. checkpoint-1000/rng_state_2.pth +0 -0
  9. checkpoint-1000/rng_state_3.pth +0 -0
  10. checkpoint-1000/rng_state_4.pth +0 -0
  11. checkpoint-1000/rng_state_5.pth +0 -0
  12. checkpoint-1000/rng_state_6.pth +0 -0
  13. checkpoint-1000/rng_state_7.pth +0 -0
  14. checkpoint-1000/scheduler.pt +0 -0
  15. checkpoint-1000/special_tokens_map.json +24 -0
  16. checkpoint-1000/tokenizer.json +0 -0
  17. checkpoint-1000/tokenizer.model +0 -0
  18. checkpoint-1000/tokenizer_config.json +46 -0
  19. checkpoint-1000/trainer_state.json +733 -0
  20. checkpoint-1000/training_args.bin +3 -0
  21. checkpoint-1000/zero_to_fp32.py +604 -0
  22. checkpoint-27/config.json +30 -0
  23. checkpoint-27/generation_config.json +6 -0
  24. checkpoint-27/model.safetensors +3 -0
  25. checkpoint-27/special_tokens_map.json +24 -0
  26. checkpoint-27/tokenizer.json +0 -0
  27. checkpoint-27/tokenizer.model +3 -0
  28. checkpoint-27/tokenizer_config.json +43 -0
  29. checkpoint-4500/config.json +30 -0
  30. checkpoint-4500/eval-20241021102538-11_tasks.log +277 -0
  31. checkpoint-4500/generation_config.json +6 -0
  32. checkpoint-4500/latest +1 -0
  33. checkpoint-4500/model.safetensors +3 -0
  34. checkpoint-4500/rng_state_0.pth +0 -0
  35. checkpoint-4500/rng_state_1.pth +0 -0
  36. checkpoint-4500/rng_state_2.pth +0 -0
  37. checkpoint-4500/rng_state_3.pth +0 -0
  38. checkpoint-4500/rng_state_4.pth +0 -0
  39. checkpoint-4500/rng_state_5.pth +0 -0
  40. checkpoint-4500/rng_state_6.pth +0 -0
  41. checkpoint-4500/rng_state_7.pth +0 -0
  42. checkpoint-4500/scheduler.pt +0 -0
  43. checkpoint-4500/special_tokens_map.json +24 -0
  44. checkpoint-4500/tokenizer.json +0 -0
  45. checkpoint-4500/tokenizer.model +0 -0
  46. checkpoint-4500/tokenizer_config.json +46 -0
  47. checkpoint-4500/trainer_state.json +3215 -0
  48. checkpoint-4500/training_args.bin +3 -0
  49. checkpoint-4500/zero_to_fp32.py +604 -0
  50. checkpoint-579/config.json +30 -0
.gitattributes CHANGED
@@ -1,3 +1,4 @@
 
1
  *.7z filter=lfs diff=lfs merge=lfs -text
2
  *.arrow filter=lfs diff=lfs merge=lfs -text
3
  *.bin filter=lfs diff=lfs merge=lfs -text
@@ -33,3 +34,7 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
33
  *.zip filter=lfs diff=lfs merge=lfs -text
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
  *tfevents* filter=lfs diff=lfs merge=lfs -text
 
 
 
 
 
1
+ <<<<<<< HEAD
2
  *.7z filter=lfs diff=lfs merge=lfs -text
3
  *.arrow filter=lfs diff=lfs merge=lfs -text
4
  *.bin filter=lfs diff=lfs merge=lfs -text
 
34
  *.zip filter=lfs diff=lfs merge=lfs -text
35
  *.zst filter=lfs diff=lfs merge=lfs -text
36
  *tfevents* filter=lfs diff=lfs merge=lfs -text
37
+ =======
38
+ *.safetensors filter=lfs diff=lfs merge=lfs -text
39
+ *.bin filter=lfs diff=lfs merge=lfs -text
40
+ >>>>>>> 421f174 (Initial commit)
checkpoint-1000/config.json ADDED
@@ -0,0 +1,30 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "_name_or_path": "/mnt/ddn/yrm/model/MMfreeLM-370M",
3
+ "architectures": [
4
+ "HGRNBitForCausalLM"
5
+ ],
6
+ "attn_mode": "fused_recurrent",
7
+ "bos_token_id": 1,
8
+ "conv_size": 4,
9
+ "eos_token_id": 2,
10
+ "expand_ratio": 1,
11
+ "fuse_cross_entropy": true,
12
+ "hidden_act": "swish",
13
+ "hidden_ratio": 4,
14
+ "hidden_size": 1024,
15
+ "initializer_range": 0.02,
16
+ "intermediate_size": null,
17
+ "max_position_embeddings": 2048,
18
+ "model_type": "hgrn_bit",
19
+ "num_heads": 1,
20
+ "num_hidden_layers": 24,
21
+ "rms_norm_eps": 1e-06,
22
+ "share_conv_kernel": true,
23
+ "tie_word_embeddings": false,
24
+ "torch_dtype": "bfloat16",
25
+ "transformers_version": "4.45.2",
26
+ "use_cache": false,
27
+ "use_lower_bound": true,
28
+ "use_short_conv": false,
29
+ "vocab_size": 32000
30
+ }
checkpoint-1000/generation_config.json ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
 
1
+ {
2
+ "_from_model_config": true,
3
+ "bos_token_id": 1,
4
+ "eos_token_id": 2,
5
+ "transformers_version": "4.45.2"
6
+ }
checkpoint-1000/latest ADDED
@@ -0,0 +1 @@
 
 
1
+ global_step1000
checkpoint-1000/model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:4c61faaa032568d4957872d607d52905b4a706bb65c63c307c0c419a0781ec9d
3
+ size 748256328
checkpoint-1000/rng_state_0.pth ADDED
Binary file (15.9 kB). View file
 
checkpoint-1000/rng_state_1.pth ADDED
Binary file (15.9 kB). View file
 
checkpoint-1000/rng_state_2.pth ADDED
Binary file (15.9 kB). View file
 
checkpoint-1000/rng_state_3.pth ADDED
Binary file (15.9 kB). View file
 
checkpoint-1000/rng_state_4.pth ADDED
Binary file (15.9 kB). View file
 
checkpoint-1000/rng_state_5.pth ADDED
Binary file (15.9 kB). View file
 
checkpoint-1000/rng_state_6.pth ADDED
Binary file (15.9 kB). View file
 
checkpoint-1000/rng_state_7.pth ADDED
Binary file (15.9 kB). View file
 
checkpoint-1000/scheduler.pt ADDED
Binary file (1.06 kB). View file
 
checkpoint-1000/special_tokens_map.json ADDED
@@ -0,0 +1,24 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "bos_token": {
3
+ "content": "<s>",
4
+ "lstrip": false,
5
+ "normalized": false,
6
+ "rstrip": false,
7
+ "single_word": false
8
+ },
9
+ "eos_token": {
10
+ "content": "</s>",
11
+ "lstrip": false,
12
+ "normalized": false,
13
+ "rstrip": false,
14
+ "single_word": false
15
+ },
16
+ "pad_token": "</s>",
17
+ "unk_token": {
18
+ "content": "<unk>",
19
+ "lstrip": false,
20
+ "normalized": false,
21
+ "rstrip": false,
22
+ "single_word": false
23
+ }
24
+ }
checkpoint-1000/tokenizer.json ADDED
The diff for this file is too large to render. See raw diff
 
checkpoint-1000/tokenizer.model ADDED
Binary file (493 kB). View file
 
checkpoint-1000/tokenizer_config.json ADDED
@@ -0,0 +1,46 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "add_bos_token": true,
3
+ "add_eos_token": false,
4
+ "add_prefix_space": null,
5
+ "added_tokens_decoder": {
6
+ "0": {
7
+ "content": "<unk>",
8
+ "lstrip": false,
9
+ "normalized": false,
10
+ "rstrip": false,
11
+ "single_word": false,
12
+ "special": true
13
+ },
14
+ "1": {
15
+ "content": "<s>",
16
+ "lstrip": false,
17
+ "normalized": false,
18
+ "rstrip": false,
19
+ "single_word": false,
20
+ "special": true
21
+ },
22
+ "2": {
23
+ "content": "</s>",
24
+ "lstrip": false,
25
+ "normalized": false,
26
+ "rstrip": false,
27
+ "single_word": false,
28
+ "special": true
29
+ }
30
+ },
31
+ "additional_special_tokens": [],
32
+ "bos_token": "<s>",
33
+ "chat_template": "{% if messages[0]['role'] == 'system' %}{% set loop_messages = messages[1:] %}{% set system_message = messages[0]['content'] %}{% else %}{% set loop_messages = messages %}{% endif %}{% for message in loop_messages %}{% set content = message['content'] %}{% if loop.index0 == 0 and system_message is defined %}{% set content = '<<SYS>>\n' + system_message + '\n<</SYS>>\n\n' + message['content'] %}{% endif %}{% if message['role'] == 'user' %}{{ '<s>' + '[INST] ' + content + ' [/INST]' }}{% elif message['role'] == 'assistant' %}{{ content + '</s>' }}{% endif %}{% endfor %}",
34
+ "clean_up_tokenization_spaces": false,
35
+ "eos_token": "</s>",
36
+ "legacy": true,
37
+ "model_max_length": 1000000000000000019884624838656,
38
+ "pad_token": "</s>",
39
+ "padding_side": "right",
40
+ "sp_model_kwargs": {},
41
+ "spaces_between_special_tokens": false,
42
+ "split_special_tokens": false,
43
+ "tokenizer_class": "LlamaTokenizer",
44
+ "unk_token": "<unk>",
45
+ "use_default_system_prompt": false
46
+ }
checkpoint-1000/trainer_state.json ADDED
@@ -0,0 +1,733 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "best_metric": null,
3
+ "best_model_checkpoint": null,
4
+ "epoch": 2.5839793281653747,
5
+ "eval_steps": 5000,
6
+ "global_step": 1000,
7
+ "is_hyper_param_search": false,
8
+ "is_local_process_zero": true,
9
+ "is_world_process_zero": true,
10
+ "log_history": [
11
+ {
12
+ "epoch": 0.025839793281653745,
13
+ "grad_norm": 21431.55859375,
14
+ "learning_rate": 3.4188034188034193e-06,
15
+ "loss": 5737.0758,
16
+ "step": 10
17
+ },
18
+ {
19
+ "epoch": 0.05167958656330749,
20
+ "grad_norm": 21565.48046875,
21
+ "learning_rate": 6.837606837606839e-06,
22
+ "loss": 5749.3406,
23
+ "step": 20
24
+ },
25
+ {
26
+ "epoch": 0.07751937984496124,
27
+ "grad_norm": 17265.16796875,
28
+ "learning_rate": 1.0256410256410256e-05,
29
+ "loss": 5788.193,
30
+ "step": 30
31
+ },
32
+ {
33
+ "epoch": 0.10335917312661498,
34
+ "grad_norm": 16618.6875,
35
+ "learning_rate": 1.3675213675213677e-05,
36
+ "loss": 5726.6566,
37
+ "step": 40
38
+ },
39
+ {
40
+ "epoch": 0.12919896640826872,
41
+ "grad_norm": 18382.3359375,
42
+ "learning_rate": 1.7094017094017095e-05,
43
+ "loss": 5755.7125,
44
+ "step": 50
45
+ },
46
+ {
47
+ "epoch": 0.15503875968992248,
48
+ "grad_norm": 1329.3785400390625,
49
+ "learning_rate": 2.0512820512820512e-05,
50
+ "loss": 3448.4984,
51
+ "step": 60
52
+ },
53
+ {
54
+ "epoch": 0.18087855297157623,
55
+ "grad_norm": 982.5582885742188,
56
+ "learning_rate": 2.393162393162393e-05,
57
+ "loss": 793.4248,
58
+ "step": 70
59
+ },
60
+ {
61
+ "epoch": 0.20671834625322996,
62
+ "grad_norm": 441.6934814453125,
63
+ "learning_rate": 2.7350427350427355e-05,
64
+ "loss": 664.0245,
65
+ "step": 80
66
+ },
67
+ {
68
+ "epoch": 0.23255813953488372,
69
+ "grad_norm": 384.9512634277344,
70
+ "learning_rate": 3.0769230769230774e-05,
71
+ "loss": 590.2515,
72
+ "step": 90
73
+ },
74
+ {
75
+ "epoch": 0.25839793281653745,
76
+ "grad_norm": 1645.2818603515625,
77
+ "learning_rate": 3.418803418803419e-05,
78
+ "loss": 540.1542,
79
+ "step": 100
80
+ },
81
+ {
82
+ "epoch": 0.2842377260981912,
83
+ "grad_norm": 656.8567504882812,
84
+ "learning_rate": 3.760683760683761e-05,
85
+ "loss": 540.0785,
86
+ "step": 110
87
+ },
88
+ {
89
+ "epoch": 0.31007751937984496,
90
+ "grad_norm": 209.0157928466797,
91
+ "learning_rate": 3.999918503621906e-05,
92
+ "loss": 500.4066,
93
+ "step": 120
94
+ },
95
+ {
96
+ "epoch": 0.3359173126614987,
97
+ "grad_norm": 312.04351806640625,
98
+ "learning_rate": 3.9984698638788994e-05,
99
+ "loss": 476.6278,
100
+ "step": 130
101
+ },
102
+ {
103
+ "epoch": 0.36175710594315247,
104
+ "grad_norm": 111.13858795166016,
105
+ "learning_rate": 3.995211703336012e-05,
106
+ "loss": 457.4648,
107
+ "step": 140
108
+ },
109
+ {
110
+ "epoch": 0.3875968992248062,
111
+ "grad_norm": 198.55479431152344,
112
+ "learning_rate": 3.9901469721049156e-05,
113
+ "loss": 439.1863,
114
+ "step": 150
115
+ },
116
+ {
117
+ "epoch": 0.4134366925064599,
118
+ "grad_norm": 179.00514221191406,
119
+ "learning_rate": 3.983280256062371e-05,
120
+ "loss": 435.1474,
121
+ "step": 160
122
+ },
123
+ {
124
+ "epoch": 0.4392764857881137,
125
+ "grad_norm": 204.16162109375,
126
+ "learning_rate": 3.9746177726979355e-05,
127
+ "loss": 444.1413,
128
+ "step": 170
129
+ },
130
+ {
131
+ "epoch": 0.46511627906976744,
132
+ "grad_norm": 232.0103759765625,
133
+ "learning_rate": 3.964167365484312e-05,
134
+ "loss": 427.4143,
135
+ "step": 180
136
+ },
137
+ {
138
+ "epoch": 0.4909560723514212,
139
+ "grad_norm": 75.20649719238281,
140
+ "learning_rate": 3.951938496775456e-05,
141
+ "loss": 420.458,
142
+ "step": 190
143
+ },
144
+ {
145
+ "epoch": 0.5167958656330749,
146
+ "grad_norm": 270.50970458984375,
147
+ "learning_rate": 3.937942239238855e-05,
148
+ "loss": 406.7704,
149
+ "step": 200
150
+ },
151
+ {
152
+ "epoch": 0.5426356589147286,
153
+ "grad_norm": 146.1454315185547,
154
+ "learning_rate": 3.92219126582975e-05,
155
+ "loss": 407.9724,
156
+ "step": 210
157
+ },
158
+ {
159
+ "epoch": 0.5684754521963824,
160
+ "grad_norm": 205.81834411621094,
161
+ "learning_rate": 3.904699838316363e-05,
162
+ "loss": 416.5542,
163
+ "step": 220
164
+ },
165
+ {
166
+ "epoch": 0.5943152454780362,
167
+ "grad_norm": 120.94080352783203,
168
+ "learning_rate": 3.885483794366543e-05,
169
+ "loss": 415.2502,
170
+ "step": 230
171
+ },
172
+ {
173
+ "epoch": 0.6201550387596899,
174
+ "grad_norm": 108.84484100341797,
175
+ "learning_rate": 3.86456053320749e-05,
176
+ "loss": 401.6582,
177
+ "step": 240
178
+ },
179
+ {
180
+ "epoch": 0.6459948320413437,
181
+ "grad_norm": 240.042724609375,
182
+ "learning_rate": 3.841948999871579e-05,
183
+ "loss": 398.7828,
184
+ "step": 250
185
+ },
186
+ {
187
+ "epoch": 0.6718346253229974,
188
+ "grad_norm": 74.43096160888672,
189
+ "learning_rate": 3.817669668042516e-05,
190
+ "loss": 389.9398,
191
+ "step": 260
192
+ },
193
+ {
194
+ "epoch": 0.6976744186046512,
195
+ "grad_norm": 209.9810028076172,
196
+ "learning_rate": 3.7917445215173765e-05,
197
+ "loss": 389.4235,
198
+ "step": 270
199
+ },
200
+ {
201
+ "epoch": 0.7235142118863049,
202
+ "grad_norm": 109.08077239990234,
203
+ "learning_rate": 3.7641970343013115e-05,
204
+ "loss": 392.0608,
205
+ "step": 280
206
+ },
207
+ {
208
+ "epoch": 0.7493540051679587,
209
+ "grad_norm": 109.67909240722656,
210
+ "learning_rate": 3.7350521493529335e-05,
211
+ "loss": 390.3438,
212
+ "step": 290
213
+ },
214
+ {
215
+ "epoch": 0.7751937984496124,
216
+ "grad_norm": 248.89028930664062,
217
+ "learning_rate": 3.704336255999636e-05,
218
+ "loss": 387.3038,
219
+ "step": 300
220
+ },
221
+ {
222
+ "epoch": 0.8010335917312662,
223
+ "grad_norm": 119.14262390136719,
224
+ "learning_rate": 3.672077166043294e-05,
225
+ "loss": 377.6907,
226
+ "step": 310
227
+ },
228
+ {
229
+ "epoch": 0.8268733850129198,
230
+ "grad_norm": 142.8026123046875,
231
+ "learning_rate": 3.638304088577984e-05,
232
+ "loss": 385.1249,
233
+ "step": 320
234
+ },
235
+ {
236
+ "epoch": 0.8527131782945736,
237
+ "grad_norm": 173.82833862304688,
238
+ "learning_rate": 3.603047603542515e-05,
239
+ "loss": 375.1511,
240
+ "step": 330
241
+ },
242
+ {
243
+ "epoch": 0.8785529715762274,
244
+ "grad_norm": 164.8625946044922,
245
+ "learning_rate": 3.566339634031729e-05,
246
+ "loss": 375.9214,
247
+ "step": 340
248
+ },
249
+ {
250
+ "epoch": 0.9043927648578811,
251
+ "grad_norm": 117.82234191894531,
252
+ "learning_rate": 3.528213417391633e-05,
253
+ "loss": 377.7271,
254
+ "step": 350
255
+ },
256
+ {
257
+ "epoch": 0.9302325581395349,
258
+ "grad_norm": 41.274600982666016,
259
+ "learning_rate": 3.488703475124541e-05,
260
+ "loss": 368.712,
261
+ "step": 360
262
+ },
263
+ {
264
+ "epoch": 0.9560723514211886,
265
+ "grad_norm": 138.67919921875,
266
+ "learning_rate": 3.4478455816314724e-05,
267
+ "loss": 375.8104,
268
+ "step": 370
269
+ },
270
+ {
271
+ "epoch": 0.9819121447028424,
272
+ "grad_norm": 61.867340087890625,
273
+ "learning_rate": 3.405676731820106e-05,
274
+ "loss": 374.8659,
275
+ "step": 380
276
+ },
277
+ {
278
+ "epoch": 1.0077519379844961,
279
+ "grad_norm": 168.50962829589844,
280
+ "learning_rate": 3.362235107607629e-05,
281
+ "loss": 367.1276,
282
+ "step": 390
283
+ },
284
+ {
285
+ "epoch": 1.0335917312661498,
286
+ "grad_norm": 94.74224853515625,
287
+ "learning_rate": 3.317560043348795e-05,
288
+ "loss": 361.7362,
289
+ "step": 400
290
+ },
291
+ {
292
+ "epoch": 1.0594315245478036,
293
+ "grad_norm": 57.599578857421875,
294
+ "learning_rate": 3.2716919902205154e-05,
295
+ "loss": 360.4581,
296
+ "step": 410
297
+ },
298
+ {
299
+ "epoch": 1.0852713178294573,
300
+ "grad_norm": 127.81239318847656,
301
+ "learning_rate": 3.224672479595208e-05,
302
+ "loss": 358.2213,
303
+ "step": 420
304
+ },
305
+ {
306
+ "epoch": 1.1111111111111112,
307
+ "grad_norm": 262.8865661621094,
308
+ "learning_rate": 3.176544085436091e-05,
309
+ "loss": 360.1062,
310
+ "step": 430
311
+ },
312
+ {
313
+ "epoch": 1.1369509043927648,
314
+ "grad_norm": 247.9445343017578,
315
+ "learning_rate": 3.127350385748453e-05,
316
+ "loss": 367.3566,
317
+ "step": 440
318
+ },
319
+ {
320
+ "epoch": 1.1627906976744187,
321
+ "grad_norm": 204.389892578125,
322
+ "learning_rate": 3.077135923121809e-05,
323
+ "loss": 354.9228,
324
+ "step": 450
325
+ },
326
+ {
327
+ "epoch": 1.1886304909560723,
328
+ "grad_norm": 260.5009460449219,
329
+ "learning_rate": 3.0259461643986784e-05,
330
+ "loss": 356.919,
331
+ "step": 460
332
+ },
333
+ {
334
+ "epoch": 1.2144702842377262,
335
+ "grad_norm": 149.97607421875,
336
+ "learning_rate": 2.9738274595064845e-05,
337
+ "loss": 354.5676,
338
+ "step": 470
339
+ },
340
+ {
341
+ "epoch": 1.2403100775193798,
342
+ "grad_norm": 194.74737548828125,
343
+ "learning_rate": 2.9208269994898725e-05,
344
+ "loss": 353.6357,
345
+ "step": 480
346
+ },
347
+ {
348
+ "epoch": 1.2661498708010335,
349
+ "grad_norm": 200.73731994628906,
350
+ "learning_rate": 2.8669927737814244e-05,
351
+ "loss": 363.2115,
352
+ "step": 490
353
+ },
354
+ {
355
+ "epoch": 1.2919896640826873,
356
+ "grad_norm": 66.00718688964844,
357
+ "learning_rate": 2.8123735267494826e-05,
358
+ "loss": 350.5789,
359
+ "step": 500
360
+ },
361
+ {
362
+ "epoch": 1.3178294573643412,
363
+ "grad_norm": 136.6959991455078,
364
+ "learning_rate": 2.7570187135624063e-05,
365
+ "loss": 347.9595,
366
+ "step": 510
367
+ },
368
+ {
369
+ "epoch": 1.3436692506459949,
370
+ "grad_norm": 40.67978286743164,
371
+ "learning_rate": 2.7009784554092338e-05,
372
+ "loss": 351.9972,
373
+ "step": 520
374
+ },
375
+ {
376
+ "epoch": 1.3695090439276485,
377
+ "grad_norm": 34.59364318847656,
378
+ "learning_rate": 2.6443034941172962e-05,
379
+ "loss": 349.3325,
380
+ "step": 530
381
+ },
382
+ {
383
+ "epoch": 1.3953488372093024,
384
+ "grad_norm": 130.43624877929688,
385
+ "learning_rate": 2.5870451462078697e-05,
386
+ "loss": 345.4973,
387
+ "step": 540
388
+ },
389
+ {
390
+ "epoch": 1.421188630490956,
391
+ "grad_norm": 52.83992004394531,
392
+ "learning_rate": 2.529255256431472e-05,
393
+ "loss": 350.3788,
394
+ "step": 550
395
+ },
396
+ {
397
+ "epoch": 1.4470284237726099,
398
+ "grad_norm": 92.32342529296875,
399
+ "learning_rate": 2.4709861508248688e-05,
400
+ "loss": 350.4281,
401
+ "step": 560
402
+ },
403
+ {
404
+ "epoch": 1.4728682170542635,
405
+ "grad_norm": 56.88703536987305,
406
+ "learning_rate": 2.4122905893323006e-05,
407
+ "loss": 349.739,
408
+ "step": 570
409
+ },
410
+ {
411
+ "epoch": 1.4987080103359174,
412
+ "grad_norm": 73.592529296875,
413
+ "learning_rate": 2.3532217180338283e-05,
414
+ "loss": 355.5978,
415
+ "step": 580
416
+ },
417
+ {
418
+ "epoch": 1.524547803617571,
419
+ "grad_norm": 107.73036193847656,
420
+ "learning_rate": 2.2938330210240424e-05,
421
+ "loss": 338.8647,
422
+ "step": 590
423
+ },
424
+ {
425
+ "epoch": 1.550387596899225,
426
+ "grad_norm": 151.14724731445312,
427
+ "learning_rate": 2.2341782719847292e-05,
428
+ "loss": 339.6862,
429
+ "step": 600
430
+ },
431
+ {
432
+ "epoch": 1.5762273901808785,
433
+ "grad_norm": 109.76298522949219,
434
+ "learning_rate": 2.174311485495317e-05,
435
+ "loss": 351.1045,
436
+ "step": 610
437
+ },
438
+ {
439
+ "epoch": 1.6020671834625322,
440
+ "grad_norm": 75.17061614990234,
441
+ "learning_rate": 2.1142868681252072e-05,
442
+ "loss": 344.3581,
443
+ "step": 620
444
+ },
445
+ {
446
+ "epoch": 1.627906976744186,
447
+ "grad_norm": 43.415557861328125,
448
+ "learning_rate": 2.0541587693522694e-05,
449
+ "loss": 346.1661,
450
+ "step": 630
451
+ },
452
+ {
453
+ "epoch": 1.65374677002584,
454
+ "grad_norm": 95.63790893554688,
455
+ "learning_rate": 1.99398163235193e-05,
456
+ "loss": 340.8094,
457
+ "step": 640
458
+ },
459
+ {
460
+ "epoch": 1.6795865633074936,
461
+ "grad_norm": 173.1468048095703,
462
+ "learning_rate": 1.9338099447014348e-05,
463
+ "loss": 344.9255,
464
+ "step": 650
465
+ },
466
+ {
467
+ "epoch": 1.7054263565891472,
468
+ "grad_norm": 185.2141571044922,
469
+ "learning_rate": 1.8736981890438973e-05,
470
+ "loss": 345.9086,
471
+ "step": 660
472
+ },
473
+ {
474
+ "epoch": 1.731266149870801,
475
+ "grad_norm": 185.66473388671875,
476
+ "learning_rate": 1.8137007937568198e-05,
477
+ "loss": 342.1713,
478
+ "step": 670
479
+ },
480
+ {
481
+ "epoch": 1.757105943152455,
482
+ "grad_norm": 135.51266479492188,
483
+ "learning_rate": 1.7538720836697505e-05,
484
+ "loss": 336.7293,
485
+ "step": 680
486
+ },
487
+ {
488
+ "epoch": 1.7829457364341086,
489
+ "grad_norm": 74.66438293457031,
490
+ "learning_rate": 1.6942662308756942e-05,
491
+ "loss": 340.9484,
492
+ "step": 690
493
+ },
494
+ {
495
+ "epoch": 1.8087855297157622,
496
+ "grad_norm": 76.51793670654297,
497
+ "learning_rate": 1.6349372056808196e-05,
498
+ "loss": 332.7376,
499
+ "step": 700
500
+ },
501
+ {
502
+ "epoch": 1.8346253229974159,
503
+ "grad_norm": 88.05294799804688,
504
+ "learning_rate": 1.5759387277368817e-05,
505
+ "loss": 337.1342,
506
+ "step": 710
507
+ },
508
+ {
509
+ "epoch": 1.8604651162790697,
510
+ "grad_norm": 82.69217681884766,
511
+ "learning_rate": 1.517324217400589e-05,
512
+ "loss": 338.4325,
513
+ "step": 720
514
+ },
515
+ {
516
+ "epoch": 1.8863049095607236,
517
+ "grad_norm": 49.15666580200195,
518
+ "learning_rate": 1.4591467473639769e-05,
519
+ "loss": 333.9558,
520
+ "step": 730
521
+ },
522
+ {
523
+ "epoch": 1.9121447028423773,
524
+ "grad_norm": 100.37080383300781,
525
+ "learning_rate": 1.4014589945995718e-05,
526
+ "loss": 339.7346,
527
+ "step": 740
528
+ },
529
+ {
530
+ "epoch": 1.937984496124031,
531
+ "grad_norm": 64.05115509033203,
532
+ "learning_rate": 1.3443131926638637e-05,
533
+ "loss": 336.4353,
534
+ "step": 750
535
+ },
536
+ {
537
+ "epoch": 1.9638242894056848,
538
+ "grad_norm": 40.96150207519531,
539
+ "learning_rate": 1.287761084402265e-05,
540
+ "loss": 344.2413,
541
+ "step": 760
542
+ },
543
+ {
544
+ "epoch": 1.9896640826873386,
545
+ "grad_norm": 42.53565979003906,
546
+ "learning_rate": 1.2318538750983903e-05,
547
+ "loss": 326.7869,
548
+ "step": 770
549
+ },
550
+ {
551
+ "epoch": 2.0155038759689923,
552
+ "grad_norm": 33.191429138183594,
553
+ "learning_rate": 1.1766421861100734e-05,
554
+ "loss": 330.7202,
555
+ "step": 780
556
+ },
557
+ {
558
+ "epoch": 2.041343669250646,
559
+ "grad_norm": 25.623939514160156,
560
+ "learning_rate": 1.1221760090340987e-05,
561
+ "loss": 332.5341,
562
+ "step": 790
563
+ },
564
+ {
565
+ "epoch": 2.0671834625322996,
566
+ "grad_norm": 41.96136474609375,
567
+ "learning_rate": 1.068504660441154e-05,
568
+ "loss": 332.9494,
569
+ "step": 800
570
+ },
571
+ {
572
+ "epoch": 2.0930232558139537,
573
+ "grad_norm": 27.031042098999023,
574
+ "learning_rate": 1.0156767372219854e-05,
575
+ "loss": 325.7135,
576
+ "step": 810
577
+ },
578
+ {
579
+ "epoch": 2.1188630490956073,
580
+ "grad_norm": 58.57283401489258,
581
+ "learning_rate": 9.637400725851947e-06,
582
+ "loss": 331.5063,
583
+ "step": 820
584
+ },
585
+ {
586
+ "epoch": 2.144702842377261,
587
+ "grad_norm": 54.434139251708984,
588
+ "learning_rate": 9.127416927465047e-06,
589
+ "loss": 327.2943,
590
+ "step": 830
591
+ },
592
+ {
593
+ "epoch": 2.1705426356589146,
594
+ "grad_norm": 36.624176025390625,
595
+ "learning_rate": 8.627277743487296e-06,
596
+ "loss": 332.8677,
597
+ "step": 840
598
+ },
599
+ {
600
+ "epoch": 2.1963824289405687,
601
+ "grad_norm": 53.19684600830078,
602
+ "learning_rate": 8.137436026509862e-06,
603
+ "loss": 333.1244,
604
+ "step": 850
605
+ },
606
+ {
607
+ "epoch": 2.2222222222222223,
608
+ "grad_norm": 37.776268005371094,
609
+ "learning_rate": 7.65833530525017e-06,
610
+ "loss": 329.4649,
611
+ "step": 860
612
+ },
613
+ {
614
+ "epoch": 2.248062015503876,
615
+ "grad_norm": 26.57048797607422,
616
+ "learning_rate": 7.190409382957408e-06,
617
+ "loss": 336.0614,
618
+ "step": 870
619
+ },
620
+ {
621
+ "epoch": 2.2739018087855296,
622
+ "grad_norm": 57.234336853027344,
623
+ "learning_rate": 6.734081944624027e-06,
624
+ "loss": 328.4645,
625
+ "step": 880
626
+ },
627
+ {
628
+ "epoch": 2.2997416020671837,
629
+ "grad_norm": 56.26626205444336,
630
+ "learning_rate": 6.289766173358826e-06,
631
+ "loss": 324.8838,
632
+ "step": 890
633
+ },
634
+ {
635
+ "epoch": 2.3255813953488373,
636
+ "grad_norm": 48.253318786621094,
637
+ "learning_rate": 5.857864376269051e-06,
638
+ "loss": 327.6445,
639
+ "step": 900
640
+ },
641
+ {
642
+ "epoch": 2.351421188630491,
643
+ "grad_norm": 28.283784866333008,
644
+ "learning_rate": 5.438767620190108e-06,
645
+ "loss": 326.632,
646
+ "step": 910
647
+ },
648
+ {
649
+ "epoch": 2.3772609819121446,
650
+ "grad_norm": 41.68576431274414,
651
+ "learning_rate": 5.032855377592904e-06,
652
+ "loss": 325.8222,
653
+ "step": 920
654
+ },
655
+ {
656
+ "epoch": 2.4031007751937983,
657
+ "grad_norm": 22.881074905395508,
658
+ "learning_rate": 4.64049518298932e-06,
659
+ "loss": 324.5381,
660
+ "step": 930
661
+ },
662
+ {
663
+ "epoch": 2.4289405684754524,
664
+ "grad_norm": 26.17159652709961,
665
+ "learning_rate": 4.262042300146898e-06,
666
+ "loss": 330.8671,
667
+ "step": 940
668
+ },
669
+ {
670
+ "epoch": 2.454780361757106,
671
+ "grad_norm": 44.048988342285156,
672
+ "learning_rate": 3.897839400414187e-06,
673
+ "loss": 326.6512,
674
+ "step": 950
675
+ },
676
+ {
677
+ "epoch": 2.4806201550387597,
678
+ "grad_norm": 29.078561782836914,
679
+ "learning_rate": 3.548216252447867e-06,
680
+ "loss": 321.7997,
681
+ "step": 960
682
+ },
683
+ {
684
+ "epoch": 2.5064599483204133,
685
+ "grad_norm": 20.772472381591797,
686
+ "learning_rate": 3.21348942362272e-06,
687
+ "loss": 331.5863,
688
+ "step": 970
689
+ },
690
+ {
691
+ "epoch": 2.532299741602067,
692
+ "grad_norm": 20.700204849243164,
693
+ "learning_rate": 2.893961993394667e-06,
694
+ "loss": 326.034,
695
+ "step": 980
696
+ },
697
+ {
698
+ "epoch": 2.558139534883721,
699
+ "grad_norm": 52.08636474609375,
700
+ "learning_rate": 2.5899232788765604e-06,
701
+ "loss": 329.6624,
702
+ "step": 990
703
+ },
704
+ {
705
+ "epoch": 2.5839793281653747,
706
+ "grad_norm": 26.22823715209961,
707
+ "learning_rate": 2.3016485728750724e-06,
708
+ "loss": 324.0566,
709
+ "step": 1000
710
+ }
711
+ ],
712
+ "logging_steps": 10,
713
+ "max_steps": 1161,
714
+ "num_input_tokens_seen": 0,
715
+ "num_train_epochs": 3,
716
+ "save_steps": 1000,
717
+ "stateful_callbacks": {
718
+ "TrainerControl": {
719
+ "args": {
720
+ "should_epoch_stop": false,
721
+ "should_evaluate": false,
722
+ "should_log": false,
723
+ "should_save": true,
724
+ "should_training_stop": false
725
+ },
726
+ "attributes": {}
727
+ }
728
+ },
729
+ "total_flos": 5.2584857851448525e+17,
730
+ "train_batch_size": 16,
731
+ "trial_name": null,
732
+ "trial_params": null
733
+ }
checkpoint-1000/training_args.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:c9a1192bc455be45a1d733feace997991864076dc60e3ce9e8b39722b0631e4c
3
+ size 6648
checkpoint-1000/zero_to_fp32.py ADDED
@@ -0,0 +1,604 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #!/usr/bin/env python
2
+
3
+ # Copyright (c) Microsoft Corporation.
4
+ # SPDX-License-Identifier: Apache-2.0
5
+
6
+ # DeepSpeed Team
7
+
8
+ # This script extracts fp32 consolidated weights from a zero 1, 2 and 3 DeepSpeed checkpoints. It gets
9
+ # copied into the top level checkpoint dir, so the user can easily do the conversion at any point in
10
+ # the future. Once extracted, the weights don't require DeepSpeed and can be used in any
11
+ # application.
12
+ #
13
+ # example: python zero_to_fp32.py . pytorch_model.bin
14
+
15
+ import argparse
16
+ import torch
17
+ import glob
18
+ import math
19
+ import os
20
+ import re
21
+ from collections import OrderedDict
22
+ from dataclasses import dataclass
23
+
24
+ # while this script doesn't use deepspeed to recover data, since the checkpoints are pickled with
25
+ # DeepSpeed data structures it has to be available in the current python environment.
26
+ from deepspeed.utils import logger
27
+ from deepspeed.checkpoint.constants import (DS_VERSION, OPTIMIZER_STATE_DICT, SINGLE_PARTITION_OF_FP32_GROUPS,
28
+ FP32_FLAT_GROUPS, ZERO_STAGE, PARTITION_COUNT, PARAM_SHAPES, BUFFER_NAMES,
29
+ FROZEN_PARAM_SHAPES, FROZEN_PARAM_FRAGMENTS)
30
+
31
+
32
+ @dataclass
33
+ class zero_model_state:
34
+ buffers: dict()
35
+ param_shapes: dict()
36
+ shared_params: list
37
+ ds_version: int
38
+ frozen_param_shapes: dict()
39
+ frozen_param_fragments: dict()
40
+
41
+
42
+ debug = 0
43
+
44
+ # load to cpu
45
+ device = torch.device('cpu')
46
+
47
+
48
+ def atoi(text):
49
+ return int(text) if text.isdigit() else text
50
+
51
+
52
+ def natural_keys(text):
53
+ '''
54
+ alist.sort(key=natural_keys) sorts in human order
55
+ http://nedbatchelder.com/blog/200712/human_sorting.html
56
+ (See Toothy's implementation in the comments)
57
+ '''
58
+ return [atoi(c) for c in re.split(r'(\d+)', text)]
59
+
60
+
61
+ def get_model_state_file(checkpoint_dir, zero_stage):
62
+ if not os.path.isdir(checkpoint_dir):
63
+ raise FileNotFoundError(f"Directory '{checkpoint_dir}' doesn't exist")
64
+
65
+ # there should be only one file
66
+ if zero_stage <= 2:
67
+ file = os.path.join(checkpoint_dir, "mp_rank_00_model_states.pt")
68
+ elif zero_stage == 3:
69
+ file = os.path.join(checkpoint_dir, "zero_pp_rank_0_mp_rank_00_model_states.pt")
70
+
71
+ if not os.path.exists(file):
72
+ raise FileNotFoundError(f"can't find model states file at '{file}'")
73
+
74
+ return file
75
+
76
+
77
+ def get_checkpoint_files(checkpoint_dir, glob_pattern):
78
+ # XXX: need to test that this simple glob rule works for multi-node setup too
79
+ ckpt_files = sorted(glob.glob(os.path.join(checkpoint_dir, glob_pattern)), key=natural_keys)
80
+
81
+ if len(ckpt_files) == 0:
82
+ raise FileNotFoundError(f"can't find {glob_pattern} files in directory '{checkpoint_dir}'")
83
+
84
+ return ckpt_files
85
+
86
+
87
+ def get_optim_files(checkpoint_dir):
88
+ return get_checkpoint_files(checkpoint_dir, "*_optim_states.pt")
89
+
90
+
91
+ def get_model_state_files(checkpoint_dir):
92
+ return get_checkpoint_files(checkpoint_dir, "*_model_states.pt")
93
+
94
+
95
+ def parse_model_states(files):
96
+ zero_model_states = []
97
+ for file in files:
98
+ state_dict = torch.load(file, map_location=device)
99
+
100
+ if BUFFER_NAMES not in state_dict:
101
+ raise ValueError(f"{file} is not a model state checkpoint")
102
+ buffer_names = state_dict[BUFFER_NAMES]
103
+ if debug:
104
+ print("Found buffers:", buffer_names)
105
+
106
+ # recover just the buffers while restoring them to fp32 if they were saved in fp16
107
+ buffers = {k: v.float() for k, v in state_dict["module"].items() if k in buffer_names}
108
+ param_shapes = state_dict[PARAM_SHAPES]
109
+
110
+ # collect parameters that are included in param_shapes
111
+ param_names = []
112
+ for s in param_shapes:
113
+ for name in s.keys():
114
+ param_names.append(name)
115
+
116
+ # update with frozen parameters
117
+ frozen_param_shapes = state_dict.get(FROZEN_PARAM_SHAPES, None)
118
+ if frozen_param_shapes is not None:
119
+ if debug:
120
+ print(f"Found frozen_param_shapes: {frozen_param_shapes}")
121
+ param_names += list(frozen_param_shapes.keys())
122
+
123
+ # handle shared params
124
+ shared_params = [[k, v] for k, v in state_dict["shared_params"].items()]
125
+
126
+ ds_version = state_dict.get(DS_VERSION, None)
127
+
128
+ frozen_param_fragments = state_dict.get(FROZEN_PARAM_FRAGMENTS, None)
129
+
130
+ z_model_state = zero_model_state(buffers=buffers,
131
+ param_shapes=param_shapes,
132
+ shared_params=shared_params,
133
+ ds_version=ds_version,
134
+ frozen_param_shapes=frozen_param_shapes,
135
+ frozen_param_fragments=frozen_param_fragments)
136
+ zero_model_states.append(z_model_state)
137
+
138
+ return zero_model_states
139
+
140
+
141
+ def parse_optim_states(files, ds_checkpoint_dir):
142
+
143
+ total_files = len(files)
144
+ state_dicts = []
145
+ for f in files:
146
+ state_dict = torch.load(f, map_location=device)
147
+ # immediately discard the potentially huge 2 optimizer states as we only care for fp32 master weights
148
+ # and also handle the case where it was already removed by another helper script
149
+ state_dict["optimizer_state_dict"].pop("optimizer_state_dict", None)
150
+ state_dicts.append(state_dict)
151
+
152
+ if not ZERO_STAGE in state_dicts[0][OPTIMIZER_STATE_DICT]:
153
+ raise ValueError(f"{files[0]} is not a zero checkpoint")
154
+ zero_stage = state_dicts[0][OPTIMIZER_STATE_DICT][ZERO_STAGE]
155
+ world_size = state_dicts[0][OPTIMIZER_STATE_DICT][PARTITION_COUNT]
156
+
157
+ # For ZeRO-2 each param group can have different partition_count as data parallelism for expert
158
+ # parameters can be different from data parallelism for non-expert parameters. So we can just
159
+ # use the max of the partition_count to get the dp world_size.
160
+
161
+ if type(world_size) is list:
162
+ world_size = max(world_size)
163
+
164
+ if world_size != total_files:
165
+ raise ValueError(
166
+ f"Expected {world_size} of '*_optim_states.pt' under '{ds_checkpoint_dir}' but found {total_files} files. "
167
+ "Possibly due to an overwrite of an old checkpoint, or a checkpoint didn't get saved by one or more processes."
168
+ )
169
+
170
+ # the groups are named differently in each stage
171
+ if zero_stage <= 2:
172
+ fp32_groups_key = SINGLE_PARTITION_OF_FP32_GROUPS
173
+ elif zero_stage == 3:
174
+ fp32_groups_key = FP32_FLAT_GROUPS
175
+ else:
176
+ raise ValueError(f"unknown zero stage {zero_stage}")
177
+
178
+ if zero_stage <= 2:
179
+ fp32_flat_groups = [state_dicts[i][OPTIMIZER_STATE_DICT][fp32_groups_key] for i in range(len(state_dicts))]
180
+ elif zero_stage == 3:
181
+ # if there is more than one param group, there will be multiple flattened tensors - one
182
+ # flattened tensor per group - for simplicity merge them into a single tensor
183
+ #
184
+ # XXX: could make the script more memory efficient for when there are multiple groups - it
185
+ # will require matching the sub-lists of param_shapes for each param group flattened tensor
186
+
187
+ fp32_flat_groups = [
188
+ torch.cat(state_dicts[i][OPTIMIZER_STATE_DICT][fp32_groups_key], 0) for i in range(len(state_dicts))
189
+ ]
190
+
191
+ return zero_stage, world_size, fp32_flat_groups
192
+
193
+
194
+ def _get_fp32_state_dict_from_zero_checkpoint(ds_checkpoint_dir, exclude_frozen_parameters):
195
+ """
196
+ Returns fp32 state_dict reconstructed from ds checkpoint
197
+
198
+ Args:
199
+ - ``ds_checkpoint_dir``: path to the deepspeed checkpoint folder (where the optimizer files are)
200
+
201
+ """
202
+ print(f"Processing zero checkpoint '{ds_checkpoint_dir}'")
203
+
204
+ optim_files = get_optim_files(ds_checkpoint_dir)
205
+ zero_stage, world_size, fp32_flat_groups = parse_optim_states(optim_files, ds_checkpoint_dir)
206
+ print(f"Detected checkpoint of type zero stage {zero_stage}, world_size: {world_size}")
207
+
208
+ model_files = get_model_state_files(ds_checkpoint_dir)
209
+
210
+ zero_model_states = parse_model_states(model_files)
211
+ print(f'Parsing checkpoint created by deepspeed=={zero_model_states[0].ds_version}')
212
+
213
+ if zero_stage <= 2:
214
+ return _get_fp32_state_dict_from_zero2_checkpoint(world_size, fp32_flat_groups, zero_model_states,
215
+ exclude_frozen_parameters)
216
+ elif zero_stage == 3:
217
+ return _get_fp32_state_dict_from_zero3_checkpoint(world_size, fp32_flat_groups, zero_model_states,
218
+ exclude_frozen_parameters)
219
+
220
+
221
+ def _zero2_merge_frozen_params(state_dict, zero_model_states):
222
+ if zero_model_states[0].frozen_param_shapes is None or len(zero_model_states[0].frozen_param_shapes) == 0:
223
+ return
224
+
225
+ frozen_param_shapes = zero_model_states[0].frozen_param_shapes
226
+ frozen_param_fragments = zero_model_states[0].frozen_param_fragments
227
+
228
+ if debug:
229
+ num_elem = sum(s.numel() for s in frozen_param_shapes.values())
230
+ print(f'rank 0: {FROZEN_PARAM_SHAPES}.numel = {num_elem}')
231
+
232
+ wanted_params = len(frozen_param_shapes)
233
+ wanted_numel = sum(s.numel() for s in frozen_param_shapes.values())
234
+ avail_numel = sum([p.numel() for p in frozen_param_fragments.values()])
235
+ print(f'Frozen params: Have {avail_numel} numels to process.')
236
+ print(f'Frozen params: Need {wanted_numel} numels in {wanted_params} params')
237
+
238
+ total_params = 0
239
+ total_numel = 0
240
+ for name, shape in frozen_param_shapes.items():
241
+ total_params += 1
242
+ unpartitioned_numel = shape.numel()
243
+ total_numel += unpartitioned_numel
244
+
245
+ state_dict[name] = frozen_param_fragments[name]
246
+
247
+ if debug:
248
+ print(f"{name} full shape: {shape} unpartitioned numel {unpartitioned_numel} ")
249
+
250
+ print(f"Reconstructed Frozen fp32 state dict with {total_params} params {total_numel} elements")
251
+
252
+
253
+ def _has_callable(obj, fn):
254
+ attr = getattr(obj, fn, None)
255
+ return callable(attr)
256
+
257
+
258
+ def _zero2_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states):
259
+ param_shapes = zero_model_states[0].param_shapes
260
+
261
+ # Reconstruction protocol:
262
+ #
263
+ # XXX: document this
264
+
265
+ if debug:
266
+ for i in range(world_size):
267
+ for j in range(len(fp32_flat_groups[0])):
268
+ print(f"{FP32_FLAT_GROUPS}[{i}][{j}].shape={fp32_flat_groups[i][j].shape}")
269
+
270
+ # XXX: memory usage doubles here (zero2)
271
+ num_param_groups = len(fp32_flat_groups[0])
272
+ merged_single_partition_of_fp32_groups = []
273
+ for i in range(num_param_groups):
274
+ merged_partitions = [sd[i] for sd in fp32_flat_groups]
275
+ full_single_fp32_vector = torch.cat(merged_partitions, 0)
276
+ merged_single_partition_of_fp32_groups.append(full_single_fp32_vector)
277
+ avail_numel = sum(
278
+ [full_single_fp32_vector.numel() for full_single_fp32_vector in merged_single_partition_of_fp32_groups])
279
+
280
+ if debug:
281
+ wanted_params = sum([len(shapes) for shapes in param_shapes])
282
+ wanted_numel = sum([sum(shape.numel() for shape in shapes.values()) for shapes in param_shapes])
283
+ # not asserting if there is a mismatch due to possible padding
284
+ print(f"Have {avail_numel} numels to process.")
285
+ print(f"Need {wanted_numel} numels in {wanted_params} params.")
286
+
287
+ # params
288
+ # XXX: for huge models that can't fit into the host's RAM we will have to recode this to support
289
+ # out-of-core computing solution
290
+ total_numel = 0
291
+ total_params = 0
292
+ for shapes, full_single_fp32_vector in zip(param_shapes, merged_single_partition_of_fp32_groups):
293
+ offset = 0
294
+ avail_numel = full_single_fp32_vector.numel()
295
+ for name, shape in shapes.items():
296
+
297
+ unpartitioned_numel = shape.numel() if _has_callable(shape, 'numel') else math.prod(shape)
298
+ total_numel += unpartitioned_numel
299
+ total_params += 1
300
+
301
+ if debug:
302
+ print(f"{name} full shape: {shape} unpartitioned numel {unpartitioned_numel} ")
303
+ state_dict[name] = full_single_fp32_vector.narrow(0, offset, unpartitioned_numel).view(shape)
304
+ offset += unpartitioned_numel
305
+
306
+ # Z2 started to align to 2*world_size to improve nccl performance. Therefore both offset and
307
+ # avail_numel can differ by anywhere between 0..2*world_size. Due to two unrelated complex
308
+ # paddings performed in the code it's almost impossible to predict the exact numbers w/o the
309
+ # live optimizer object, so we are checking that the numbers are within the right range
310
+ align_to = 2 * world_size
311
+
312
+ def zero2_align(x):
313
+ return align_to * math.ceil(x / align_to)
314
+
315
+ if debug:
316
+ print(f"original offset={offset}, avail_numel={avail_numel}")
317
+
318
+ offset = zero2_align(offset)
319
+ avail_numel = zero2_align(avail_numel)
320
+
321
+ if debug:
322
+ print(f"aligned offset={offset}, avail_numel={avail_numel}")
323
+
324
+ # Sanity check
325
+ if offset != avail_numel:
326
+ raise ValueError(f"consumed {offset} numels out of {avail_numel} - something is wrong")
327
+
328
+ print(f"Reconstructed fp32 state dict with {total_params} params {total_numel} elements")
329
+
330
+
331
+ def _get_fp32_state_dict_from_zero2_checkpoint(world_size, fp32_flat_groups, zero_model_states,
332
+ exclude_frozen_parameters):
333
+ state_dict = OrderedDict()
334
+
335
+ # buffers
336
+ buffers = zero_model_states[0].buffers
337
+ state_dict.update(buffers)
338
+ if debug:
339
+ print(f"added {len(buffers)} buffers")
340
+
341
+ if not exclude_frozen_parameters:
342
+ _zero2_merge_frozen_params(state_dict, zero_model_states)
343
+
344
+ _zero2_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states)
345
+
346
+ # recover shared parameters
347
+ for pair in zero_model_states[0].shared_params:
348
+ if pair[1] in state_dict:
349
+ state_dict[pair[0]] = state_dict[pair[1]]
350
+
351
+ return state_dict
352
+
353
+
354
+ def zero3_partitioned_param_info(unpartitioned_numel, world_size):
355
+ remainder = unpartitioned_numel % world_size
356
+ padding_numel = (world_size - remainder) if remainder else 0
357
+ partitioned_numel = math.ceil(unpartitioned_numel / world_size)
358
+ return partitioned_numel, padding_numel
359
+
360
+
361
+ def _zero3_merge_frozen_params(state_dict, world_size, zero_model_states):
362
+ if zero_model_states[0].frozen_param_shapes is None or len(zero_model_states[0].frozen_param_shapes) == 0:
363
+ return
364
+
365
+ if debug:
366
+ for i in range(world_size):
367
+ num_elem = sum(s.numel() for s in zero_model_states[i].frozen_param_fragments.values())
368
+ print(f'rank {i}: {FROZEN_PARAM_SHAPES}.numel = {num_elem}')
369
+
370
+ frozen_param_shapes = zero_model_states[0].frozen_param_shapes
371
+ wanted_params = len(frozen_param_shapes)
372
+ wanted_numel = sum(s.numel() for s in frozen_param_shapes.values())
373
+ avail_numel = sum([p.numel() for p in zero_model_states[0].frozen_param_fragments.values()]) * world_size
374
+ print(f'Frozen params: Have {avail_numel} numels to process.')
375
+ print(f'Frozen params: Need {wanted_numel} numels in {wanted_params} params')
376
+
377
+ total_params = 0
378
+ total_numel = 0
379
+ for name, shape in zero_model_states[0].frozen_param_shapes.items():
380
+ total_params += 1
381
+ unpartitioned_numel = shape.numel()
382
+ total_numel += unpartitioned_numel
383
+
384
+ param_frags = tuple(model_state.frozen_param_fragments[name] for model_state in zero_model_states)
385
+ state_dict[name] = torch.cat(param_frags, 0).narrow(0, 0, unpartitioned_numel).view(shape)
386
+
387
+ partitioned_numel, partitioned_padding_numel = zero3_partitioned_param_info(unpartitioned_numel, world_size)
388
+
389
+ if debug:
390
+ print(
391
+ f"Frozen params: {total_params} {name} full shape: {shape} partition0 numel={partitioned_numel} partitioned_padding_numel={partitioned_padding_numel}"
392
+ )
393
+
394
+ print(f"Reconstructed Frozen fp32 state dict with {total_params} params {total_numel} elements")
395
+
396
+
397
+ def _zero3_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states):
398
+ param_shapes = zero_model_states[0].param_shapes
399
+ avail_numel = fp32_flat_groups[0].numel() * world_size
400
+ # Reconstruction protocol: For zero3 we need to zip the partitions together at boundary of each
401
+ # param, re-consolidating each param, while dealing with padding if any
402
+
403
+ # merge list of dicts, preserving order
404
+ param_shapes = {k: v for d in param_shapes for k, v in d.items()}
405
+
406
+ if debug:
407
+ for i in range(world_size):
408
+ print(f"{FP32_FLAT_GROUPS}[{i}].shape={fp32_flat_groups[i].shape}")
409
+
410
+ wanted_params = len(param_shapes)
411
+ wanted_numel = sum(shape.numel() for shape in param_shapes.values())
412
+ # not asserting if there is a mismatch due to possible padding
413
+ avail_numel = fp32_flat_groups[0].numel() * world_size
414
+ print(f"Trainable params: Have {avail_numel} numels to process.")
415
+ print(f"Trainable params: Need {wanted_numel} numels in {wanted_params} params.")
416
+
417
+ # params
418
+ # XXX: for huge models that can't fit into the host's RAM we will have to recode this to support
419
+ # out-of-core computing solution
420
+ offset = 0
421
+ total_numel = 0
422
+ total_params = 0
423
+ for name, shape in param_shapes.items():
424
+
425
+ unpartitioned_numel = shape.numel()
426
+ total_numel += unpartitioned_numel
427
+ total_params += 1
428
+
429
+ partitioned_numel, partitioned_padding_numel = zero3_partitioned_param_info(unpartitioned_numel, world_size)
430
+
431
+ if debug:
432
+ print(
433
+ f"Trainable params: {total_params} {name} full shape: {shape} partition0 numel={partitioned_numel} partitioned_padding_numel={partitioned_padding_numel}"
434
+ )
435
+
436
+ # XXX: memory usage doubles here
437
+ state_dict[name] = torch.cat(
438
+ tuple(fp32_flat_groups[i].narrow(0, offset, partitioned_numel) for i in range(world_size)),
439
+ 0).narrow(0, 0, unpartitioned_numel).view(shape)
440
+ offset += partitioned_numel
441
+
442
+ offset *= world_size
443
+
444
+ # Sanity check
445
+ if offset != avail_numel:
446
+ raise ValueError(f"consumed {offset} numels out of {avail_numel} - something is wrong")
447
+
448
+ print(f"Reconstructed Trainable fp32 state dict with {total_params} params {total_numel} elements")
449
+
450
+
451
+ def _get_fp32_state_dict_from_zero3_checkpoint(world_size, fp32_flat_groups, zero_model_states,
452
+ exclude_frozen_parameters):
453
+ state_dict = OrderedDict()
454
+
455
+ # buffers
456
+ buffers = zero_model_states[0].buffers
457
+ state_dict.update(buffers)
458
+ if debug:
459
+ print(f"added {len(buffers)} buffers")
460
+
461
+ if not exclude_frozen_parameters:
462
+ _zero3_merge_frozen_params(state_dict, world_size, zero_model_states)
463
+
464
+ _zero3_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states)
465
+
466
+ # recover shared parameters
467
+ for pair in zero_model_states[0].shared_params:
468
+ if pair[1] in state_dict:
469
+ state_dict[pair[0]] = state_dict[pair[1]]
470
+
471
+ return state_dict
472
+
473
+
474
+ def get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir, tag=None, exclude_frozen_parameters=False):
475
+ """
476
+ Convert ZeRO 2 or 3 checkpoint into a single fp32 consolidated state_dict that can be loaded with
477
+ ``load_state_dict()`` and used for training without DeepSpeed or shared with others, for example
478
+ via a model hub.
479
+
480
+ Args:
481
+ - ``checkpoint_dir``: path to the desired checkpoint folder
482
+ - ``tag``: checkpoint tag used as a unique identifier for checkpoint. If not provided will attempt to load tag in 'latest' file. e.g., ``global_step14``
483
+ - ``exclude_frozen_parameters``: exclude frozen parameters
484
+
485
+ Returns:
486
+ - pytorch ``state_dict``
487
+
488
+ Note: this approach may not work if your application doesn't have sufficient free CPU memory and
489
+ you may need to use the offline approach using the ``zero_to_fp32.py`` script that is saved with
490
+ the checkpoint.
491
+
492
+ A typical usage might be ::
493
+
494
+ from deepspeed.utils.zero_to_fp32 import get_fp32_state_dict_from_zero_checkpoint
495
+ # do the training and checkpoint saving
496
+ state_dict = get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir) # already on cpu
497
+ model = model.cpu() # move to cpu
498
+ model.load_state_dict(state_dict)
499
+ # submit to model hub or save the model to share with others
500
+
501
+ In this example the ``model`` will no longer be usable in the deepspeed context of the same
502
+ application. i.e. you will need to re-initialize the deepspeed engine, since
503
+ ``model.load_state_dict(state_dict)`` will remove all the deepspeed magic from it.
504
+
505
+ If you want it all done for you, use ``load_state_dict_from_zero_checkpoint`` instead.
506
+
507
+ """
508
+ if tag is None:
509
+ latest_path = os.path.join(checkpoint_dir, 'latest')
510
+ if os.path.isfile(latest_path):
511
+ with open(latest_path, 'r') as fd:
512
+ tag = fd.read().strip()
513
+ else:
514
+ raise ValueError(f"Unable to find 'latest' file at {latest_path}")
515
+
516
+ ds_checkpoint_dir = os.path.join(checkpoint_dir, tag)
517
+
518
+ if not os.path.isdir(ds_checkpoint_dir):
519
+ raise FileNotFoundError(f"Directory '{ds_checkpoint_dir}' doesn't exist")
520
+
521
+ return _get_fp32_state_dict_from_zero_checkpoint(ds_checkpoint_dir, exclude_frozen_parameters)
522
+
523
+
524
+ def convert_zero_checkpoint_to_fp32_state_dict(checkpoint_dir, output_file, tag=None, exclude_frozen_parameters=False):
525
+ """
526
+ Convert ZeRO 2 or 3 checkpoint into a single fp32 consolidated ``state_dict`` file that can be
527
+ loaded with ``torch.load(file)`` + ``load_state_dict()`` and used for training without DeepSpeed.
528
+
529
+ Args:
530
+ - ``checkpoint_dir``: path to the desired checkpoint folder. (one that contains the tag-folder, like ``global_step14``)
531
+ - ``output_file``: path to the pytorch fp32 state_dict output file (e.g. path/pytorch_model.bin)
532
+ - ``tag``: checkpoint tag used as a unique identifier for checkpoint. If not provided will attempt to load tag in the file named ``latest`` in the checkpoint folder, e.g., ``global_step14``
533
+ - ``exclude_frozen_parameters``: exclude frozen parameters
534
+ """
535
+
536
+ state_dict = get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir, tag, exclude_frozen_parameters)
537
+ print(f"Saving fp32 state dict to {output_file}")
538
+ torch.save(state_dict, output_file)
539
+
540
+
541
+ def load_state_dict_from_zero_checkpoint(model, checkpoint_dir, tag=None):
542
+ """
543
+ 1. Put the provided model to cpu
544
+ 2. Convert ZeRO 2 or 3 checkpoint into a single fp32 consolidated ``state_dict``
545
+ 3. Load it into the provided model
546
+
547
+ Args:
548
+ - ``model``: the model object to update
549
+ - ``checkpoint_dir``: path to the desired checkpoint folder. (one that contains the tag-folder, like ``global_step14``)
550
+ - ``tag``: checkpoint tag used as a unique identifier for checkpoint. If not provided will attempt to load tag in the file named ``latest`` in the checkpoint folder, e.g., ``global_step14``
551
+
552
+ Returns:
553
+ - ``model`: modified model
554
+
555
+ Make sure you have plenty of CPU memory available before you call this function. If you don't
556
+ have enough use the ``zero_to_fp32.py`` utility to do the conversion. You will find it
557
+ conveniently placed for you in the checkpoint folder.
558
+
559
+ A typical usage might be ::
560
+
561
+ from deepspeed.utils.zero_to_fp32 import load_state_dict_from_zero_checkpoint
562
+ model = load_state_dict_from_zero_checkpoint(trainer.model, checkpoint_dir)
563
+ # submit to model hub or save the model to share with others
564
+
565
+ Note, that once this was run, the ``model`` will no longer be usable in the deepspeed context
566
+ of the same application. i.e. you will need to re-initialize the deepspeed engine, since
567
+ ``model.load_state_dict(state_dict)`` will remove all the deepspeed magic from it.
568
+
569
+ """
570
+ logger.info(f"Extracting fp32 weights")
571
+ state_dict = get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir, tag)
572
+
573
+ logger.info(f"Overwriting model with fp32 weights")
574
+ model = model.cpu()
575
+ model.load_state_dict(state_dict, strict=False)
576
+
577
+ return model
578
+
579
+
580
+ if __name__ == "__main__":
581
+
582
+ parser = argparse.ArgumentParser()
583
+ parser.add_argument("checkpoint_dir",
584
+ type=str,
585
+ help="path to the desired checkpoint folder, e.g., path/checkpoint-12")
586
+ parser.add_argument(
587
+ "output_file",
588
+ type=str,
589
+ help="path to the pytorch fp32 state_dict output file (e.g. path/checkpoint-12/pytorch_model.bin)")
590
+ parser.add_argument("-t",
591
+ "--tag",
592
+ type=str,
593
+ default=None,
594
+ help="checkpoint tag used as a unique identifier for checkpoint. e.g., global_step1")
595
+ parser.add_argument("--exclude_frozen_parameters", action='store_true', help="exclude frozen parameters")
596
+ parser.add_argument("-d", "--debug", action='store_true', help="enable debug")
597
+ args = parser.parse_args()
598
+
599
+ debug = args.debug
600
+
601
+ convert_zero_checkpoint_to_fp32_state_dict(args.checkpoint_dir,
602
+ args.output_file,
603
+ tag=args.tag,
604
+ exclude_frozen_parameters=args.exclude_frozen_parameters)
checkpoint-27/config.json ADDED
@@ -0,0 +1,30 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "_name_or_path": "/apdcephfs_qy3/share_301069248/users/rummyyang/matmulfreellm/model/MMfreeLM-370M",
3
+ "architectures": [
4
+ "HGRNBitForCausalLM"
5
+ ],
6
+ "attn_mode": "fused_recurrent",
7
+ "bos_token_id": 1,
8
+ "conv_size": 4,
9
+ "eos_token_id": 2,
10
+ "expand_ratio": 1,
11
+ "fuse_cross_entropy": true,
12
+ "hidden_act": "swish",
13
+ "hidden_ratio": 4,
14
+ "hidden_size": 1024,
15
+ "initializer_range": 0.02,
16
+ "intermediate_size": null,
17
+ "max_position_embeddings": 2048,
18
+ "model_type": "hgrn_bit",
19
+ "num_heads": 1,
20
+ "num_hidden_layers": 24,
21
+ "rms_norm_eps": 1e-06,
22
+ "share_conv_kernel": true,
23
+ "tie_word_embeddings": false,
24
+ "torch_dtype": "float32",
25
+ "transformers_version": "4.45.2",
26
+ "use_cache": true,
27
+ "use_lower_bound": true,
28
+ "use_short_conv": false,
29
+ "vocab_size": 32000
30
+ }
checkpoint-27/generation_config.json ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
 
1
+ {
2
+ "_from_model_config": true,
3
+ "bos_token_id": 1,
4
+ "eos_token_id": 2,
5
+ "transformers_version": "4.45.2"
6
+ }
checkpoint-27/model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:25a683b43602104752ed2d95020d4e9964a210f1e95d0524ecd5921909e2b730
3
+ size 1496472568
checkpoint-27/special_tokens_map.json ADDED
@@ -0,0 +1,24 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "bos_token": {
3
+ "content": "<s>",
4
+ "lstrip": false,
5
+ "normalized": false,
6
+ "rstrip": false,
7
+ "single_word": false
8
+ },
9
+ "eos_token": {
10
+ "content": "</s>",
11
+ "lstrip": false,
12
+ "normalized": false,
13
+ "rstrip": false,
14
+ "single_word": false
15
+ },
16
+ "pad_token": "</s>",
17
+ "unk_token": {
18
+ "content": "<unk>",
19
+ "lstrip": false,
20
+ "normalized": false,
21
+ "rstrip": false,
22
+ "single_word": false
23
+ }
24
+ }
checkpoint-27/tokenizer.json ADDED
The diff for this file is too large to render. See raw diff
 
checkpoint-27/tokenizer.model ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:dadfd56d766715c61d2ef780a525ab43b8e6da4de6865bda3d95fdef5e134055
3
+ size 493443
checkpoint-27/tokenizer_config.json ADDED
@@ -0,0 +1,43 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "add_bos_token": true,
3
+ "add_eos_token": false,
4
+ "add_prefix_space": null,
5
+ "added_tokens_decoder": {
6
+ "0": {
7
+ "content": "<unk>",
8
+ "lstrip": false,
9
+ "normalized": false,
10
+ "rstrip": false,
11
+ "single_word": false,
12
+ "special": true
13
+ },
14
+ "1": {
15
+ "content": "<s>",
16
+ "lstrip": false,
17
+ "normalized": false,
18
+ "rstrip": false,
19
+ "single_word": false,
20
+ "special": true
21
+ },
22
+ "2": {
23
+ "content": "</s>",
24
+ "lstrip": false,
25
+ "normalized": false,
26
+ "rstrip": false,
27
+ "single_word": false,
28
+ "special": true
29
+ }
30
+ },
31
+ "additional_special_tokens": [],
32
+ "bos_token": "<s>",
33
+ "clean_up_tokenization_spaces": false,
34
+ "eos_token": "</s>",
35
+ "legacy": true,
36
+ "model_max_length": 1000000000000000019884624838656,
37
+ "pad_token": "</s>",
38
+ "sp_model_kwargs": {},
39
+ "spaces_between_special_tokens": false,
40
+ "tokenizer_class": "LlamaTokenizer",
41
+ "unk_token": "<unk>",
42
+ "use_default_system_prompt": false
43
+ }
checkpoint-4500/config.json ADDED
@@ -0,0 +1,30 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "_name_or_path": "/usr/yrm/model/MMfreeLM-370M",
3
+ "architectures": [
4
+ "HGRNBitForCausalLM"
5
+ ],
6
+ "attn_mode": "fused_recurrent",
7
+ "bos_token_id": 1,
8
+ "conv_size": 4,
9
+ "eos_token_id": 2,
10
+ "expand_ratio": 1,
11
+ "fuse_cross_entropy": true,
12
+ "hidden_act": "swish",
13
+ "hidden_ratio": 4,
14
+ "hidden_size": 1024,
15
+ "initializer_range": 0.02,
16
+ "intermediate_size": null,
17
+ "max_position_embeddings": 2048,
18
+ "model_type": "hgrn_bit",
19
+ "num_heads": 1,
20
+ "num_hidden_layers": 24,
21
+ "rms_norm_eps": 1e-06,
22
+ "share_conv_kernel": true,
23
+ "tie_word_embeddings": false,
24
+ "torch_dtype": "bfloat16",
25
+ "transformers_version": "4.45.2",
26
+ "use_cache": false,
27
+ "use_lower_bound": true,
28
+ "use_short_conv": false,
29
+ "vocab_size": 32000
30
+ }
checkpoint-4500/eval-20241021102538-11_tasks.log ADDED
@@ -0,0 +1,277 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ hf (pretrained=/apdcephfs_qy3/share_301069248/users/rummyyang/LLaMA-Factory/saves/llama3-1b/lora/pretrain/sft/checkpoint-4500), gen_kwargs: (None), limit: None, num_fewshot: None, batch_size: 128
2
+ | Tasks |Version| Filter |n-shot| Metric | |Value | |Stderr|
3
+ |----------------------------------------------------|-------|----------------|-----:|-----------|---|-----:|---|-----:|
4
+ |arc_challenge | 1|none | 0|acc |↑ |0.2048|± |0.0118|
5
+ | | |none | 0|acc_norm |↑ |0.2372|± |0.0124|
6
+ |arc_easy | 1|none | 0|acc |↑ |0.4407|± |0.0102|
7
+ | | |none | 0|acc_norm |↑ |0.4007|± |0.0101|
8
+ |ceval-valid |N/A |none | 0|acc |↑ |0.2623|± |0.0120|
9
+ |ceval-valid_accountant | 1|none | 0|acc |↑ |0.2449|± |0.0621|
10
+ |ceval-valid_advanced_mathematics | 1|none | 0|acc |↑ |0.2105|± |0.0961|
11
+ |ceval-valid_art_studies | 1|none | 0|acc |↑ |0.1515|± |0.0634|
12
+ |ceval-valid_basic_medicine | 1|none | 0|acc |↑ |0.3684|± |0.1137|
13
+ |ceval-valid_business_administration | 1|none | 0|acc |↑ |0.2727|± |0.0787|
14
+ |ceval-valid_chinese_language_and_literature | 1|none | 0|acc |↑ |0.1304|± |0.0718|
15
+ |ceval-valid_civil_servant | 1|none | 0|acc |↑ |0.1702|± |0.0554|
16
+ |ceval-valid_clinical_medicine | 1|none | 0|acc |↑ |0.2273|± |0.0914|
17
+ |ceval-valid_college_chemistry | 1|none | 0|acc |↑ |0.2500|± |0.0903|
18
+ |ceval-valid_college_economics | 1|none | 0|acc |↑ |0.3455|± |0.0647|
19
+ |ceval-valid_college_physics | 1|none | 0|acc |↑ |0.2632|± |0.1038|
20
+ |ceval-valid_college_programming | 1|none | 0|acc |↑ |0.2973|± |0.0762|
21
+ |ceval-valid_computer_architecture | 1|none | 0|acc |↑ |0.2857|± |0.1010|
22
+ |ceval-valid_computer_network | 1|none | 0|acc |↑ |0.4737|± |0.1177|
23
+ |ceval-valid_discrete_mathematics | 1|none | 0|acc |↑ |0.2500|± |0.1118|
24
+ |ceval-valid_education_science | 1|none | 0|acc |↑ |0.3448|± |0.0898|
25
+ |ceval-valid_electrical_engineer | 1|none | 0|acc |↑ |0.2973|± |0.0762|
26
+ |ceval-valid_environmental_impact_assessment_engineer| 1|none | 0|acc |↑ |0.2903|± |0.0829|
27
+ |ceval-valid_fire_engineer | 1|none | 0|acc |↑ |0.3226|± |0.0853|
28
+ |ceval-valid_high_school_biology | 1|none | 0|acc |↑ |0.2632|± |0.1038|
29
+ |ceval-valid_high_school_chemistry | 1|none | 0|acc |↑ |0.2632|± |0.1038|
30
+ |ceval-valid_high_school_chinese | 1|none | 0|acc |↑ |0.1579|± |0.0859|
31
+ |ceval-valid_high_school_geography | 1|none | 0|acc |↑ |0.2632|± |0.1038|
32
+ |ceval-valid_high_school_history | 1|none | 0|acc |↑ |0.5500|± |0.1141|
33
+ |ceval-valid_high_school_mathematics | 1|none | 0|acc |↑ |0.2222|± |0.1008|
34
+ |ceval-valid_high_school_physics | 1|none | 0|acc |↑ |0.2105|± |0.0961|
35
+ |ceval-valid_high_school_politics | 1|none | 0|acc |↑ |0.1579|± |0.0859|
36
+ |ceval-valid_ideological_and_moral_cultivation | 1|none | 0|acc |↑ |0.3684|± |0.1137|
37
+ |ceval-valid_law | 1|none | 0|acc |↑ |0.1667|± |0.0777|
38
+ |ceval-valid_legal_professional | 1|none | 0|acc |↑ |0.2174|± |0.0879|
39
+ |ceval-valid_logic | 1|none | 0|acc |↑ |0.1818|± |0.0842|
40
+ |ceval-valid_mao_zedong_thought | 1|none | 0|acc |↑ |0.2500|± |0.0903|
41
+ |ceval-valid_marxism | 1|none | 0|acc |↑ |0.3684|± |0.1137|
42
+ |ceval-valid_metrology_engineer | 1|none | 0|acc |↑ |0.1667|± |0.0777|
43
+ |ceval-valid_middle_school_biology | 1|none | 0|acc |↑ |0.0952|± |0.0656|
44
+ |ceval-valid_middle_school_chemistry | 1|none | 0|acc |↑ |0.3000|± |0.1051|
45
+ |ceval-valid_middle_school_geography | 1|none | 0|acc |↑ |0.2500|± |0.1306|
46
+ |ceval-valid_middle_school_history | 1|none | 0|acc |↑ |0.0455|± |0.0455|
47
+ |ceval-valid_middle_school_mathematics | 1|none | 0|acc |↑ |0.2105|± |0.0961|
48
+ |ceval-valid_middle_school_physics | 1|none | 0|acc |↑ |0.2632|± |0.1038|
49
+ |ceval-valid_middle_school_politics | 1|none | 0|acc |↑ |0.2381|± |0.0952|
50
+ |ceval-valid_modern_chinese_history | 1|none | 0|acc |↑ |0.1739|± |0.0808|
51
+ |ceval-valid_operating_system | 1|none | 0|acc |↑ |0.3158|± |0.1096|
52
+ |ceval-valid_physician | 1|none | 0|acc |↑ |0.2653|± |0.0637|
53
+ |ceval-valid_plant_protection | 1|none | 0|acc |↑ |0.2273|± |0.0914|
54
+ |ceval-valid_probability_and_statistics | 1|none | 0|acc |↑ |0.3889|± |0.1182|
55
+ |ceval-valid_professional_tour_guide | 1|none | 0|acc |↑ |0.2759|± |0.0845|
56
+ |ceval-valid_sports_science | 1|none | 0|acc |↑ |0.2105|± |0.0961|
57
+ |ceval-valid_tax_accountant | 1|none | 0|acc |↑ |0.3265|± |0.0677|
58
+ |ceval-valid_teacher_qualification | 1|none | 0|acc |↑ |0.2955|± |0.0696|
59
+ |ceval-valid_urban_and_rural_planner | 1|none | 0|acc |↑ |0.3043|± |0.0686|
60
+ |ceval-valid_veterinary_medicine | 1|none | 0|acc |↑ |0.3043|± |0.0981|
61
+ |cmmlu |N/A |none | 0|acc |↑ |0.2475|± |0.0040|
62
+ | | |none | 0|acc_norm |↑ |0.2475|± |0.0040|
63
+ |cmmlu_agronomy | 0|none | 0|acc |↑ |0.2544|± |0.0336|
64
+ | | |none | 0|acc_norm |↑ |0.2544|± |0.0336|
65
+ |cmmlu_anatomy | 0|none | 0|acc |↑ |0.2500|± |0.0357|
66
+ | | |none | 0|acc_norm |↑ |0.2500|± |0.0357|
67
+ |cmmlu_ancient_chinese | 0|none | 0|acc |↑ |0.2134|± |0.0321|
68
+ | | |none | 0|acc_norm |↑ |0.2134|± |0.0321|
69
+ |cmmlu_arts | 0|none | 0|acc |↑ |0.2375|± |0.0337|
70
+ | | |none | 0|acc_norm |↑ |0.2375|± |0.0337|
71
+ |cmmlu_astronomy | 0|none | 0|acc |↑ |0.2424|± |0.0335|
72
+ | | |none | 0|acc_norm |↑ |0.2424|± |0.0335|
73
+ |cmmlu_business_ethics | 0|none | 0|acc |↑ |0.2344|± |0.0294|
74
+ | | |none | 0|acc_norm |↑ |0.2344|± |0.0294|
75
+ |cmmlu_chinese_civil_service_exam | 0|none | 0|acc |↑ |0.2500|± |0.0343|
76
+ | | |none | 0|acc_norm |↑ |0.2500|± |0.0343|
77
+ |cmmlu_chinese_driving_rule | 0|none | 0|acc |↑ |0.2366|± |0.0373|
78
+ | | |none | 0|acc_norm |↑ |0.2366|± |0.0373|
79
+ |cmmlu_chinese_food_culture | 0|none | 0|acc |↑ |0.2353|± |0.0365|
80
+ | | |none | 0|acc_norm |↑ |0.2353|± |0.0365|
81
+ |cmmlu_chinese_foreign_policy | 0|none | 0|acc |↑ |0.2430|± |0.0417|
82
+ | | |none | 0|acc_norm |↑ |0.2430|± |0.0417|
83
+ |cmmlu_chinese_history | 0|none | 0|acc |↑ |0.2508|± |0.0242|
84
+ | | |none | 0|acc_norm |↑ |0.2508|± |0.0242|
85
+ |cmmlu_chinese_literature | 0|none | 0|acc |↑ |0.2353|± |0.0298|
86
+ | | |none | 0|acc_norm |↑ |0.2353|± |0.0298|
87
+ |cmmlu_chinese_teacher_qualification | 0|none | 0|acc |↑ |0.2235|± |0.0312|
88
+ | | |none | 0|acc_norm |↑ |0.2235|± |0.0312|
89
+ |cmmlu_clinical_knowledge | 0|none | 0|acc |↑ |0.2278|± |0.0273|
90
+ | | |none | 0|acc_norm |↑ |0.2278|± |0.0273|
91
+ |cmmlu_college_actuarial_science | 0|none | 0|acc |↑ |0.2170|± |0.0402|
92
+ | | |none | 0|acc_norm |↑ |0.2170|± |0.0402|
93
+ |cmmlu_college_education | 0|none | 0|acc |↑ |0.3271|± |0.0456|
94
+ | | |none | 0|acc_norm |↑ |0.3271|± |0.0456|
95
+ |cmmlu_college_engineering_hydrology | 0|none | 0|acc |↑ |0.2642|± |0.0430|
96
+ | | |none | 0|acc_norm |↑ |0.2642|± |0.0430|
97
+ |cmmlu_college_law | 0|none | 0|acc |↑ |0.2222|± |0.0402|
98
+ | | |none | 0|acc_norm |↑ |0.2222|± |0.0402|
99
+ |cmmlu_college_mathematics | 0|none | 0|acc |↑ |0.2095|± |0.0399|
100
+ | | |none | 0|acc_norm |↑ |0.2095|± |0.0399|
101
+ |cmmlu_college_medical_statistics | 0|none | 0|acc |↑ |0.2547|± |0.0425|
102
+ | | |none | 0|acc_norm |↑ |0.2547|± |0.0425|
103
+ |cmmlu_college_medicine | 0|none | 0|acc |↑ |0.2784|± |0.0272|
104
+ | | |none | 0|acc_norm |↑ |0.2784|± |0.0272|
105
+ |cmmlu_computer_science | 0|none | 0|acc |↑ |0.2157|± |0.0289|
106
+ | | |none | 0|acc_norm |↑ |0.2157|± |0.0289|
107
+ |cmmlu_computer_security | 0|none | 0|acc |↑ |0.2632|± |0.0338|
108
+ | | |none | 0|acc_norm |↑ |0.2632|± |0.0338|
109
+ |cmmlu_conceptual_physics | 0|none | 0|acc |↑ |0.2653|± |0.0365|
110
+ | | |none | 0|acc_norm |↑ |0.2653|± |0.0365|
111
+ |cmmlu_construction_project_management | 0|none | 0|acc |↑ |0.2446|± |0.0366|
112
+ | | |none | 0|acc_norm |↑ |0.2446|± |0.0366|
113
+ |cmmlu_economics | 0|none | 0|acc |↑ |0.2579|± |0.0348|
114
+ | | |none | 0|acc_norm |↑ |0.2579|± |0.0348|
115
+ |cmmlu_education | 0|none | 0|acc |↑ |0.2270|± |0.0329|
116
+ | | |none | 0|acc_norm |↑ |0.2270|± |0.0329|
117
+ |cmmlu_electrical_engineering | 0|none | 0|acc |↑ |0.2500|± |0.0331|
118
+ | | |none | 0|acc_norm |↑ |0.2500|± |0.0331|
119
+ |cmmlu_elementary_chinese | 0|none | 0|acc |↑ |0.2341|± |0.0267|
120
+ | | |none | 0|acc_norm |↑ |0.2341|± |0.0267|
121
+ |cmmlu_elementary_commonsense | 0|none | 0|acc |↑ |0.2626|± |0.0314|
122
+ | | |none | 0|acc_norm |↑ |0.2626|± |0.0314|
123
+ |cmmlu_elementary_information_and_technology | 0|none | 0|acc |↑ |0.2479|± |0.0280|
124
+ | | |none | 0|acc_norm |↑ |0.2479|± |0.0280|
125
+ |cmmlu_elementary_mathematics | 0|none | 0|acc |↑ |0.2957|± |0.0302|
126
+ | | |none | 0|acc_norm |↑ |0.2957|± |0.0302|
127
+ |cmmlu_ethnology | 0|none | 0|acc |↑ |0.2963|± |0.0394|
128
+ | | |none | 0|acc_norm |↑ |0.2963|± |0.0394|
129
+ |cmmlu_food_science | 0|none | 0|acc |↑ |0.2587|± |0.0368|
130
+ | | |none | 0|acc_norm |↑ |0.2587|± |0.0368|
131
+ |cmmlu_genetics | 0|none | 0|acc |↑ |0.2386|± |0.0322|
132
+ | | |none | 0|acc_norm |↑ |0.2386|± |0.0322|
133
+ |cmmlu_global_facts | 0|none | 0|acc |↑ |0.2752|± |0.0367|
134
+ | | |none | 0|acc_norm |↑ |0.2752|± |0.0367|
135
+ |cmmlu_high_school_biology | 0|none | 0|acc |↑ |0.2249|± |0.0322|
136
+ | | |none | 0|acc_norm |↑ |0.2249|± |0.0322|
137
+ |cmmlu_high_school_chemistry | 0|none | 0|acc |↑ |0.2652|± |0.0386|
138
+ | | |none | 0|acc_norm |↑ |0.2652|± |0.0386|
139
+ |cmmlu_high_school_geography | 0|none | 0|acc |↑ |0.2288|± |0.0388|
140
+ | | |none | 0|acc_norm |↑ |0.2288|± |0.0388|
141
+ |cmmlu_high_school_mathematics | 0|none | 0|acc |↑ |0.2561|± |0.0342|
142
+ | | |none | 0|acc_norm |↑ |0.2561|± |0.0342|
143
+ |cmmlu_high_school_physics | 0|none | 0|acc |↑ |0.1636|± |0.0354|
144
+ | | |none | 0|acc_norm |↑ |0.1636|± |0.0354|
145
+ |cmmlu_high_school_politics | 0|none | 0|acc |↑ |0.2378|± |0.0357|
146
+ | | |none | 0|acc_norm |↑ |0.2378|± |0.0357|
147
+ |cmmlu_human_sexuality | 0|none | 0|acc |↑ |0.2222|± |0.0372|
148
+ | | |none | 0|acc_norm |↑ |0.2222|± |0.0372|
149
+ |cmmlu_international_law | 0|none | 0|acc |↑ |0.2432|± |0.0316|
150
+ | | |none | 0|acc_norm |↑ |0.2432|± |0.0316|
151
+ |cmmlu_journalism | 0|none | 0|acc |↑ |0.2674|± |0.0338|
152
+ | | |none | 0|acc_norm |↑ |0.2674|± |0.0338|
153
+ |cmmlu_jurisprudence | 0|none | 0|acc |↑ |0.2482|± |0.0213|
154
+ | | |none | 0|acc_norm |↑ |0.2482|± |0.0213|
155
+ |cmmlu_legal_and_moral_basis | 0|none | 0|acc |↑ |0.2617|± |0.0301|
156
+ | | |none | 0|acc_norm |↑ |0.2617|± |0.0301|
157
+ |cmmlu_logical | 0|none | 0|acc |↑ |0.2033|± |0.0364|
158
+ | | |none | 0|acc_norm |↑ |0.2033|± |0.0364|
159
+ |cmmlu_machine_learning | 0|none | 0|acc |↑ |0.3279|± |0.0427|
160
+ | | |none | 0|acc_norm |↑ |0.3279|± |0.0427|
161
+ |cmmlu_management | 0|none | 0|acc |↑ |0.2190|± |0.0286|
162
+ | | |none | 0|acc_norm |↑ |0.2190|± |0.0286|
163
+ |cmmlu_marketing | 0|none | 0|acc |↑ |0.2056|± |0.0302|
164
+ | | |none | 0|acc_norm |↑ |0.2056|± |0.0302|
165
+ |cmmlu_marxist_theory | 0|none | 0|acc |↑ |0.2540|± |0.0317|
166
+ | | |none | 0|acc_norm |↑ |0.2540|± |0.0317|
167
+ |cmmlu_modern_chinese | 0|none | 0|acc |↑ |0.2241|± |0.0389|
168
+ | | |none | 0|acc_norm |↑ |0.2241|± |0.0389|
169
+ |cmmlu_nutrition | 0|none | 0|acc |↑ |0.2483|± |0.0360|
170
+ | | |none | 0|acc_norm |↑ |0.2483|± |0.0360|
171
+ |cmmlu_philosophy | 0|none | 0|acc |↑ |0.2571|± |0.0429|
172
+ | | |none | 0|acc_norm |↑ |0.2571|± |0.0429|
173
+ |cmmlu_professional_accounting | 0|none | 0|acc |↑ |0.2914|± |0.0344|
174
+ | | |none | 0|acc_norm |↑ |0.2914|± |0.0344|
175
+ |cmmlu_professional_law | 0|none | 0|acc |↑ |0.2038|± |0.0278|
176
+ | | |none | 0|acc_norm |↑ |0.2038|± |0.0278|
177
+ |cmmlu_professional_medicine | 0|none | 0|acc |↑ |0.2527|± |0.0224|
178
+ | | |none | 0|acc_norm |↑ |0.2527|± |0.0224|
179
+ |cmmlu_professional_psychology | 0|none | 0|acc |↑ |0.2586|± |0.0288|
180
+ | | |none | 0|acc_norm |↑ |0.2586|± |0.0288|
181
+ |cmmlu_public_relations | 0|none | 0|acc |↑ |0.2644|± |0.0335|
182
+ | | |none | 0|acc_norm |↑ |0.2644|± |0.0335|
183
+ |cmmlu_security_study | 0|none | 0|acc |↑ |0.2741|± |0.0385|
184
+ | | |none | 0|acc_norm |↑ |0.2741|± |0.0385|
185
+ |cmmlu_sociology | 0|none | 0|acc |↑ |0.2743|± |0.0297|
186
+ | | |none | 0|acc_norm |↑ |0.2743|± |0.0297|
187
+ |cmmlu_sports_science | 0|none | 0|acc |↑ |0.2545|± |0.0340|
188
+ | | |none | 0|acc_norm |↑ |0.2545|± |0.0340|
189
+ |cmmlu_traditional_chinese_medicine | 0|none | 0|acc |↑ |0.2541|± |0.0321|
190
+ | | |none | 0|acc_norm |↑ |0.2541|± |0.0321|
191
+ |cmmlu_virology | 0|none | 0|acc |↑ |0.2485|± |0.0333|
192
+ | | |none | 0|acc_norm |↑ |0.2485|± |0.0333|
193
+ |cmmlu_world_history | 0|none | 0|acc |↑ |0.2484|± |0.0342|
194
+ | | |none | 0|acc_norm |↑ |0.2484|± |0.0342|
195
+ |cmmlu_world_religions | 0|none | 0|acc |↑ |0.2250|± |0.0331|
196
+ | | |none | 0|acc_norm |↑ |0.2250|± |0.0331|
197
+ |gsm8k_cot | 3|flexible-extract| 8|exact_match|↑ |0.0152|± |0.0034|
198
+ | | |strict-match | 8|exact_match|↑ |0.0061|± |0.0021|
199
+ |hellaswag | 1|none | 0|acc |↑ |0.2996|± |0.0046|
200
+ | | |none | 0|acc_norm |↑ |0.3276|± |0.0047|
201
+ |mmlu |N/A |none | 0|acc |↑ |0.2479|± |0.0036|
202
+ |mmlu_abstract_algebra | 0|none | 0|acc |↑ |0.2600|± |0.0441|
203
+ |mmlu_anatomy | 0|none | 0|acc |↑ |0.2741|± |0.0385|
204
+ |mmlu_astronomy | 0|none | 0|acc |↑ |0.2105|± |0.0332|
205
+ |mmlu_business_ethics | 0|none | 0|acc |↑ |0.2600|± |0.0441|
206
+ |mmlu_clinical_knowledge | 0|none | 0|acc |↑ |0.2679|± |0.0273|
207
+ |mmlu_college_biology | 0|none | 0|acc |↑ |0.2292|± |0.0351|
208
+ |mmlu_college_chemistry | 0|none | 0|acc |↑ |0.2600|± |0.0441|
209
+ |mmlu_college_computer_science | 0|none | 0|acc |↑ |0.1800|± |0.0386|
210
+ |mmlu_college_mathematics | 0|none | 0|acc |↑ |0.2800|± |0.0451|
211
+ |mmlu_college_medicine | 0|none | 0|acc |↑ |0.2197|± |0.0316|
212
+ |mmlu_college_physics | 0|none | 0|acc |↑ |0.2353|± |0.0422|
213
+ |mmlu_computer_security | 0|none | 0|acc |↑ |0.2500|± |0.0435|
214
+ |mmlu_conceptual_physics | 0|none | 0|acc |↑ |0.3404|± |0.0310|
215
+ |mmlu_econometrics | 0|none | 0|acc |↑ |0.2632|± |0.0414|
216
+ |mmlu_electrical_engineering | 0|none | 0|acc |↑ |0.1931|± |0.0329|
217
+ |mmlu_elementary_mathematics | 0|none | 0|acc |↑ |0.2672|± |0.0228|
218
+ |mmlu_formal_logic | 0|none | 0|acc |↑ |0.2381|± |0.0381|
219
+ |mmlu_global_facts | 0|none | 0|acc |↑ |0.2000|± |0.0402|
220
+ |mmlu_high_school_biology | 0|none | 0|acc |↑ |0.2613|± |0.0250|
221
+ |mmlu_high_school_chemistry | 0|none | 0|acc |↑ |0.2217|± |0.0292|
222
+ |mmlu_high_school_computer_science | 0|none | 0|acc |↑ |0.2700|± |0.0446|
223
+ |mmlu_high_school_european_history | 0|none | 0|acc |↑ |0.2667|± |0.0345|
224
+ |mmlu_high_school_geography | 0|none | 0|acc |↑ |0.2020|± |0.0286|
225
+ |mmlu_high_school_government_and_politics | 0|none | 0|acc |↑ |0.2332|± |0.0305|
226
+ |mmlu_high_school_macroeconomics | 0|none | 0|acc |↑ |0.2385|± |0.0216|
227
+ |mmlu_high_school_mathematics | 0|none | 0|acc |↑ |0.2556|± |0.0266|
228
+ |mmlu_high_school_microeconomics | 0|none | 0|acc |↑ |0.2353|± |0.0276|
229
+ |mmlu_high_school_physics | 0|none | 0|acc |↑ |0.2185|± |0.0337|
230
+ |mmlu_high_school_psychology | 0|none | 0|acc |↑ |0.2257|± |0.0179|
231
+ |mmlu_high_school_statistics | 0|none | 0|acc |↑ |0.1667|± |0.0254|
232
+ |mmlu_high_school_us_history | 0|none | 0|acc |↑ |0.2794|± |0.0315|
233
+ |mmlu_high_school_world_history | 0|none | 0|acc |↑ |0.2405|± |0.0278|
234
+ |mmlu_human_aging | 0|none | 0|acc |↑ |0.3632|± |0.0323|
235
+ |mmlu_human_sexuality | 0|none | 0|acc |↑ |0.2443|± |0.0377|
236
+ |mmlu_humanities |N/A |none | 0|acc |↑ |0.2497|± |0.0063|
237
+ |mmlu_international_law | 0|none | 0|acc |↑ |0.2479|± |0.0394|
238
+ |mmlu_jurisprudence | 0|none | 0|acc |↑ |0.3056|± |0.0445|
239
+ |mmlu_logical_fallacies | 0|none | 0|acc |↑ |0.2454|± |0.0338|
240
+ |mmlu_machine_learning | 0|none | 0|acc |↑ |0.2768|± |0.0425|
241
+ |mmlu_management | 0|none | 0|acc |↑ |0.2621|± |0.0435|
242
+ |mmlu_marketing | 0|none | 0|acc |↑ |0.2436|± |0.0281|
243
+ |mmlu_medical_genetics | 0|none | 0|acc |↑ |0.3300|± |0.0473|
244
+ |mmlu_miscellaneous | 0|none | 0|acc |↑ |0.2452|± |0.0154|
245
+ |mmlu_moral_disputes | 0|none | 0|acc |↑ |0.2572|± |0.0235|
246
+ |mmlu_moral_scenarios | 0|none | 0|acc |↑ |0.2391|± |0.0143|
247
+ |mmlu_nutrition | 0|none | 0|acc |↑ |0.2092|± |0.0233|
248
+ |mmlu_other |N/A |none | 0|acc |↑ |0.2556|± |0.0078|
249
+ |mmlu_philosophy | 0|none | 0|acc |↑ |0.2637|± |0.0250|
250
+ |mmlu_prehistory | 0|none | 0|acc |↑ |0.2531|± |0.0242|
251
+ |mmlu_professional_accounting | 0|none | 0|acc |↑ |0.2766|± |0.0267|
252
+ |mmlu_professional_law | 0|none | 0|acc |↑ |0.2438|± |0.0110|
253
+ |mmlu_professional_medicine | 0|none | 0|acc |↑ |0.2022|± |0.0244|
254
+ |mmlu_professional_psychology | 0|none | 0|acc |↑ |0.2598|± |0.0177|
255
+ |mmlu_public_relations | 0|none | 0|acc |↑ |0.2818|± |0.0431|
256
+ |mmlu_security_studies | 0|none | 0|acc |↑ |0.1714|± |0.0241|
257
+ |mmlu_social_sciences |N/A |none | 0|acc |↑ |0.2379|± |0.0077|
258
+ |mmlu_sociology | 0|none | 0|acc |↑ |0.2836|± |0.0319|
259
+ |mmlu_stem |N/A |none | 0|acc |↑ |0.2474|± |0.0077|
260
+ |mmlu_us_foreign_policy | 0|none | 0|acc |↑ |0.2400|± |0.0429|
261
+ |mmlu_virology | 0|none | 0|acc |↑ |0.3133|± |0.0361|
262
+ |mmlu_world_religions | 0|none | 0|acc |↑ |0.2515|± |0.0333|
263
+ |piqa | 1|none | 0|acc |↑ |0.6279|± |0.0113|
264
+ | | |none | 0|acc_norm |↑ |0.6289|± |0.0113|
265
+ |winogrande | 1|none | 0|acc |↑ |0.4862|± |0.0140|
266
+
267
+ | Groups |Version|Filter|n-shot| Metric | |Value | |Stderr|
268
+ |--------------------|-------|------|-----:|--------|---|-----:|---|-----:|
269
+ |ceval-valid |N/A |none | 0|acc |↑ |0.2623|± |0.0120|
270
+ |cmmlu |N/A |none | 0|acc |↑ |0.2475|± |0.0040|
271
+ | | |none | 0|acc_norm|↑ |0.2475|± |0.0040|
272
+ |mmlu |N/A |none | 0|acc |↑ |0.2479|± |0.0036|
273
+ |mmlu_humanities |N/A |none | 0|acc |↑ |0.2497|± |0.0063|
274
+ |mmlu_other |N/A |none | 0|acc |↑ |0.2556|± |0.0078|
275
+ |mmlu_social_sciences|N/A |none | 0|acc |↑ |0.2379|± |0.0077|
276
+ |mmlu_stem |N/A |none | 0|acc |↑ |0.2474|± |0.0077|
277
+
checkpoint-4500/generation_config.json ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
 
1
+ {
2
+ "_from_model_config": true,
3
+ "bos_token_id": 1,
4
+ "eos_token_id": 2,
5
+ "transformers_version": "4.45.2"
6
+ }
checkpoint-4500/latest ADDED
@@ -0,0 +1 @@
 
 
1
+ global_step4500
checkpoint-4500/model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:e57461eb6f9083c0af1438e2952e05fb9eb20f2b6ffc50cc0b827b25158f08dc
3
+ size 748256328
checkpoint-4500/rng_state_0.pth ADDED
Binary file (15.9 kB). View file
 
checkpoint-4500/rng_state_1.pth ADDED
Binary file (15.9 kB). View file
 
checkpoint-4500/rng_state_2.pth ADDED
Binary file (15.9 kB). View file
 
checkpoint-4500/rng_state_3.pth ADDED
Binary file (15.9 kB). View file
 
checkpoint-4500/rng_state_4.pth ADDED
Binary file (15.9 kB). View file
 
checkpoint-4500/rng_state_5.pth ADDED
Binary file (15.9 kB). View file
 
checkpoint-4500/rng_state_6.pth ADDED
Binary file (15.9 kB). View file
 
checkpoint-4500/rng_state_7.pth ADDED
Binary file (15.9 kB). View file
 
checkpoint-4500/scheduler.pt ADDED
Binary file (1.06 kB). View file
 
checkpoint-4500/special_tokens_map.json ADDED
@@ -0,0 +1,24 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "bos_token": {
3
+ "content": "<s>",
4
+ "lstrip": false,
5
+ "normalized": false,
6
+ "rstrip": false,
7
+ "single_word": false
8
+ },
9
+ "eos_token": {
10
+ "content": "</s>",
11
+ "lstrip": false,
12
+ "normalized": false,
13
+ "rstrip": false,
14
+ "single_word": false
15
+ },
16
+ "pad_token": "</s>",
17
+ "unk_token": {
18
+ "content": "<unk>",
19
+ "lstrip": false,
20
+ "normalized": false,
21
+ "rstrip": false,
22
+ "single_word": false
23
+ }
24
+ }
checkpoint-4500/tokenizer.json ADDED
The diff for this file is too large to render. See raw diff
 
checkpoint-4500/tokenizer.model ADDED
Binary file (493 kB). View file
 
checkpoint-4500/tokenizer_config.json ADDED
@@ -0,0 +1,46 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "add_bos_token": true,
3
+ "add_eos_token": false,
4
+ "add_prefix_space": null,
5
+ "added_tokens_decoder": {
6
+ "0": {
7
+ "content": "<unk>",
8
+ "lstrip": false,
9
+ "normalized": false,
10
+ "rstrip": false,
11
+ "single_word": false,
12
+ "special": true
13
+ },
14
+ "1": {
15
+ "content": "<s>",
16
+ "lstrip": false,
17
+ "normalized": false,
18
+ "rstrip": false,
19
+ "single_word": false,
20
+ "special": true
21
+ },
22
+ "2": {
23
+ "content": "</s>",
24
+ "lstrip": false,
25
+ "normalized": false,
26
+ "rstrip": false,
27
+ "single_word": false,
28
+ "special": true
29
+ }
30
+ },
31
+ "additional_special_tokens": [],
32
+ "bos_token": "<s>",
33
+ "chat_template": "{% if messages[0]['role'] == 'system' %}{% set loop_messages = messages[1:] %}{% set system_message = messages[0]['content'] %}{% else %}{% set loop_messages = messages %}{% endif %}{% for message in loop_messages %}{% set content = message['content'] %}{% if loop.index0 == 0 and system_message is defined %}{% set content = '<<SYS>>\n' + system_message + '\n<</SYS>>\n\n' + message['content'] %}{% endif %}{% if message['role'] == 'user' %}{{ '<s>' + '[INST] ' + content + ' [/INST]' }}{% elif message['role'] == 'assistant' %}{{ content + '</s>' }}{% endif %}{% endfor %}",
34
+ "clean_up_tokenization_spaces": false,
35
+ "eos_token": "</s>",
36
+ "legacy": true,
37
+ "model_max_length": 1000000000000000019884624838656,
38
+ "pad_token": "</s>",
39
+ "padding_side": "right",
40
+ "sp_model_kwargs": {},
41
+ "spaces_between_special_tokens": false,
42
+ "split_special_tokens": false,
43
+ "tokenizer_class": "LlamaTokenizer",
44
+ "unk_token": "<unk>",
45
+ "use_default_system_prompt": false
46
+ }
checkpoint-4500/trainer_state.json ADDED
@@ -0,0 +1,3215 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "best_metric": null,
3
+ "best_model_checkpoint": null,
4
+ "epoch": 2.6877706435717483,
5
+ "eval_steps": 1000,
6
+ "global_step": 4500,
7
+ "is_hyper_param_search": false,
8
+ "is_local_process_zero": true,
9
+ "is_world_process_zero": true,
10
+ "log_history": [
11
+ {
12
+ "epoch": 0.005972823652381664,
13
+ "grad_norm": 0.5743309259414673,
14
+ "learning_rate": 1.5904572564612327e-06,
15
+ "loss": 2.7537,
16
+ "step": 10
17
+ },
18
+ {
19
+ "epoch": 0.011945647304763328,
20
+ "grad_norm": 0.5460094809532166,
21
+ "learning_rate": 3.1809145129224655e-06,
22
+ "loss": 2.7612,
23
+ "step": 20
24
+ },
25
+ {
26
+ "epoch": 0.01791847095714499,
27
+ "grad_norm": 0.5363145470619202,
28
+ "learning_rate": 4.7713717693836985e-06,
29
+ "loss": 2.7609,
30
+ "step": 30
31
+ },
32
+ {
33
+ "epoch": 0.023891294609526655,
34
+ "grad_norm": 0.5279455184936523,
35
+ "learning_rate": 6.361829025844931e-06,
36
+ "loss": 2.7607,
37
+ "step": 40
38
+ },
39
+ {
40
+ "epoch": 0.029864118261908316,
41
+ "grad_norm": 0.5061234831809998,
42
+ "learning_rate": 7.952286282306164e-06,
43
+ "loss": 2.784,
44
+ "step": 50
45
+ },
46
+ {
47
+ "epoch": 0.03583694191428998,
48
+ "grad_norm": 0.476898729801178,
49
+ "learning_rate": 9.542743538767397e-06,
50
+ "loss": 2.762,
51
+ "step": 60
52
+ },
53
+ {
54
+ "epoch": 0.041809765566671646,
55
+ "grad_norm": 0.4454072415828705,
56
+ "learning_rate": 1.113320079522863e-05,
57
+ "loss": 2.7716,
58
+ "step": 70
59
+ },
60
+ {
61
+ "epoch": 0.04778258921905331,
62
+ "grad_norm": 3.1541287899017334,
63
+ "learning_rate": 1.2723658051689862e-05,
64
+ "loss": 2.8849,
65
+ "step": 80
66
+ },
67
+ {
68
+ "epoch": 0.05375541287143497,
69
+ "grad_norm": 0.19107532501220703,
70
+ "learning_rate": 1.4314115308151095e-05,
71
+ "loss": 3.1147,
72
+ "step": 90
73
+ },
74
+ {
75
+ "epoch": 0.05972823652381663,
76
+ "grad_norm": 0.13281038403511047,
77
+ "learning_rate": 1.590457256461233e-05,
78
+ "loss": 2.5574,
79
+ "step": 100
80
+ },
81
+ {
82
+ "epoch": 0.0657010601761983,
83
+ "grad_norm": 0.08191326260566711,
84
+ "learning_rate": 1.749502982107356e-05,
85
+ "loss": 2.4446,
86
+ "step": 110
87
+ },
88
+ {
89
+ "epoch": 0.07167388382857996,
90
+ "grad_norm": 0.08300579339265823,
91
+ "learning_rate": 1.9085487077534794e-05,
92
+ "loss": 2.3524,
93
+ "step": 120
94
+ },
95
+ {
96
+ "epoch": 0.07764670748096163,
97
+ "grad_norm": 0.0590679906308651,
98
+ "learning_rate": 2.0675944333996028e-05,
99
+ "loss": 2.2819,
100
+ "step": 130
101
+ },
102
+ {
103
+ "epoch": 0.08361953113334329,
104
+ "grad_norm": 0.052923623472452164,
105
+ "learning_rate": 2.226640159045726e-05,
106
+ "loss": 2.2261,
107
+ "step": 140
108
+ },
109
+ {
110
+ "epoch": 0.08959235478572496,
111
+ "grad_norm": 0.05208205804228783,
112
+ "learning_rate": 2.385685884691849e-05,
113
+ "loss": 2.1889,
114
+ "step": 150
115
+ },
116
+ {
117
+ "epoch": 0.09556517843810662,
118
+ "grad_norm": 0.0485885925590992,
119
+ "learning_rate": 2.5447316103379724e-05,
120
+ "loss": 2.1694,
121
+ "step": 160
122
+ },
123
+ {
124
+ "epoch": 0.10153800209048827,
125
+ "grad_norm": 0.04901551082730293,
126
+ "learning_rate": 2.7037773359840955e-05,
127
+ "loss": 2.1272,
128
+ "step": 170
129
+ },
130
+ {
131
+ "epoch": 0.10751082574286994,
132
+ "grad_norm": 0.04524153470993042,
133
+ "learning_rate": 2.862823061630219e-05,
134
+ "loss": 2.1085,
135
+ "step": 180
136
+ },
137
+ {
138
+ "epoch": 0.1134836493952516,
139
+ "grad_norm": 0.04201298579573631,
140
+ "learning_rate": 3.021868787276342e-05,
141
+ "loss": 2.0902,
142
+ "step": 190
143
+ },
144
+ {
145
+ "epoch": 0.11945647304763327,
146
+ "grad_norm": 0.053612083196640015,
147
+ "learning_rate": 3.180914512922466e-05,
148
+ "loss": 2.0855,
149
+ "step": 200
150
+ },
151
+ {
152
+ "epoch": 0.12542929670001493,
153
+ "grad_norm": 0.04812688007950783,
154
+ "learning_rate": 3.3399602385685885e-05,
155
+ "loss": 2.0469,
156
+ "step": 210
157
+ },
158
+ {
159
+ "epoch": 0.1314021203523966,
160
+ "grad_norm": 0.0483262836933136,
161
+ "learning_rate": 3.499005964214712e-05,
162
+ "loss": 2.0264,
163
+ "step": 220
164
+ },
165
+ {
166
+ "epoch": 0.13737494400477826,
167
+ "grad_norm": 0.05456310138106346,
168
+ "learning_rate": 3.6580516898608353e-05,
169
+ "loss": 2.0201,
170
+ "step": 230
171
+ },
172
+ {
173
+ "epoch": 0.14334776765715992,
174
+ "grad_norm": 0.06978671252727509,
175
+ "learning_rate": 3.817097415506959e-05,
176
+ "loss": 1.9967,
177
+ "step": 240
178
+ },
179
+ {
180
+ "epoch": 0.1493205913095416,
181
+ "grad_norm": 0.049219317734241486,
182
+ "learning_rate": 3.976143141153082e-05,
183
+ "loss": 1.9909,
184
+ "step": 250
185
+ },
186
+ {
187
+ "epoch": 0.15529341496192325,
188
+ "grad_norm": 0.04814588651061058,
189
+ "learning_rate": 4.1351888667992056e-05,
190
+ "loss": 1.9793,
191
+ "step": 260
192
+ },
193
+ {
194
+ "epoch": 0.16126623861430492,
195
+ "grad_norm": 0.06128086522221565,
196
+ "learning_rate": 4.2942345924453284e-05,
197
+ "loss": 1.9703,
198
+ "step": 270
199
+ },
200
+ {
201
+ "epoch": 0.16723906226668658,
202
+ "grad_norm": 0.06803273409605026,
203
+ "learning_rate": 4.453280318091452e-05,
204
+ "loss": 1.9484,
205
+ "step": 280
206
+ },
207
+ {
208
+ "epoch": 0.17321188591906825,
209
+ "grad_norm": 0.06598497182130814,
210
+ "learning_rate": 4.612326043737575e-05,
211
+ "loss": 1.9251,
212
+ "step": 290
213
+ },
214
+ {
215
+ "epoch": 0.1791847095714499,
216
+ "grad_norm": 0.05581754818558693,
217
+ "learning_rate": 4.771371769383698e-05,
218
+ "loss": 1.9211,
219
+ "step": 300
220
+ },
221
+ {
222
+ "epoch": 0.18515753322383158,
223
+ "grad_norm": 0.06264442205429077,
224
+ "learning_rate": 4.9304174950298214e-05,
225
+ "loss": 1.9047,
226
+ "step": 310
227
+ },
228
+ {
229
+ "epoch": 0.19113035687621324,
230
+ "grad_norm": 0.05809122323989868,
231
+ "learning_rate": 5.089463220675945e-05,
232
+ "loss": 1.8948,
233
+ "step": 320
234
+ },
235
+ {
236
+ "epoch": 0.1971031805285949,
237
+ "grad_norm": 0.05478562042117119,
238
+ "learning_rate": 5.248508946322068e-05,
239
+ "loss": 1.8924,
240
+ "step": 330
241
+ },
242
+ {
243
+ "epoch": 0.20307600418097654,
244
+ "grad_norm": 0.060149796307086945,
245
+ "learning_rate": 5.407554671968191e-05,
246
+ "loss": 1.8776,
247
+ "step": 340
248
+ },
249
+ {
250
+ "epoch": 0.2090488278333582,
251
+ "grad_norm": 0.06282585859298706,
252
+ "learning_rate": 5.5666003976143144e-05,
253
+ "loss": 1.8752,
254
+ "step": 350
255
+ },
256
+ {
257
+ "epoch": 0.21502165148573987,
258
+ "grad_norm": 0.06441989541053772,
259
+ "learning_rate": 5.725646123260438e-05,
260
+ "loss": 1.8632,
261
+ "step": 360
262
+ },
263
+ {
264
+ "epoch": 0.22099447513812154,
265
+ "grad_norm": 0.05681062117218971,
266
+ "learning_rate": 5.8846918489065606e-05,
267
+ "loss": 1.8475,
268
+ "step": 370
269
+ },
270
+ {
271
+ "epoch": 0.2269672987905032,
272
+ "grad_norm": 0.05155131593346596,
273
+ "learning_rate": 6.043737574552684e-05,
274
+ "loss": 1.8431,
275
+ "step": 380
276
+ },
277
+ {
278
+ "epoch": 0.23294012244288487,
279
+ "grad_norm": 0.05347074940800667,
280
+ "learning_rate": 6.202783300198807e-05,
281
+ "loss": 1.8416,
282
+ "step": 390
283
+ },
284
+ {
285
+ "epoch": 0.23891294609526653,
286
+ "grad_norm": 0.06694310158491135,
287
+ "learning_rate": 6.361829025844931e-05,
288
+ "loss": 1.8344,
289
+ "step": 400
290
+ },
291
+ {
292
+ "epoch": 0.2448857697476482,
293
+ "grad_norm": 0.06079185754060745,
294
+ "learning_rate": 6.520874751491054e-05,
295
+ "loss": 1.8297,
296
+ "step": 410
297
+ },
298
+ {
299
+ "epoch": 0.25085859340002986,
300
+ "grad_norm": 0.05415233224630356,
301
+ "learning_rate": 6.679920477137177e-05,
302
+ "loss": 1.82,
303
+ "step": 420
304
+ },
305
+ {
306
+ "epoch": 0.2568314170524115,
307
+ "grad_norm": 0.0645110234618187,
308
+ "learning_rate": 6.838966202783301e-05,
309
+ "loss": 1.8137,
310
+ "step": 430
311
+ },
312
+ {
313
+ "epoch": 0.2628042407047932,
314
+ "grad_norm": 0.06045007333159447,
315
+ "learning_rate": 6.998011928429424e-05,
316
+ "loss": 1.8048,
317
+ "step": 440
318
+ },
319
+ {
320
+ "epoch": 0.26877706435717486,
321
+ "grad_norm": 0.05600131303071976,
322
+ "learning_rate": 7.157057654075547e-05,
323
+ "loss": 1.7854,
324
+ "step": 450
325
+ },
326
+ {
327
+ "epoch": 0.2747498880095565,
328
+ "grad_norm": 0.06498062610626221,
329
+ "learning_rate": 7.316103379721671e-05,
330
+ "loss": 1.798,
331
+ "step": 460
332
+ },
333
+ {
334
+ "epoch": 0.2807227116619382,
335
+ "grad_norm": 0.053577929735183716,
336
+ "learning_rate": 7.475149105367795e-05,
337
+ "loss": 1.7883,
338
+ "step": 470
339
+ },
340
+ {
341
+ "epoch": 0.28669553531431985,
342
+ "grad_norm": 0.09097382426261902,
343
+ "learning_rate": 7.634194831013918e-05,
344
+ "loss": 1.78,
345
+ "step": 480
346
+ },
347
+ {
348
+ "epoch": 0.2926683589667015,
349
+ "grad_norm": 0.057212598621845245,
350
+ "learning_rate": 7.79324055666004e-05,
351
+ "loss": 1.7705,
352
+ "step": 490
353
+ },
354
+ {
355
+ "epoch": 0.2986411826190832,
356
+ "grad_norm": 0.055311623960733414,
357
+ "learning_rate": 7.952286282306164e-05,
358
+ "loss": 1.7739,
359
+ "step": 500
360
+ },
361
+ {
362
+ "epoch": 0.30461400627146484,
363
+ "grad_norm": 0.07679615169763565,
364
+ "learning_rate": 7.999952636882403e-05,
365
+ "loss": 1.7705,
366
+ "step": 510
367
+ },
368
+ {
369
+ "epoch": 0.3105868299238465,
370
+ "grad_norm": 0.10281822085380554,
371
+ "learning_rate": 7.999720656965739e-05,
372
+ "loss": 1.7639,
373
+ "step": 520
374
+ },
375
+ {
376
+ "epoch": 0.3165596535762282,
377
+ "grad_norm": 0.07636060565710068,
378
+ "learning_rate": 7.999295372099362e-05,
379
+ "loss": 1.7539,
380
+ "step": 530
381
+ },
382
+ {
383
+ "epoch": 0.32253247722860984,
384
+ "grad_norm": 0.057714689522981644,
385
+ "learning_rate": 7.998676802837124e-05,
386
+ "loss": 1.7541,
387
+ "step": 540
388
+ },
389
+ {
390
+ "epoch": 0.3285053008809915,
391
+ "grad_norm": 0.06505981832742691,
392
+ "learning_rate": 7.997864979074237e-05,
393
+ "loss": 1.7487,
394
+ "step": 550
395
+ },
396
+ {
397
+ "epoch": 0.33447812453337317,
398
+ "grad_norm": 0.05842842161655426,
399
+ "learning_rate": 7.996859940045832e-05,
400
+ "loss": 1.739,
401
+ "step": 560
402
+ },
403
+ {
404
+ "epoch": 0.34045094818575483,
405
+ "grad_norm": 0.051559966057538986,
406
+ "learning_rate": 7.995661734325054e-05,
407
+ "loss": 1.7443,
408
+ "step": 570
409
+ },
410
+ {
411
+ "epoch": 0.3464237718381365,
412
+ "grad_norm": 0.20853149890899658,
413
+ "learning_rate": 7.994270419820721e-05,
414
+ "loss": 1.7719,
415
+ "step": 580
416
+ },
417
+ {
418
+ "epoch": 0.35239659549051816,
419
+ "grad_norm": 0.09151974320411682,
420
+ "learning_rate": 7.992686063774525e-05,
421
+ "loss": 1.7817,
422
+ "step": 590
423
+ },
424
+ {
425
+ "epoch": 0.3583694191428998,
426
+ "grad_norm": 0.05926055088639259,
427
+ "learning_rate": 7.99090874275778e-05,
428
+ "loss": 1.7469,
429
+ "step": 600
430
+ },
431
+ {
432
+ "epoch": 0.3643422427952815,
433
+ "grad_norm": 0.044228848069906235,
434
+ "learning_rate": 7.988938542667721e-05,
435
+ "loss": 1.7393,
436
+ "step": 610
437
+ },
438
+ {
439
+ "epoch": 0.37031506644766315,
440
+ "grad_norm": 0.0427553653717041,
441
+ "learning_rate": 7.986775558723355e-05,
442
+ "loss": 1.7307,
443
+ "step": 620
444
+ },
445
+ {
446
+ "epoch": 0.3762878901000448,
447
+ "grad_norm": 0.0548509880900383,
448
+ "learning_rate": 7.984419895460858e-05,
449
+ "loss": 1.7205,
450
+ "step": 630
451
+ },
452
+ {
453
+ "epoch": 0.3822607137524265,
454
+ "grad_norm": 0.057041749358177185,
455
+ "learning_rate": 7.981871666728525e-05,
456
+ "loss": 1.7225,
457
+ "step": 640
458
+ },
459
+ {
460
+ "epoch": 0.38823353740480815,
461
+ "grad_norm": 0.056601762771606445,
462
+ "learning_rate": 7.979130995681263e-05,
463
+ "loss": 1.7088,
464
+ "step": 650
465
+ },
466
+ {
467
+ "epoch": 0.3942063610571898,
468
+ "grad_norm": 0.06844093650579453,
469
+ "learning_rate": 7.976198014774637e-05,
470
+ "loss": 1.7073,
471
+ "step": 660
472
+ },
473
+ {
474
+ "epoch": 0.4001791847095714,
475
+ "grad_norm": 0.0546780526638031,
476
+ "learning_rate": 7.973072865758483e-05,
477
+ "loss": 1.7121,
478
+ "step": 670
479
+ },
480
+ {
481
+ "epoch": 0.4061520083619531,
482
+ "grad_norm": 0.04654558375477791,
483
+ "learning_rate": 7.969755699670041e-05,
484
+ "loss": 1.6951,
485
+ "step": 680
486
+ },
487
+ {
488
+ "epoch": 0.41212483201433475,
489
+ "grad_norm": 0.06478898227214813,
490
+ "learning_rate": 7.966246676826661e-05,
491
+ "loss": 1.7055,
492
+ "step": 690
493
+ },
494
+ {
495
+ "epoch": 0.4180976556667164,
496
+ "grad_norm": 0.06878198683261871,
497
+ "learning_rate": 7.962545966818062e-05,
498
+ "loss": 1.6987,
499
+ "step": 700
500
+ },
501
+ {
502
+ "epoch": 0.4240704793190981,
503
+ "grad_norm": 0.05675249919295311,
504
+ "learning_rate": 7.95865374849812e-05,
505
+ "loss": 1.6998,
506
+ "step": 710
507
+ },
508
+ {
509
+ "epoch": 0.43004330297147975,
510
+ "grad_norm": 0.05516457185149193,
511
+ "learning_rate": 7.954570209976239e-05,
512
+ "loss": 1.6852,
513
+ "step": 720
514
+ },
515
+ {
516
+ "epoch": 0.4360161266238614,
517
+ "grad_norm": 0.05688585340976715,
518
+ "learning_rate": 7.950295548608256e-05,
519
+ "loss": 1.6901,
520
+ "step": 730
521
+ },
522
+ {
523
+ "epoch": 0.4419889502762431,
524
+ "grad_norm": 0.07187242805957794,
525
+ "learning_rate": 7.945829970986898e-05,
526
+ "loss": 1.6894,
527
+ "step": 740
528
+ },
529
+ {
530
+ "epoch": 0.44796177392862474,
531
+ "grad_norm": 0.0548662506043911,
532
+ "learning_rate": 7.941173692931801e-05,
533
+ "loss": 1.6819,
534
+ "step": 750
535
+ },
536
+ {
537
+ "epoch": 0.4539345975810064,
538
+ "grad_norm": 0.0926741436123848,
539
+ "learning_rate": 7.93632693947908e-05,
540
+ "loss": 1.6797,
541
+ "step": 760
542
+ },
543
+ {
544
+ "epoch": 0.45990742123338807,
545
+ "grad_norm": 0.04921697825193405,
546
+ "learning_rate": 7.931289944870448e-05,
547
+ "loss": 1.6629,
548
+ "step": 770
549
+ },
550
+ {
551
+ "epoch": 0.46588024488576973,
552
+ "grad_norm": 0.07487112283706665,
553
+ "learning_rate": 7.92606295254191e-05,
554
+ "loss": 1.6737,
555
+ "step": 780
556
+ },
557
+ {
558
+ "epoch": 0.4718530685381514,
559
+ "grad_norm": 0.07180643826723099,
560
+ "learning_rate": 7.920646215111973e-05,
561
+ "loss": 1.6716,
562
+ "step": 790
563
+ },
564
+ {
565
+ "epoch": 0.47782589219053306,
566
+ "grad_norm": 0.050522662699222565,
567
+ "learning_rate": 7.915039994369462e-05,
568
+ "loss": 1.6597,
569
+ "step": 800
570
+ },
571
+ {
572
+ "epoch": 0.48379871584291473,
573
+ "grad_norm": 0.0628654807806015,
574
+ "learning_rate": 7.909244561260855e-05,
575
+ "loss": 1.6722,
576
+ "step": 810
577
+ },
578
+ {
579
+ "epoch": 0.4897715394952964,
580
+ "grad_norm": 0.07348821312189102,
581
+ "learning_rate": 7.903260195877184e-05,
582
+ "loss": 1.6718,
583
+ "step": 820
584
+ },
585
+ {
586
+ "epoch": 0.49574436314767806,
587
+ "grad_norm": 0.0689951702952385,
588
+ "learning_rate": 7.897087187440512e-05,
589
+ "loss": 1.6658,
590
+ "step": 830
591
+ },
592
+ {
593
+ "epoch": 0.5017171868000597,
594
+ "grad_norm": 0.05663711205124855,
595
+ "learning_rate": 7.890725834289946e-05,
596
+ "loss": 1.6636,
597
+ "step": 840
598
+ },
599
+ {
600
+ "epoch": 0.5076900104524414,
601
+ "grad_norm": 0.050597622990608215,
602
+ "learning_rate": 7.884176443867219e-05,
603
+ "loss": 1.6648,
604
+ "step": 850
605
+ },
606
+ {
607
+ "epoch": 0.513662834104823,
608
+ "grad_norm": 0.05792626738548279,
609
+ "learning_rate": 7.87743933270183e-05,
610
+ "loss": 1.6582,
611
+ "step": 860
612
+ },
613
+ {
614
+ "epoch": 0.5196356577572048,
615
+ "grad_norm": 0.05193015933036804,
616
+ "learning_rate": 7.870514826395755e-05,
617
+ "loss": 1.664,
618
+ "step": 870
619
+ },
620
+ {
621
+ "epoch": 0.5256084814095864,
622
+ "grad_norm": 0.05836218595504761,
623
+ "learning_rate": 7.863403259607698e-05,
624
+ "loss": 1.6535,
625
+ "step": 880
626
+ },
627
+ {
628
+ "epoch": 0.531581305061968,
629
+ "grad_norm": 0.08420410752296448,
630
+ "learning_rate": 7.856104976036928e-05,
631
+ "loss": 1.6463,
632
+ "step": 890
633
+ },
634
+ {
635
+ "epoch": 0.5375541287143497,
636
+ "grad_norm": 0.06460799276828766,
637
+ "learning_rate": 7.848620328406663e-05,
638
+ "loss": 1.6615,
639
+ "step": 900
640
+ },
641
+ {
642
+ "epoch": 0.5435269523667313,
643
+ "grad_norm": 0.08191855251789093,
644
+ "learning_rate": 7.840949678447022e-05,
645
+ "loss": 1.6529,
646
+ "step": 910
647
+ },
648
+ {
649
+ "epoch": 0.549499776019113,
650
+ "grad_norm": 0.04835124313831329,
651
+ "learning_rate": 7.833093396877546e-05,
652
+ "loss": 1.6508,
653
+ "step": 920
654
+ },
655
+ {
656
+ "epoch": 0.5554725996714946,
657
+ "grad_norm": 0.047752317041158676,
658
+ "learning_rate": 7.82505186338928e-05,
659
+ "loss": 1.6484,
660
+ "step": 930
661
+ },
662
+ {
663
+ "epoch": 0.5614454233238764,
664
+ "grad_norm": 0.054417744278907776,
665
+ "learning_rate": 7.816825466626419e-05,
666
+ "loss": 1.6443,
667
+ "step": 940
668
+ },
669
+ {
670
+ "epoch": 0.567418246976258,
671
+ "grad_norm": 0.0538078136742115,
672
+ "learning_rate": 7.808414604167537e-05,
673
+ "loss": 1.6422,
674
+ "step": 950
675
+ },
676
+ {
677
+ "epoch": 0.5733910706286397,
678
+ "grad_norm": 0.04438367858529091,
679
+ "learning_rate": 7.799819682506353e-05,
680
+ "loss": 1.6443,
681
+ "step": 960
682
+ },
683
+ {
684
+ "epoch": 0.5793638942810213,
685
+ "grad_norm": 0.056033167988061905,
686
+ "learning_rate": 7.791041117032102e-05,
687
+ "loss": 1.6428,
688
+ "step": 970
689
+ },
690
+ {
691
+ "epoch": 0.585336717933403,
692
+ "grad_norm": 0.07095460593700409,
693
+ "learning_rate": 7.782079332009454e-05,
694
+ "loss": 1.6425,
695
+ "step": 980
696
+ },
697
+ {
698
+ "epoch": 0.5913095415857846,
699
+ "grad_norm": 0.05874691903591156,
700
+ "learning_rate": 7.772934760558005e-05,
701
+ "loss": 1.6346,
702
+ "step": 990
703
+ },
704
+ {
705
+ "epoch": 0.5972823652381664,
706
+ "grad_norm": 0.0521966814994812,
707
+ "learning_rate": 7.76360784463135e-05,
708
+ "loss": 1.6359,
709
+ "step": 1000
710
+ },
711
+ {
712
+ "epoch": 0.5972823652381664,
713
+ "eval_loss": 1.634853482246399,
714
+ "eval_runtime": 28.9256,
715
+ "eval_samples_per_second": 1197.311,
716
+ "eval_steps_per_second": 9.369,
717
+ "step": 1000
718
+ },
719
+ {
720
+ "epoch": 0.603255188890548,
721
+ "grad_norm": 0.052664998918771744,
722
+ "learning_rate": 7.754099034995727e-05,
723
+ "loss": 1.6383,
724
+ "step": 1010
725
+ },
726
+ {
727
+ "epoch": 0.6092280125429297,
728
+ "grad_norm": 0.08000710606575012,
729
+ "learning_rate": 7.744408791208214e-05,
730
+ "loss": 1.639,
731
+ "step": 1020
732
+ },
733
+ {
734
+ "epoch": 0.6152008361953113,
735
+ "grad_norm": 0.05873206630349159,
736
+ "learning_rate": 7.734537581594545e-05,
737
+ "loss": 1.632,
738
+ "step": 1030
739
+ },
740
+ {
741
+ "epoch": 0.621173659847693,
742
+ "grad_norm": 0.06116827204823494,
743
+ "learning_rate": 7.724485883226454e-05,
744
+ "loss": 1.6351,
745
+ "step": 1040
746
+ },
747
+ {
748
+ "epoch": 0.6271464835000746,
749
+ "grad_norm": 0.057659681886434555,
750
+ "learning_rate": 7.714254181898627e-05,
751
+ "loss": 1.637,
752
+ "step": 1050
753
+ },
754
+ {
755
+ "epoch": 0.6331193071524563,
756
+ "grad_norm": 0.05905848369002342,
757
+ "learning_rate": 7.703842972105228e-05,
758
+ "loss": 1.626,
759
+ "step": 1060
760
+ },
761
+ {
762
+ "epoch": 0.639092130804838,
763
+ "grad_norm": 0.0539986751973629,
764
+ "learning_rate": 7.693252757015991e-05,
765
+ "loss": 1.6278,
766
+ "step": 1070
767
+ },
768
+ {
769
+ "epoch": 0.6450649544572197,
770
+ "grad_norm": 0.062365371733903885,
771
+ "learning_rate": 7.682484048451908e-05,
772
+ "loss": 1.6187,
773
+ "step": 1080
774
+ },
775
+ {
776
+ "epoch": 0.6510377781096013,
777
+ "grad_norm": 0.0486634224653244,
778
+ "learning_rate": 7.671537366860494e-05,
779
+ "loss": 1.6223,
780
+ "step": 1090
781
+ },
782
+ {
783
+ "epoch": 0.657010601761983,
784
+ "grad_norm": 0.04700983688235283,
785
+ "learning_rate": 7.660413241290626e-05,
786
+ "loss": 1.6237,
787
+ "step": 1100
788
+ },
789
+ {
790
+ "epoch": 0.6629834254143646,
791
+ "grad_norm": 0.06423746794462204,
792
+ "learning_rate": 7.649112209366985e-05,
793
+ "loss": 1.6349,
794
+ "step": 1110
795
+ },
796
+ {
797
+ "epoch": 0.6689562490667463,
798
+ "grad_norm": 0.05183717608451843,
799
+ "learning_rate": 7.637634817264064e-05,
800
+ "loss": 1.6203,
801
+ "step": 1120
802
+ },
803
+ {
804
+ "epoch": 0.6749290727191279,
805
+ "grad_norm": 0.05448286980390549,
806
+ "learning_rate": 7.625981619679777e-05,
807
+ "loss": 1.6159,
808
+ "step": 1130
809
+ },
810
+ {
811
+ "epoch": 0.6809018963715097,
812
+ "grad_norm": 0.06012860685586929,
813
+ "learning_rate": 7.61415317980865e-05,
814
+ "loss": 1.6106,
815
+ "step": 1140
816
+ },
817
+ {
818
+ "epoch": 0.6868747200238913,
819
+ "grad_norm": 0.0491897277534008,
820
+ "learning_rate": 7.602150069314598e-05,
821
+ "loss": 1.613,
822
+ "step": 1150
823
+ },
824
+ {
825
+ "epoch": 0.692847543676273,
826
+ "grad_norm": 0.05050448700785637,
827
+ "learning_rate": 7.589972868303301e-05,
828
+ "loss": 1.6158,
829
+ "step": 1160
830
+ },
831
+ {
832
+ "epoch": 0.6988203673286546,
833
+ "grad_norm": 0.05027921870350838,
834
+ "learning_rate": 7.577622165294165e-05,
835
+ "loss": 1.6166,
836
+ "step": 1170
837
+ },
838
+ {
839
+ "epoch": 0.7047931909810363,
840
+ "grad_norm": 0.061239466071128845,
841
+ "learning_rate": 7.565098557191882e-05,
842
+ "loss": 1.607,
843
+ "step": 1180
844
+ },
845
+ {
846
+ "epoch": 0.7107660146334179,
847
+ "grad_norm": 0.04995877295732498,
848
+ "learning_rate": 7.552402649257578e-05,
849
+ "loss": 1.6152,
850
+ "step": 1190
851
+ },
852
+ {
853
+ "epoch": 0.7167388382857997,
854
+ "grad_norm": 0.04830503091216087,
855
+ "learning_rate": 7.539535055079569e-05,
856
+ "loss": 1.613,
857
+ "step": 1200
858
+ },
859
+ {
860
+ "epoch": 0.7227116619381813,
861
+ "grad_norm": 0.05787483602762222,
862
+ "learning_rate": 7.526496396543691e-05,
863
+ "loss": 1.614,
864
+ "step": 1210
865
+ },
866
+ {
867
+ "epoch": 0.728684485590563,
868
+ "grad_norm": 0.07437578588724136,
869
+ "learning_rate": 7.513287303803263e-05,
870
+ "loss": 1.6127,
871
+ "step": 1220
872
+ },
873
+ {
874
+ "epoch": 0.7346573092429446,
875
+ "grad_norm": 0.06587845832109451,
876
+ "learning_rate": 7.499908415248616e-05,
877
+ "loss": 1.6015,
878
+ "step": 1230
879
+ },
880
+ {
881
+ "epoch": 0.7406301328953263,
882
+ "grad_norm": 0.0692521184682846,
883
+ "learning_rate": 7.486360377476255e-05,
884
+ "loss": 1.6026,
885
+ "step": 1240
886
+ },
887
+ {
888
+ "epoch": 0.7466029565477079,
889
+ "grad_norm": 0.061289019882678986,
890
+ "learning_rate": 7.472643845257592e-05,
891
+ "loss": 1.6108,
892
+ "step": 1250
893
+ },
894
+ {
895
+ "epoch": 0.7525757802000896,
896
+ "grad_norm": 0.056076616048812866,
897
+ "learning_rate": 7.458759481507318e-05,
898
+ "loss": 1.6018,
899
+ "step": 1260
900
+ },
901
+ {
902
+ "epoch": 0.7585486038524712,
903
+ "grad_norm": 0.06620051711797714,
904
+ "learning_rate": 7.444707957251354e-05,
905
+ "loss": 1.6048,
906
+ "step": 1270
907
+ },
908
+ {
909
+ "epoch": 0.764521427504853,
910
+ "grad_norm": 0.05557152256369591,
911
+ "learning_rate": 7.430489951594422e-05,
912
+ "loss": 1.6091,
913
+ "step": 1280
914
+ },
915
+ {
916
+ "epoch": 0.7704942511572346,
917
+ "grad_norm": 0.04953812435269356,
918
+ "learning_rate": 7.416106151687224e-05,
919
+ "loss": 1.6026,
920
+ "step": 1290
921
+ },
922
+ {
923
+ "epoch": 0.7764670748096163,
924
+ "grad_norm": 0.042427971959114075,
925
+ "learning_rate": 7.40155725269324e-05,
926
+ "loss": 1.5983,
927
+ "step": 1300
928
+ },
929
+ {
930
+ "epoch": 0.7824398984619979,
931
+ "grad_norm": 0.05906856432557106,
932
+ "learning_rate": 7.386843957755123e-05,
933
+ "loss": 1.6008,
934
+ "step": 1310
935
+ },
936
+ {
937
+ "epoch": 0.7884127221143796,
938
+ "grad_norm": 0.04983474314212799,
939
+ "learning_rate": 7.371966977960713e-05,
940
+ "loss": 1.5973,
941
+ "step": 1320
942
+ },
943
+ {
944
+ "epoch": 0.7943855457667612,
945
+ "grad_norm": 0.0590224526822567,
946
+ "learning_rate": 7.356927032308682e-05,
947
+ "loss": 1.6011,
948
+ "step": 1330
949
+ },
950
+ {
951
+ "epoch": 0.8003583694191428,
952
+ "grad_norm": 0.057693641632795334,
953
+ "learning_rate": 7.341724847673775e-05,
954
+ "loss": 1.5942,
955
+ "step": 1340
956
+ },
957
+ {
958
+ "epoch": 0.8063311930715246,
959
+ "grad_norm": 0.040723856538534164,
960
+ "learning_rate": 7.326361158771688e-05,
961
+ "loss": 1.6011,
962
+ "step": 1350
963
+ },
964
+ {
965
+ "epoch": 0.8123040167239062,
966
+ "grad_norm": 0.05768086016178131,
967
+ "learning_rate": 7.31083670812355e-05,
968
+ "loss": 1.5999,
969
+ "step": 1360
970
+ },
971
+ {
972
+ "epoch": 0.8182768403762879,
973
+ "grad_norm": 0.06345749646425247,
974
+ "learning_rate": 7.29515224602005e-05,
975
+ "loss": 1.5985,
976
+ "step": 1370
977
+ },
978
+ {
979
+ "epoch": 0.8242496640286695,
980
+ "grad_norm": 0.06176001578569412,
981
+ "learning_rate": 7.27930853048516e-05,
982
+ "loss": 1.5971,
983
+ "step": 1380
984
+ },
985
+ {
986
+ "epoch": 0.8302224876810512,
987
+ "grad_norm": 0.05247745290398598,
988
+ "learning_rate": 7.263306327239516e-05,
989
+ "loss": 1.5958,
990
+ "step": 1390
991
+ },
992
+ {
993
+ "epoch": 0.8361953113334328,
994
+ "grad_norm": 0.05218351632356644,
995
+ "learning_rate": 7.247146409663401e-05,
996
+ "loss": 1.5981,
997
+ "step": 1400
998
+ },
999
+ {
1000
+ "epoch": 0.8421681349858146,
1001
+ "grad_norm": 0.0629679337143898,
1002
+ "learning_rate": 7.23082955875937e-05,
1003
+ "loss": 1.5949,
1004
+ "step": 1410
1005
+ },
1006
+ {
1007
+ "epoch": 0.8481409586381962,
1008
+ "grad_norm": 0.061205677688121796,
1009
+ "learning_rate": 7.214356563114505e-05,
1010
+ "loss": 1.5957,
1011
+ "step": 1420
1012
+ },
1013
+ {
1014
+ "epoch": 0.8541137822905779,
1015
+ "grad_norm": 0.06122026965022087,
1016
+ "learning_rate": 7.197728218862306e-05,
1017
+ "loss": 1.5911,
1018
+ "step": 1430
1019
+ },
1020
+ {
1021
+ "epoch": 0.8600866059429595,
1022
+ "grad_norm": 0.054293327033519745,
1023
+ "learning_rate": 7.180945329644204e-05,
1024
+ "loss": 1.5885,
1025
+ "step": 1440
1026
+ },
1027
+ {
1028
+ "epoch": 0.8660594295953412,
1029
+ "grad_norm": 0.04569542035460472,
1030
+ "learning_rate": 7.164008706570736e-05,
1031
+ "loss": 1.5893,
1032
+ "step": 1450
1033
+ },
1034
+ {
1035
+ "epoch": 0.8720322532477228,
1036
+ "grad_norm": 0.04415179416537285,
1037
+ "learning_rate": 7.146919168182333e-05,
1038
+ "loss": 1.5951,
1039
+ "step": 1460
1040
+ },
1041
+ {
1042
+ "epoch": 0.8780050769001045,
1043
+ "grad_norm": 0.052418701350688934,
1044
+ "learning_rate": 7.129677540409762e-05,
1045
+ "loss": 1.5999,
1046
+ "step": 1470
1047
+ },
1048
+ {
1049
+ "epoch": 0.8839779005524862,
1050
+ "grad_norm": 0.053583066910505295,
1051
+ "learning_rate": 7.112284656534215e-05,
1052
+ "loss": 1.5979,
1053
+ "step": 1480
1054
+ },
1055
+ {
1056
+ "epoch": 0.8899507242048679,
1057
+ "grad_norm": 0.06733547151088715,
1058
+ "learning_rate": 7.09474135714703e-05,
1059
+ "loss": 1.5871,
1060
+ "step": 1490
1061
+ },
1062
+ {
1063
+ "epoch": 0.8959235478572495,
1064
+ "grad_norm": 0.05455510690808296,
1065
+ "learning_rate": 7.07704849010907e-05,
1066
+ "loss": 1.5912,
1067
+ "step": 1500
1068
+ },
1069
+ {
1070
+ "epoch": 0.9018963715096312,
1071
+ "grad_norm": 0.05950945243239403,
1072
+ "learning_rate": 7.059206910509745e-05,
1073
+ "loss": 1.5958,
1074
+ "step": 1510
1075
+ },
1076
+ {
1077
+ "epoch": 0.9078691951620128,
1078
+ "grad_norm": 0.0513860359787941,
1079
+ "learning_rate": 7.041217480625683e-05,
1080
+ "loss": 1.5856,
1081
+ "step": 1520
1082
+ },
1083
+ {
1084
+ "epoch": 0.9138420188143945,
1085
+ "grad_norm": 0.05268612131476402,
1086
+ "learning_rate": 7.023081069879062e-05,
1087
+ "loss": 1.5846,
1088
+ "step": 1530
1089
+ },
1090
+ {
1091
+ "epoch": 0.9198148424667761,
1092
+ "grad_norm": 0.05923028290271759,
1093
+ "learning_rate": 7.004798554795586e-05,
1094
+ "loss": 1.5739,
1095
+ "step": 1540
1096
+ },
1097
+ {
1098
+ "epoch": 0.9257876661191579,
1099
+ "grad_norm": 0.04859180748462677,
1100
+ "learning_rate": 6.986370818962125e-05,
1101
+ "loss": 1.5927,
1102
+ "step": 1550
1103
+ },
1104
+ {
1105
+ "epoch": 0.9317604897715395,
1106
+ "grad_norm": 0.060852836817502975,
1107
+ "learning_rate": 6.967798752984012e-05,
1108
+ "loss": 1.5769,
1109
+ "step": 1560
1110
+ },
1111
+ {
1112
+ "epoch": 0.9377333134239212,
1113
+ "grad_norm": 0.053088609129190445,
1114
+ "learning_rate": 6.949083254442001e-05,
1115
+ "loss": 1.5845,
1116
+ "step": 1570
1117
+ },
1118
+ {
1119
+ "epoch": 0.9437061370763028,
1120
+ "grad_norm": 0.06042907387018204,
1121
+ "learning_rate": 6.930225227848887e-05,
1122
+ "loss": 1.5808,
1123
+ "step": 1580
1124
+ },
1125
+ {
1126
+ "epoch": 0.9496789607286845,
1127
+ "grad_norm": 0.05746331810951233,
1128
+ "learning_rate": 6.911225584605787e-05,
1129
+ "loss": 1.5821,
1130
+ "step": 1590
1131
+ },
1132
+ {
1133
+ "epoch": 0.9556517843810661,
1134
+ "grad_norm": 0.04398033022880554,
1135
+ "learning_rate": 6.892085242958098e-05,
1136
+ "loss": 1.5775,
1137
+ "step": 1600
1138
+ },
1139
+ {
1140
+ "epoch": 0.9616246080334478,
1141
+ "grad_norm": 0.050728365778923035,
1142
+ "learning_rate": 6.872805127951115e-05,
1143
+ "loss": 1.5749,
1144
+ "step": 1610
1145
+ },
1146
+ {
1147
+ "epoch": 0.9675974316858295,
1148
+ "grad_norm": 0.0519120879471302,
1149
+ "learning_rate": 6.85338617138533e-05,
1150
+ "loss": 1.5726,
1151
+ "step": 1620
1152
+ },
1153
+ {
1154
+ "epoch": 0.9735702553382112,
1155
+ "grad_norm": 0.052526745945215225,
1156
+ "learning_rate": 6.833829311771388e-05,
1157
+ "loss": 1.5793,
1158
+ "step": 1630
1159
+ },
1160
+ {
1161
+ "epoch": 0.9795430789905928,
1162
+ "grad_norm": 0.050527602434158325,
1163
+ "learning_rate": 6.814135494284735e-05,
1164
+ "loss": 1.5694,
1165
+ "step": 1640
1166
+ },
1167
+ {
1168
+ "epoch": 0.9855159026429745,
1169
+ "grad_norm": 0.08685663342475891,
1170
+ "learning_rate": 6.794305670719945e-05,
1171
+ "loss": 1.5803,
1172
+ "step": 1650
1173
+ },
1174
+ {
1175
+ "epoch": 0.9914887262953561,
1176
+ "grad_norm": 0.054428499191999435,
1177
+ "learning_rate": 6.774340799444703e-05,
1178
+ "loss": 1.5757,
1179
+ "step": 1660
1180
+ },
1181
+ {
1182
+ "epoch": 0.9974615499477378,
1183
+ "grad_norm": 0.05870772898197174,
1184
+ "learning_rate": 6.754241845353506e-05,
1185
+ "loss": 1.571,
1186
+ "step": 1670
1187
+ },
1188
+ {
1189
+ "epoch": 1.0034343736001194,
1190
+ "grad_norm": 0.05581633001565933,
1191
+ "learning_rate": 6.734009779821018e-05,
1192
+ "loss": 1.5659,
1193
+ "step": 1680
1194
+ },
1195
+ {
1196
+ "epoch": 1.0094071972525012,
1197
+ "grad_norm": 0.05493481829762459,
1198
+ "learning_rate": 6.713645580655125e-05,
1199
+ "loss": 1.5686,
1200
+ "step": 1690
1201
+ },
1202
+ {
1203
+ "epoch": 1.0153800209048829,
1204
+ "grad_norm": 0.05471092462539673,
1205
+ "learning_rate": 6.693150232049686e-05,
1206
+ "loss": 1.5649,
1207
+ "step": 1700
1208
+ },
1209
+ {
1210
+ "epoch": 1.0213528445572644,
1211
+ "grad_norm": 0.053526680916547775,
1212
+ "learning_rate": 6.672524724536956e-05,
1213
+ "loss": 1.5671,
1214
+ "step": 1710
1215
+ },
1216
+ {
1217
+ "epoch": 1.027325668209646,
1218
+ "grad_norm": 0.06532900780439377,
1219
+ "learning_rate": 6.651770054939722e-05,
1220
+ "loss": 1.5614,
1221
+ "step": 1720
1222
+ },
1223
+ {
1224
+ "epoch": 1.0332984918620278,
1225
+ "grad_norm": 0.051929574459791183,
1226
+ "learning_rate": 6.630887226323128e-05,
1227
+ "loss": 1.556,
1228
+ "step": 1730
1229
+ },
1230
+ {
1231
+ "epoch": 1.0392713155144095,
1232
+ "grad_norm": 0.06289497762918472,
1233
+ "learning_rate": 6.609877247946186e-05,
1234
+ "loss": 1.5634,
1235
+ "step": 1740
1236
+ },
1237
+ {
1238
+ "epoch": 1.045244139166791,
1239
+ "grad_norm": 0.05371445044875145,
1240
+ "learning_rate": 6.588741135213012e-05,
1241
+ "loss": 1.5645,
1242
+ "step": 1750
1243
+ },
1244
+ {
1245
+ "epoch": 1.0512169628191728,
1246
+ "grad_norm": 0.04851632937788963,
1247
+ "learning_rate": 6.567479909623746e-05,
1248
+ "loss": 1.5648,
1249
+ "step": 1760
1250
+ },
1251
+ {
1252
+ "epoch": 1.0571897864715545,
1253
+ "grad_norm": 0.06357111036777496,
1254
+ "learning_rate": 6.546094598725186e-05,
1255
+ "loss": 1.5568,
1256
+ "step": 1770
1257
+ },
1258
+ {
1259
+ "epoch": 1.063162610123936,
1260
+ "grad_norm": 0.07035905867815018,
1261
+ "learning_rate": 6.524586236061117e-05,
1262
+ "loss": 1.5519,
1263
+ "step": 1780
1264
+ },
1265
+ {
1266
+ "epoch": 1.0691354337763177,
1267
+ "grad_norm": 0.05517163127660751,
1268
+ "learning_rate": 6.502955861122377e-05,
1269
+ "loss": 1.5566,
1270
+ "step": 1790
1271
+ },
1272
+ {
1273
+ "epoch": 1.0751082574286994,
1274
+ "grad_norm": 0.0504322424530983,
1275
+ "learning_rate": 6.481204519296606e-05,
1276
+ "loss": 1.5668,
1277
+ "step": 1800
1278
+ },
1279
+ {
1280
+ "epoch": 1.0810810810810811,
1281
+ "grad_norm": 0.051910221576690674,
1282
+ "learning_rate": 6.459333261817726e-05,
1283
+ "loss": 1.5585,
1284
+ "step": 1810
1285
+ },
1286
+ {
1287
+ "epoch": 1.0870539047334629,
1288
+ "grad_norm": 0.07319536805152893,
1289
+ "learning_rate": 6.43734314571514e-05,
1290
+ "loss": 1.5599,
1291
+ "step": 1820
1292
+ },
1293
+ {
1294
+ "epoch": 1.0930267283858444,
1295
+ "grad_norm": 0.05212223529815674,
1296
+ "learning_rate": 6.415235233762635e-05,
1297
+ "loss": 1.5597,
1298
+ "step": 1830
1299
+ },
1300
+ {
1301
+ "epoch": 1.098999552038226,
1302
+ "grad_norm": 0.05524059012532234,
1303
+ "learning_rate": 6.393010594427034e-05,
1304
+ "loss": 1.5449,
1305
+ "step": 1840
1306
+ },
1307
+ {
1308
+ "epoch": 1.1049723756906078,
1309
+ "grad_norm": 0.044485364109277725,
1310
+ "learning_rate": 6.370670301816544e-05,
1311
+ "loss": 1.5584,
1312
+ "step": 1850
1313
+ },
1314
+ {
1315
+ "epoch": 1.1109451993429893,
1316
+ "grad_norm": 0.04716966673731804,
1317
+ "learning_rate": 6.348215435628852e-05,
1318
+ "loss": 1.5577,
1319
+ "step": 1860
1320
+ },
1321
+ {
1322
+ "epoch": 1.116918022995371,
1323
+ "grad_norm": 0.04776601493358612,
1324
+ "learning_rate": 6.32564708109894e-05,
1325
+ "loss": 1.5597,
1326
+ "step": 1870
1327
+ },
1328
+ {
1329
+ "epoch": 1.1228908466477527,
1330
+ "grad_norm": 0.05379948392510414,
1331
+ "learning_rate": 6.302966328946638e-05,
1332
+ "loss": 1.5542,
1333
+ "step": 1880
1334
+ },
1335
+ {
1336
+ "epoch": 1.1288636703001345,
1337
+ "grad_norm": 0.05076327919960022,
1338
+ "learning_rate": 6.280174275323915e-05,
1339
+ "loss": 1.5564,
1340
+ "step": 1890
1341
+ },
1342
+ {
1343
+ "epoch": 1.134836493952516,
1344
+ "grad_norm": 0.0562434047460556,
1345
+ "learning_rate": 6.257272021761884e-05,
1346
+ "loss": 1.5597,
1347
+ "step": 1900
1348
+ },
1349
+ {
1350
+ "epoch": 1.1408093176048977,
1351
+ "grad_norm": 0.045845337212085724,
1352
+ "learning_rate": 6.234260675117595e-05,
1353
+ "loss": 1.5535,
1354
+ "step": 1910
1355
+ },
1356
+ {
1357
+ "epoch": 1.1467821412572794,
1358
+ "grad_norm": 0.04580407217144966,
1359
+ "learning_rate": 6.21114134752051e-05,
1360
+ "loss": 1.5486,
1361
+ "step": 1920
1362
+ },
1363
+ {
1364
+ "epoch": 1.1527549649096611,
1365
+ "grad_norm": 0.05752042680978775,
1366
+ "learning_rate": 6.187915156318775e-05,
1367
+ "loss": 1.5454,
1368
+ "step": 1930
1369
+ },
1370
+ {
1371
+ "epoch": 1.1587277885620426,
1372
+ "grad_norm": 0.05608632043004036,
1373
+ "learning_rate": 6.164583224025215e-05,
1374
+ "loss": 1.5545,
1375
+ "step": 1940
1376
+ },
1377
+ {
1378
+ "epoch": 1.1647006122144243,
1379
+ "grad_norm": 0.047604430466890335,
1380
+ "learning_rate": 6.141146678263076e-05,
1381
+ "loss": 1.5531,
1382
+ "step": 1950
1383
+ },
1384
+ {
1385
+ "epoch": 1.170673435866806,
1386
+ "grad_norm": 0.04514037445187569,
1387
+ "learning_rate": 6.117606651711537e-05,
1388
+ "loss": 1.5547,
1389
+ "step": 1960
1390
+ },
1391
+ {
1392
+ "epoch": 1.1766462595191878,
1393
+ "grad_norm": 0.05768571048974991,
1394
+ "learning_rate": 6.0939642820509564e-05,
1395
+ "loss": 1.5496,
1396
+ "step": 1970
1397
+ },
1398
+ {
1399
+ "epoch": 1.1826190831715693,
1400
+ "grad_norm": 0.04222779721021652,
1401
+ "learning_rate": 6.070220711907903e-05,
1402
+ "loss": 1.5469,
1403
+ "step": 1980
1404
+ },
1405
+ {
1406
+ "epoch": 1.188591906823951,
1407
+ "grad_norm": 0.05183190852403641,
1408
+ "learning_rate": 6.046377088799923e-05,
1409
+ "loss": 1.5526,
1410
+ "step": 1990
1411
+ },
1412
+ {
1413
+ "epoch": 1.1945647304763327,
1414
+ "grad_norm": 0.04888539016246796,
1415
+ "learning_rate": 6.0224345650800826e-05,
1416
+ "loss": 1.5579,
1417
+ "step": 2000
1418
+ },
1419
+ {
1420
+ "epoch": 1.1945647304763327,
1421
+ "eval_loss": 1.5546131134033203,
1422
+ "eval_runtime": 20.1679,
1423
+ "eval_samples_per_second": 1717.237,
1424
+ "eval_steps_per_second": 13.437,
1425
+ "step": 2000
1426
+ },
1427
+ {
1428
+ "epoch": 1.2005375541287144,
1429
+ "grad_norm": 0.049841009080410004,
1430
+ "learning_rate": 5.998394297881277e-05,
1431
+ "loss": 1.5531,
1432
+ "step": 2010
1433
+ },
1434
+ {
1435
+ "epoch": 1.206510377781096,
1436
+ "grad_norm": 0.04911394044756889,
1437
+ "learning_rate": 5.974257449060306e-05,
1438
+ "loss": 1.5512,
1439
+ "step": 2020
1440
+ },
1441
+ {
1442
+ "epoch": 1.2124832014334777,
1443
+ "grad_norm": 0.05170886963605881,
1444
+ "learning_rate": 5.9500251851417206e-05,
1445
+ "loss": 1.5439,
1446
+ "step": 2030
1447
+ },
1448
+ {
1449
+ "epoch": 1.2184560250858594,
1450
+ "grad_norm": 0.04615171626210213,
1451
+ "learning_rate": 5.925698677261449e-05,
1452
+ "loss": 1.5453,
1453
+ "step": 2040
1454
+ },
1455
+ {
1456
+ "epoch": 1.224428848738241,
1457
+ "grad_norm": 0.04724368825554848,
1458
+ "learning_rate": 5.901279101110191e-05,
1459
+ "loss": 1.5434,
1460
+ "step": 2050
1461
+ },
1462
+ {
1463
+ "epoch": 1.2304016723906226,
1464
+ "grad_norm": 0.06991260498762131,
1465
+ "learning_rate": 5.8767676368766016e-05,
1466
+ "loss": 1.5489,
1467
+ "step": 2060
1468
+ },
1469
+ {
1470
+ "epoch": 1.2363744960430043,
1471
+ "grad_norm": 0.055575910955667496,
1472
+ "learning_rate": 5.852165469190251e-05,
1473
+ "loss": 1.5514,
1474
+ "step": 2070
1475
+ },
1476
+ {
1477
+ "epoch": 1.242347319695386,
1478
+ "grad_norm": 0.04874608293175697,
1479
+ "learning_rate": 5.82747378706437e-05,
1480
+ "loss": 1.5523,
1481
+ "step": 2080
1482
+ },
1483
+ {
1484
+ "epoch": 1.2483201433477678,
1485
+ "grad_norm": 0.05960864573717117,
1486
+ "learning_rate": 5.8026937838383914e-05,
1487
+ "loss": 1.5469,
1488
+ "step": 2090
1489
+ },
1490
+ {
1491
+ "epoch": 1.2542929670001493,
1492
+ "grad_norm": 0.07086056470870972,
1493
+ "learning_rate": 5.77782665712027e-05,
1494
+ "loss": 1.5497,
1495
+ "step": 2100
1496
+ },
1497
+ {
1498
+ "epoch": 1.260265790652531,
1499
+ "grad_norm": 0.0472436398267746,
1500
+ "learning_rate": 5.752873608728603e-05,
1501
+ "loss": 1.5425,
1502
+ "step": 2110
1503
+ },
1504
+ {
1505
+ "epoch": 1.2662386143049127,
1506
+ "grad_norm": 0.06843575835227966,
1507
+ "learning_rate": 5.7278358446345545e-05,
1508
+ "loss": 1.542,
1509
+ "step": 2120
1510
+ },
1511
+ {
1512
+ "epoch": 1.2722114379572944,
1513
+ "grad_norm": 0.04991114139556885,
1514
+ "learning_rate": 5.702714574903561e-05,
1515
+ "loss": 1.5423,
1516
+ "step": 2130
1517
+ },
1518
+ {
1519
+ "epoch": 1.278184261609676,
1520
+ "grad_norm": 0.04601559415459633,
1521
+ "learning_rate": 5.6775110136368576e-05,
1522
+ "loss": 1.5357,
1523
+ "step": 2140
1524
+ },
1525
+ {
1526
+ "epoch": 1.2841570852620576,
1527
+ "grad_norm": 0.042647868394851685,
1528
+ "learning_rate": 5.6522263789127937e-05,
1529
+ "loss": 1.5386,
1530
+ "step": 2150
1531
+ },
1532
+ {
1533
+ "epoch": 1.2901299089144393,
1534
+ "grad_norm": 0.06261768937110901,
1535
+ "learning_rate": 5.626861892727969e-05,
1536
+ "loss": 1.5428,
1537
+ "step": 2160
1538
+ },
1539
+ {
1540
+ "epoch": 1.2961027325668208,
1541
+ "grad_norm": 0.04735434427857399,
1542
+ "learning_rate": 5.601418780938175e-05,
1543
+ "loss": 1.5395,
1544
+ "step": 2170
1545
+ },
1546
+ {
1547
+ "epoch": 1.3020755562192026,
1548
+ "grad_norm": 0.048824459314346313,
1549
+ "learning_rate": 5.575898273199146e-05,
1550
+ "loss": 1.5418,
1551
+ "step": 2180
1552
+ },
1553
+ {
1554
+ "epoch": 1.3080483798715843,
1555
+ "grad_norm": 0.04974917694926262,
1556
+ "learning_rate": 5.5503016029071354e-05,
1557
+ "loss": 1.5371,
1558
+ "step": 2190
1559
+ },
1560
+ {
1561
+ "epoch": 1.314021203523966,
1562
+ "grad_norm": 0.05275791883468628,
1563
+ "learning_rate": 5.5246300071392985e-05,
1564
+ "loss": 1.5364,
1565
+ "step": 2200
1566
+ },
1567
+ {
1568
+ "epoch": 1.3199940271763477,
1569
+ "grad_norm": 0.0487825907766819,
1570
+ "learning_rate": 5.4988847265939146e-05,
1571
+ "loss": 1.5436,
1572
+ "step": 2210
1573
+ },
1574
+ {
1575
+ "epoch": 1.3259668508287292,
1576
+ "grad_norm": 0.06100558117032051,
1577
+ "learning_rate": 5.473067005530416e-05,
1578
+ "loss": 1.5351,
1579
+ "step": 2220
1580
+ },
1581
+ {
1582
+ "epoch": 1.331939674481111,
1583
+ "grad_norm": 0.07098929584026337,
1584
+ "learning_rate": 5.447178091709262e-05,
1585
+ "loss": 1.5463,
1586
+ "step": 2230
1587
+ },
1588
+ {
1589
+ "epoch": 1.3379124981334927,
1590
+ "grad_norm": 0.06729080528020859,
1591
+ "learning_rate": 5.421219236331624e-05,
1592
+ "loss": 1.5382,
1593
+ "step": 2240
1594
+ },
1595
+ {
1596
+ "epoch": 1.3438853217858742,
1597
+ "grad_norm": 0.05485675856471062,
1598
+ "learning_rate": 5.395191693978927e-05,
1599
+ "loss": 1.5349,
1600
+ "step": 2250
1601
+ },
1602
+ {
1603
+ "epoch": 1.3498581454382559,
1604
+ "grad_norm": 0.05816954746842384,
1605
+ "learning_rate": 5.3690967225522076e-05,
1606
+ "loss": 1.5406,
1607
+ "step": 2260
1608
+ },
1609
+ {
1610
+ "epoch": 1.3558309690906376,
1611
+ "grad_norm": 0.044427741318941116,
1612
+ "learning_rate": 5.342935583211327e-05,
1613
+ "loss": 1.5309,
1614
+ "step": 2270
1615
+ },
1616
+ {
1617
+ "epoch": 1.3618037927430193,
1618
+ "grad_norm": 0.05544894561171532,
1619
+ "learning_rate": 5.31670954031401e-05,
1620
+ "loss": 1.5365,
1621
+ "step": 2280
1622
+ },
1623
+ {
1624
+ "epoch": 1.367776616395401,
1625
+ "grad_norm": 0.04774465411901474,
1626
+ "learning_rate": 5.290419861354753e-05,
1627
+ "loss": 1.5303,
1628
+ "step": 2290
1629
+ },
1630
+ {
1631
+ "epoch": 1.3737494400477825,
1632
+ "grad_norm": 0.050910986959934235,
1633
+ "learning_rate": 5.264067816903552e-05,
1634
+ "loss": 1.5384,
1635
+ "step": 2300
1636
+ },
1637
+ {
1638
+ "epoch": 1.3797222637001643,
1639
+ "grad_norm": 0.05830187723040581,
1640
+ "learning_rate": 5.2376546805445054e-05,
1641
+ "loss": 1.535,
1642
+ "step": 2310
1643
+ },
1644
+ {
1645
+ "epoch": 1.385695087352546,
1646
+ "grad_norm": 0.0521889254450798,
1647
+ "learning_rate": 5.211181728814262e-05,
1648
+ "loss": 1.5348,
1649
+ "step": 2320
1650
+ },
1651
+ {
1652
+ "epoch": 1.3916679110049275,
1653
+ "grad_norm": 0.04742933064699173,
1654
+ "learning_rate": 5.18465024114032e-05,
1655
+ "loss": 1.5421,
1656
+ "step": 2330
1657
+ },
1658
+ {
1659
+ "epoch": 1.3976407346573092,
1660
+ "grad_norm": 0.05169609189033508,
1661
+ "learning_rate": 5.158061499779201e-05,
1662
+ "loss": 1.5322,
1663
+ "step": 2340
1664
+ },
1665
+ {
1666
+ "epoch": 1.403613558309691,
1667
+ "grad_norm": 0.05307742580771446,
1668
+ "learning_rate": 5.131416789754472e-05,
1669
+ "loss": 1.538,
1670
+ "step": 2350
1671
+ },
1672
+ {
1673
+ "epoch": 1.4095863819620726,
1674
+ "grad_norm": 0.04581635445356369,
1675
+ "learning_rate": 5.1047173987946474e-05,
1676
+ "loss": 1.5313,
1677
+ "step": 2360
1678
+ },
1679
+ {
1680
+ "epoch": 1.4155592056144544,
1681
+ "grad_norm": 0.04794102534651756,
1682
+ "learning_rate": 5.077964617270947e-05,
1683
+ "loss": 1.5357,
1684
+ "step": 2370
1685
+ },
1686
+ {
1687
+ "epoch": 1.4215320292668359,
1688
+ "grad_norm": 0.043038323521614075,
1689
+ "learning_rate": 5.051159738134937e-05,
1690
+ "loss": 1.5362,
1691
+ "step": 2380
1692
+ },
1693
+ {
1694
+ "epoch": 1.4275048529192176,
1695
+ "grad_norm": 0.052804794162511826,
1696
+ "learning_rate": 5.024304056856039e-05,
1697
+ "loss": 1.5299,
1698
+ "step": 2390
1699
+ },
1700
+ {
1701
+ "epoch": 1.4334776765715993,
1702
+ "grad_norm": 0.051046222448349,
1703
+ "learning_rate": 4.997398871358928e-05,
1704
+ "loss": 1.529,
1705
+ "step": 2400
1706
+ },
1707
+ {
1708
+ "epoch": 1.4394505002239808,
1709
+ "grad_norm": 0.056139182299375534,
1710
+ "learning_rate": 4.970445481960793e-05,
1711
+ "loss": 1.5368,
1712
+ "step": 2410
1713
+ },
1714
+ {
1715
+ "epoch": 1.4454233238763625,
1716
+ "grad_norm": 0.04890932887792587,
1717
+ "learning_rate": 4.9434451913085e-05,
1718
+ "loss": 1.5308,
1719
+ "step": 2420
1720
+ },
1721
+ {
1722
+ "epoch": 1.4513961475287442,
1723
+ "grad_norm": 0.04679281637072563,
1724
+ "learning_rate": 4.916399304315636e-05,
1725
+ "loss": 1.5353,
1726
+ "step": 2430
1727
+ },
1728
+ {
1729
+ "epoch": 1.457368971181126,
1730
+ "grad_norm": 0.05536729097366333,
1731
+ "learning_rate": 4.8893091280994415e-05,
1732
+ "loss": 1.5314,
1733
+ "step": 2440
1734
+ },
1735
+ {
1736
+ "epoch": 1.4633417948335075,
1737
+ "grad_norm": 0.04933058097958565,
1738
+ "learning_rate": 4.862175971917637e-05,
1739
+ "loss": 1.5301,
1740
+ "step": 2450
1741
+ },
1742
+ {
1743
+ "epoch": 1.4693146184858892,
1744
+ "grad_norm": 0.05884556844830513,
1745
+ "learning_rate": 4.835001147105148e-05,
1746
+ "loss": 1.5213,
1747
+ "step": 2460
1748
+ },
1749
+ {
1750
+ "epoch": 1.475287442138271,
1751
+ "grad_norm": 0.04465237259864807,
1752
+ "learning_rate": 4.807785967010729e-05,
1753
+ "loss": 1.5288,
1754
+ "step": 2470
1755
+ },
1756
+ {
1757
+ "epoch": 1.4812602657906524,
1758
+ "grad_norm": 0.04548431187868118,
1759
+ "learning_rate": 4.780531746933491e-05,
1760
+ "loss": 1.5353,
1761
+ "step": 2480
1762
+ },
1763
+ {
1764
+ "epoch": 1.4872330894430341,
1765
+ "grad_norm": 0.047798071056604385,
1766
+ "learning_rate": 4.7532398040593295e-05,
1767
+ "loss": 1.5261,
1768
+ "step": 2490
1769
+ },
1770
+ {
1771
+ "epoch": 1.4932059130954158,
1772
+ "grad_norm": 0.05616561323404312,
1773
+ "learning_rate": 4.7259114573972715e-05,
1774
+ "loss": 1.5343,
1775
+ "step": 2500
1776
+ },
1777
+ {
1778
+ "epoch": 1.4991787367477976,
1779
+ "grad_norm": 0.053861986845731735,
1780
+ "learning_rate": 4.6985480277157215e-05,
1781
+ "loss": 1.5249,
1782
+ "step": 2510
1783
+ },
1784
+ {
1785
+ "epoch": 1.5051515604001793,
1786
+ "grad_norm": 0.05890486761927605,
1787
+ "learning_rate": 4.671150837478634e-05,
1788
+ "loss": 1.5357,
1789
+ "step": 2520
1790
+ },
1791
+ {
1792
+ "epoch": 1.511124384052561,
1793
+ "grad_norm": 0.056382015347480774,
1794
+ "learning_rate": 4.643721210781601e-05,
1795
+ "loss": 1.5159,
1796
+ "step": 2530
1797
+ },
1798
+ {
1799
+ "epoch": 1.5170972077049425,
1800
+ "grad_norm": 0.051396943628787994,
1801
+ "learning_rate": 4.6162604732878515e-05,
1802
+ "loss": 1.5301,
1803
+ "step": 2540
1804
+ },
1805
+ {
1806
+ "epoch": 1.5230700313573242,
1807
+ "grad_norm": 0.04754629358649254,
1808
+ "learning_rate": 4.588769952164191e-05,
1809
+ "loss": 1.5277,
1810
+ "step": 2550
1811
+ },
1812
+ {
1813
+ "epoch": 1.5290428550097057,
1814
+ "grad_norm": 0.0532587394118309,
1815
+ "learning_rate": 4.561250976016851e-05,
1816
+ "loss": 1.5201,
1817
+ "step": 2560
1818
+ },
1819
+ {
1820
+ "epoch": 1.5350156786620874,
1821
+ "grad_norm": 0.059257134795188904,
1822
+ "learning_rate": 4.5337048748272905e-05,
1823
+ "loss": 1.5265,
1824
+ "step": 2570
1825
+ },
1826
+ {
1827
+ "epoch": 1.5409885023144692,
1828
+ "grad_norm": 0.05495699495077133,
1829
+ "learning_rate": 4.5061329798879064e-05,
1830
+ "loss": 1.5247,
1831
+ "step": 2580
1832
+ },
1833
+ {
1834
+ "epoch": 1.5469613259668509,
1835
+ "grad_norm": 0.04833153635263443,
1836
+ "learning_rate": 4.478536623737699e-05,
1837
+ "loss": 1.5291,
1838
+ "step": 2590
1839
+ },
1840
+ {
1841
+ "epoch": 1.5529341496192326,
1842
+ "grad_norm": 0.048605091869831085,
1843
+ "learning_rate": 4.450917140097869e-05,
1844
+ "loss": 1.5277,
1845
+ "step": 2600
1846
+ },
1847
+ {
1848
+ "epoch": 1.5589069732716143,
1849
+ "grad_norm": 0.06368768960237503,
1850
+ "learning_rate": 4.4232758638073585e-05,
1851
+ "loss": 1.5306,
1852
+ "step": 2610
1853
+ },
1854
+ {
1855
+ "epoch": 1.5648797969239958,
1856
+ "grad_norm": 0.04569351673126221,
1857
+ "learning_rate": 4.395614130758344e-05,
1858
+ "loss": 1.5208,
1859
+ "step": 2620
1860
+ },
1861
+ {
1862
+ "epoch": 1.5708526205763775,
1863
+ "grad_norm": 0.07877717167139053,
1864
+ "learning_rate": 4.367933277831666e-05,
1865
+ "loss": 1.5152,
1866
+ "step": 2630
1867
+ },
1868
+ {
1869
+ "epoch": 1.576825444228759,
1870
+ "grad_norm": 0.05059320852160454,
1871
+ "learning_rate": 4.34023464283222e-05,
1872
+ "loss": 1.5199,
1873
+ "step": 2640
1874
+ },
1875
+ {
1876
+ "epoch": 1.5827982678811408,
1877
+ "grad_norm": 0.05248813331127167,
1878
+ "learning_rate": 4.312519564424306e-05,
1879
+ "loss": 1.5236,
1880
+ "step": 2650
1881
+ },
1882
+ {
1883
+ "epoch": 1.5887710915335225,
1884
+ "grad_norm": 0.051895346492528915,
1885
+ "learning_rate": 4.2847893820669244e-05,
1886
+ "loss": 1.5225,
1887
+ "step": 2660
1888
+ },
1889
+ {
1890
+ "epoch": 1.5947439151859042,
1891
+ "grad_norm": 0.048129428178071976,
1892
+ "learning_rate": 4.2570454359490455e-05,
1893
+ "loss": 1.5259,
1894
+ "step": 2670
1895
+ },
1896
+ {
1897
+ "epoch": 1.600716738838286,
1898
+ "grad_norm": 0.049009375274181366,
1899
+ "learning_rate": 4.2292890669248364e-05,
1900
+ "loss": 1.533,
1901
+ "step": 2680
1902
+ },
1903
+ {
1904
+ "epoch": 1.6066895624906674,
1905
+ "grad_norm": 0.05925741046667099,
1906
+ "learning_rate": 4.2015216164488575e-05,
1907
+ "loss": 1.5242,
1908
+ "step": 2690
1909
+ },
1910
+ {
1911
+ "epoch": 1.6126623861430491,
1912
+ "grad_norm": 0.051209457218647,
1913
+ "learning_rate": 4.173744426511231e-05,
1914
+ "loss": 1.5348,
1915
+ "step": 2700
1916
+ },
1917
+ {
1918
+ "epoch": 1.6186352097954306,
1919
+ "grad_norm": 0.04731997102499008,
1920
+ "learning_rate": 4.1459588395727876e-05,
1921
+ "loss": 1.5179,
1922
+ "step": 2710
1923
+ },
1924
+ {
1925
+ "epoch": 1.6246080334478123,
1926
+ "grad_norm": 0.04640951007604599,
1927
+ "learning_rate": 4.118166198500178e-05,
1928
+ "loss": 1.5218,
1929
+ "step": 2720
1930
+ },
1931
+ {
1932
+ "epoch": 1.630580857100194,
1933
+ "grad_norm": 0.05060356855392456,
1934
+ "learning_rate": 4.090367846500976e-05,
1935
+ "loss": 1.5184,
1936
+ "step": 2730
1937
+ },
1938
+ {
1939
+ "epoch": 1.6365536807525758,
1940
+ "grad_norm": 0.04525948315858841,
1941
+ "learning_rate": 4.062565127058764e-05,
1942
+ "loss": 1.5207,
1943
+ "step": 2740
1944
+ },
1945
+ {
1946
+ "epoch": 1.6425265044049575,
1947
+ "grad_norm": 0.0447864904999733,
1948
+ "learning_rate": 4.0347593838682016e-05,
1949
+ "loss": 1.5265,
1950
+ "step": 2750
1951
+ },
1952
+ {
1953
+ "epoch": 1.6484993280573392,
1954
+ "grad_norm": 0.06339412927627563,
1955
+ "learning_rate": 4.006951960770084e-05,
1956
+ "loss": 1.5296,
1957
+ "step": 2760
1958
+ },
1959
+ {
1960
+ "epoch": 1.6544721517097207,
1961
+ "grad_norm": 0.05479173734784126,
1962
+ "learning_rate": 3.979144201686396e-05,
1963
+ "loss": 1.5167,
1964
+ "step": 2770
1965
+ },
1966
+ {
1967
+ "epoch": 1.6604449753621024,
1968
+ "grad_norm": 0.05605393648147583,
1969
+ "learning_rate": 3.951337450555361e-05,
1970
+ "loss": 1.5208,
1971
+ "step": 2780
1972
+ },
1973
+ {
1974
+ "epoch": 1.666417799014484,
1975
+ "grad_norm": 0.04500933736562729,
1976
+ "learning_rate": 3.923533051266486e-05,
1977
+ "loss": 1.5199,
1978
+ "step": 2790
1979
+ },
1980
+ {
1981
+ "epoch": 1.6723906226668657,
1982
+ "grad_norm": 0.044439464807510376,
1983
+ "learning_rate": 3.8957323475956165e-05,
1984
+ "loss": 1.5254,
1985
+ "step": 2800
1986
+ },
1987
+ {
1988
+ "epoch": 1.6783634463192474,
1989
+ "grad_norm": 0.051942795515060425,
1990
+ "learning_rate": 3.867936683139991e-05,
1991
+ "loss": 1.5168,
1992
+ "step": 2810
1993
+ },
1994
+ {
1995
+ "epoch": 1.684336269971629,
1996
+ "grad_norm": 0.05696643143892288,
1997
+ "learning_rate": 3.840147401253305e-05,
1998
+ "loss": 1.5261,
1999
+ "step": 2820
2000
+ },
2001
+ {
2002
+ "epoch": 1.6903090936240108,
2003
+ "grad_norm": 0.0423273928463459,
2004
+ "learning_rate": 3.812365844980782e-05,
2005
+ "loss": 1.5166,
2006
+ "step": 2830
2007
+ },
2008
+ {
2009
+ "epoch": 1.6962819172763925,
2010
+ "grad_norm": 0.04251600056886673,
2011
+ "learning_rate": 3.784593356994275e-05,
2012
+ "loss": 1.514,
2013
+ "step": 2840
2014
+ },
2015
+ {
2016
+ "epoch": 1.702254740928774,
2017
+ "grad_norm": 0.06778108328580856,
2018
+ "learning_rate": 3.7568312795273675e-05,
2019
+ "loss": 1.5161,
2020
+ "step": 2850
2021
+ },
2022
+ {
2023
+ "epoch": 1.7082275645811558,
2024
+ "grad_norm": 0.046843383461236954,
2025
+ "learning_rate": 3.729080954310509e-05,
2026
+ "loss": 1.5215,
2027
+ "step": 2860
2028
+ },
2029
+ {
2030
+ "epoch": 1.7142003882335373,
2031
+ "grad_norm": 0.04683705046772957,
2032
+ "learning_rate": 3.701343722506164e-05,
2033
+ "loss": 1.5191,
2034
+ "step": 2870
2035
+ },
2036
+ {
2037
+ "epoch": 1.720173211885919,
2038
+ "grad_norm": 0.04883548244833946,
2039
+ "learning_rate": 3.673620924644e-05,
2040
+ "loss": 1.5175,
2041
+ "step": 2880
2042
+ },
2043
+ {
2044
+ "epoch": 1.7261460355383007,
2045
+ "grad_norm": 0.047556836158037186,
2046
+ "learning_rate": 3.6459139005560966e-05,
2047
+ "loss": 1.5191,
2048
+ "step": 2890
2049
+ },
2050
+ {
2051
+ "epoch": 1.7321188591906824,
2052
+ "grad_norm": 0.04096701368689537,
2053
+ "learning_rate": 3.618223989312195e-05,
2054
+ "loss": 1.5195,
2055
+ "step": 2900
2056
+ },
2057
+ {
2058
+ "epoch": 1.7380916828430641,
2059
+ "grad_norm": 0.043791547417640686,
2060
+ "learning_rate": 3.590552529154974e-05,
2061
+ "loss": 1.5149,
2062
+ "step": 2910
2063
+ },
2064
+ {
2065
+ "epoch": 1.7440645064954459,
2066
+ "grad_norm": 0.06429862976074219,
2067
+ "learning_rate": 3.562900857435384e-05,
2068
+ "loss": 1.5136,
2069
+ "step": 2920
2070
+ },
2071
+ {
2072
+ "epoch": 1.7500373301478274,
2073
+ "grad_norm": 0.04811246693134308,
2074
+ "learning_rate": 3.535270310548007e-05,
2075
+ "loss": 1.5178,
2076
+ "step": 2930
2077
+ },
2078
+ {
2079
+ "epoch": 1.756010153800209,
2080
+ "grad_norm": 0.05720449239015579,
2081
+ "learning_rate": 3.5076622238664675e-05,
2082
+ "loss": 1.5112,
2083
+ "step": 2940
2084
+ },
2085
+ {
2086
+ "epoch": 1.7619829774525906,
2087
+ "grad_norm": 0.04717197269201279,
2088
+ "learning_rate": 3.480077931678899e-05,
2089
+ "loss": 1.5147,
2090
+ "step": 2950
2091
+ },
2092
+ {
2093
+ "epoch": 1.7679558011049723,
2094
+ "grad_norm": 0.04889809712767601,
2095
+ "learning_rate": 3.452518767123456e-05,
2096
+ "loss": 1.5186,
2097
+ "step": 2960
2098
+ },
2099
+ {
2100
+ "epoch": 1.773928624757354,
2101
+ "grad_norm": 0.055686600506305695,
2102
+ "learning_rate": 3.424986062123883e-05,
2103
+ "loss": 1.5105,
2104
+ "step": 2970
2105
+ },
2106
+ {
2107
+ "epoch": 1.7799014484097357,
2108
+ "grad_norm": 0.045671623200178146,
2109
+ "learning_rate": 3.397481147325146e-05,
2110
+ "loss": 1.5236,
2111
+ "step": 2980
2112
+ },
2113
+ {
2114
+ "epoch": 1.7858742720621175,
2115
+ "grad_norm": 0.0518915057182312,
2116
+ "learning_rate": 3.370005352029122e-05,
2117
+ "loss": 1.5082,
2118
+ "step": 2990
2119
+ },
2120
+ {
2121
+ "epoch": 1.7918470957144992,
2122
+ "grad_norm": 0.0466337613761425,
2123
+ "learning_rate": 3.342560004130351e-05,
2124
+ "loss": 1.5246,
2125
+ "step": 3000
2126
+ },
2127
+ {
2128
+ "epoch": 1.7918470957144992,
2129
+ "eval_loss": 1.5170252323150635,
2130
+ "eval_runtime": 20.1093,
2131
+ "eval_samples_per_second": 1722.235,
2132
+ "eval_steps_per_second": 13.476,
2133
+ "step": 3000
2134
+ },
2135
+ {
2136
+ "epoch": 1.7978199193668807,
2137
+ "grad_norm": 0.04238193854689598,
2138
+ "learning_rate": 3.3151464300518634e-05,
2139
+ "loss": 1.5097,
2140
+ "step": 3010
2141
+ },
2142
+ {
2143
+ "epoch": 1.8037927430192624,
2144
+ "grad_norm": 0.050784409046173096,
2145
+ "learning_rate": 3.2877659546810745e-05,
2146
+ "loss": 1.5195,
2147
+ "step": 3020
2148
+ },
2149
+ {
2150
+ "epoch": 1.809765566671644,
2151
+ "grad_norm": 0.04055749997496605,
2152
+ "learning_rate": 3.260419901305751e-05,
2153
+ "loss": 1.5171,
2154
+ "step": 3030
2155
+ },
2156
+ {
2157
+ "epoch": 1.8157383903240256,
2158
+ "grad_norm": 0.05311364307999611,
2159
+ "learning_rate": 3.2331095915500564e-05,
2160
+ "loss": 1.5136,
2161
+ "step": 3040
2162
+ },
2163
+ {
2164
+ "epoch": 1.8217112139764073,
2165
+ "grad_norm": 0.0499190054833889,
2166
+ "learning_rate": 3.205836345310681e-05,
2167
+ "loss": 1.5081,
2168
+ "step": 3050
2169
+ },
2170
+ {
2171
+ "epoch": 1.827684037628789,
2172
+ "grad_norm": 0.056762441992759705,
2173
+ "learning_rate": 3.178601480693048e-05,
2174
+ "loss": 1.5243,
2175
+ "step": 3060
2176
+ },
2177
+ {
2178
+ "epoch": 1.8336568612811708,
2179
+ "grad_norm": 0.04753740131855011,
2180
+ "learning_rate": 3.151406313947615e-05,
2181
+ "loss": 1.5069,
2182
+ "step": 3070
2183
+ },
2184
+ {
2185
+ "epoch": 1.8396296849335525,
2186
+ "grad_norm": 0.054608915001153946,
2187
+ "learning_rate": 3.124252159406251e-05,
2188
+ "loss": 1.5172,
2189
+ "step": 3080
2190
+ },
2191
+ {
2192
+ "epoch": 1.845602508585934,
2193
+ "grad_norm": 0.04840042069554329,
2194
+ "learning_rate": 3.097140329418726e-05,
2195
+ "loss": 1.5126,
2196
+ "step": 3090
2197
+ },
2198
+ {
2199
+ "epoch": 1.8515753322383157,
2200
+ "grad_norm": 0.05584624037146568,
2201
+ "learning_rate": 3.07007213428928e-05,
2202
+ "loss": 1.5091,
2203
+ "step": 3100
2204
+ },
2205
+ {
2206
+ "epoch": 1.8575481558906972,
2207
+ "grad_norm": 0.0425049252808094,
2208
+ "learning_rate": 3.0430488822132957e-05,
2209
+ "loss": 1.5155,
2210
+ "step": 3110
2211
+ },
2212
+ {
2213
+ "epoch": 1.863520979543079,
2214
+ "grad_norm": 0.043588876724243164,
2215
+ "learning_rate": 3.016071879214077e-05,
2216
+ "loss": 1.5099,
2217
+ "step": 3120
2218
+ },
2219
+ {
2220
+ "epoch": 1.8694938031954607,
2221
+ "grad_norm": 0.041503310203552246,
2222
+ "learning_rate": 2.989142429079725e-05,
2223
+ "loss": 1.509,
2224
+ "step": 3130
2225
+ },
2226
+ {
2227
+ "epoch": 1.8754666268478424,
2228
+ "grad_norm": 0.04797055944800377,
2229
+ "learning_rate": 2.962261833300133e-05,
2230
+ "loss": 1.507,
2231
+ "step": 3140
2232
+ },
2233
+ {
2234
+ "epoch": 1.881439450500224,
2235
+ "grad_norm": 0.05003626272082329,
2236
+ "learning_rate": 2.935431391004081e-05,
2237
+ "loss": 1.5177,
2238
+ "step": 3150
2239
+ },
2240
+ {
2241
+ "epoch": 1.8874122741526056,
2242
+ "grad_norm": 0.04475341737270355,
2243
+ "learning_rate": 2.9086523988964478e-05,
2244
+ "loss": 1.5077,
2245
+ "step": 3160
2246
+ },
2247
+ {
2248
+ "epoch": 1.8933850978049873,
2249
+ "grad_norm": 0.04602671042084694,
2250
+ "learning_rate": 2.881926151195547e-05,
2251
+ "loss": 1.5037,
2252
+ "step": 3170
2253
+ },
2254
+ {
2255
+ "epoch": 1.8993579214573688,
2256
+ "grad_norm": 0.04945210739970207,
2257
+ "learning_rate": 2.855253939570578e-05,
2258
+ "loss": 1.503,
2259
+ "step": 3180
2260
+ },
2261
+ {
2262
+ "epoch": 1.9053307451097505,
2263
+ "grad_norm": 0.04730582609772682,
2264
+ "learning_rate": 2.8286370530791914e-05,
2265
+ "loss": 1.5064,
2266
+ "step": 3190
2267
+ },
2268
+ {
2269
+ "epoch": 1.9113035687621323,
2270
+ "grad_norm": 0.05128956586122513,
2271
+ "learning_rate": 2.8020767781052016e-05,
2272
+ "loss": 1.5126,
2273
+ "step": 3200
2274
+ },
2275
+ {
2276
+ "epoch": 1.917276392414514,
2277
+ "grad_norm": 0.055559854954481125,
2278
+ "learning_rate": 2.7755743982964066e-05,
2279
+ "loss": 1.5052,
2280
+ "step": 3210
2281
+ },
2282
+ {
2283
+ "epoch": 1.9232492160668957,
2284
+ "grad_norm": 0.036298781633377075,
2285
+ "learning_rate": 2.749131194502555e-05,
2286
+ "loss": 1.5092,
2287
+ "step": 3220
2288
+ },
2289
+ {
2290
+ "epoch": 1.9292220397192774,
2291
+ "grad_norm": 0.042619943618774414,
2292
+ "learning_rate": 2.7227484447134398e-05,
2293
+ "loss": 1.5044,
2294
+ "step": 3230
2295
+ },
2296
+ {
2297
+ "epoch": 1.935194863371659,
2298
+ "grad_norm": 0.052806805819272995,
2299
+ "learning_rate": 2.696427423997138e-05,
2300
+ "loss": 1.5056,
2301
+ "step": 3240
2302
+ },
2303
+ {
2304
+ "epoch": 1.9411676870240406,
2305
+ "grad_norm": 0.044467948377132416,
2306
+ "learning_rate": 2.670169404438383e-05,
2307
+ "loss": 1.5114,
2308
+ "step": 3250
2309
+ },
2310
+ {
2311
+ "epoch": 1.9471405106764221,
2312
+ "grad_norm": 0.038638997822999954,
2313
+ "learning_rate": 2.6439756550770872e-05,
2314
+ "loss": 1.5154,
2315
+ "step": 3260
2316
+ },
2317
+ {
2318
+ "epoch": 1.9531133343288039,
2319
+ "grad_norm": 0.04845379292964935,
2320
+ "learning_rate": 2.617847441847007e-05,
2321
+ "loss": 1.51,
2322
+ "step": 3270
2323
+ },
2324
+ {
2325
+ "epoch": 1.9590861579811856,
2326
+ "grad_norm": 0.0445607528090477,
2327
+ "learning_rate": 2.5917860275145658e-05,
2328
+ "loss": 1.5047,
2329
+ "step": 3280
2330
+ },
2331
+ {
2332
+ "epoch": 1.9650589816335673,
2333
+ "grad_norm": 0.045905206352472305,
2334
+ "learning_rate": 2.5657926716178217e-05,
2335
+ "loss": 1.5118,
2336
+ "step": 3290
2337
+ },
2338
+ {
2339
+ "epoch": 1.971031805285949,
2340
+ "grad_norm": 0.04530317336320877,
2341
+ "learning_rate": 2.539868630405594e-05,
2342
+ "loss": 1.5099,
2343
+ "step": 3300
2344
+ },
2345
+ {
2346
+ "epoch": 1.9770046289383307,
2347
+ "grad_norm": 0.04195258021354675,
2348
+ "learning_rate": 2.5140151567767505e-05,
2349
+ "loss": 1.5075,
2350
+ "step": 3310
2351
+ },
2352
+ {
2353
+ "epoch": 1.9829774525907122,
2354
+ "grad_norm": 0.043815840035676956,
2355
+ "learning_rate": 2.4882335002196553e-05,
2356
+ "loss": 1.5096,
2357
+ "step": 3320
2358
+ },
2359
+ {
2360
+ "epoch": 1.988950276243094,
2361
+ "grad_norm": 0.04683714732527733,
2362
+ "learning_rate": 2.4625249067517803e-05,
2363
+ "loss": 1.5057,
2364
+ "step": 3330
2365
+ },
2366
+ {
2367
+ "epoch": 1.9949230998954754,
2368
+ "grad_norm": 0.049690209329128265,
2369
+ "learning_rate": 2.4368906188594877e-05,
2370
+ "loss": 1.5106,
2371
+ "step": 3340
2372
+ },
2373
+ {
2374
+ "epoch": 2.000895923547857,
2375
+ "grad_norm": 0.048324376344680786,
2376
+ "learning_rate": 2.4113318754379816e-05,
2377
+ "loss": 1.5042,
2378
+ "step": 3350
2379
+ },
2380
+ {
2381
+ "epoch": 2.006868747200239,
2382
+ "grad_norm": 0.05503029376268387,
2383
+ "learning_rate": 2.385849911731426e-05,
2384
+ "loss": 1.4922,
2385
+ "step": 3360
2386
+ },
2387
+ {
2388
+ "epoch": 2.0128415708526206,
2389
+ "grad_norm": 0.049435921013355255,
2390
+ "learning_rate": 2.360445959273255e-05,
2391
+ "loss": 1.4962,
2392
+ "step": 3370
2393
+ },
2394
+ {
2395
+ "epoch": 2.0188143945050023,
2396
+ "grad_norm": 0.05086649954319,
2397
+ "learning_rate": 2.3351212458266512e-05,
2398
+ "loss": 1.4918,
2399
+ "step": 3380
2400
+ },
2401
+ {
2402
+ "epoch": 2.024787218157384,
2403
+ "grad_norm": 0.045887332409620285,
2404
+ "learning_rate": 2.3098769953252002e-05,
2405
+ "loss": 1.4868,
2406
+ "step": 3390
2407
+ },
2408
+ {
2409
+ "epoch": 2.0307600418097658,
2410
+ "grad_norm": 0.04303443059325218,
2411
+ "learning_rate": 2.2847144278137502e-05,
2412
+ "loss": 1.4982,
2413
+ "step": 3400
2414
+ },
2415
+ {
2416
+ "epoch": 2.036732865462147,
2417
+ "grad_norm": 0.043649692088365555,
2418
+ "learning_rate": 2.2596347593894387e-05,
2419
+ "loss": 1.5,
2420
+ "step": 3410
2421
+ },
2422
+ {
2423
+ "epoch": 2.0427056891145288,
2424
+ "grad_norm": 0.04276139661669731,
2425
+ "learning_rate": 2.2346392021429254e-05,
2426
+ "loss": 1.4903,
2427
+ "step": 3420
2428
+ },
2429
+ {
2430
+ "epoch": 2.0486785127669105,
2431
+ "grad_norm": 0.04298582300543785,
2432
+ "learning_rate": 2.2097289640998074e-05,
2433
+ "loss": 1.5032,
2434
+ "step": 3430
2435
+ },
2436
+ {
2437
+ "epoch": 2.054651336419292,
2438
+ "grad_norm": 0.053750213235616684,
2439
+ "learning_rate": 2.1849052491622374e-05,
2440
+ "loss": 1.4942,
2441
+ "step": 3440
2442
+ },
2443
+ {
2444
+ "epoch": 2.060624160071674,
2445
+ "grad_norm": 0.042636483907699585,
2446
+ "learning_rate": 2.160169257050742e-05,
2447
+ "loss": 1.4976,
2448
+ "step": 3450
2449
+ },
2450
+ {
2451
+ "epoch": 2.0665969837240556,
2452
+ "grad_norm": 0.05124128982424736,
2453
+ "learning_rate": 2.135522183246237e-05,
2454
+ "loss": 1.4981,
2455
+ "step": 3460
2456
+ },
2457
+ {
2458
+ "epoch": 2.0725698073764374,
2459
+ "grad_norm": 0.047978244721889496,
2460
+ "learning_rate": 2.110965218932247e-05,
2461
+ "loss": 1.4975,
2462
+ "step": 3470
2463
+ },
2464
+ {
2465
+ "epoch": 2.078542631028819,
2466
+ "grad_norm": 0.045476969331502914,
2467
+ "learning_rate": 2.0864995509373448e-05,
2468
+ "loss": 1.4958,
2469
+ "step": 3480
2470
+ },
2471
+ {
2472
+ "epoch": 2.0845154546812004,
2473
+ "grad_norm": 0.05264231190085411,
2474
+ "learning_rate": 2.062126361677786e-05,
2475
+ "loss": 1.4996,
2476
+ "step": 3490
2477
+ },
2478
+ {
2479
+ "epoch": 2.090488278333582,
2480
+ "grad_norm": 0.05144358426332474,
2481
+ "learning_rate": 2.037846829100364e-05,
2482
+ "loss": 1.5077,
2483
+ "step": 3500
2484
+ },
2485
+ {
2486
+ "epoch": 2.096461101985964,
2487
+ "grad_norm": 0.048265036195516586,
2488
+ "learning_rate": 2.013662126625482e-05,
2489
+ "loss": 1.4987,
2490
+ "step": 3510
2491
+ },
2492
+ {
2493
+ "epoch": 2.1024339256383455,
2494
+ "grad_norm": 0.04586884751915932,
2495
+ "learning_rate": 1.9895734230904396e-05,
2496
+ "loss": 1.5044,
2497
+ "step": 3520
2498
+ },
2499
+ {
2500
+ "epoch": 2.1084067492907272,
2501
+ "grad_norm": 0.03930211812257767,
2502
+ "learning_rate": 1.965581882692949e-05,
2503
+ "loss": 1.4951,
2504
+ "step": 3530
2505
+ },
2506
+ {
2507
+ "epoch": 2.114379572943109,
2508
+ "grad_norm": 0.051928870379924774,
2509
+ "learning_rate": 1.9416886649348575e-05,
2510
+ "loss": 1.4962,
2511
+ "step": 3540
2512
+ },
2513
+ {
2514
+ "epoch": 2.1203523965954907,
2515
+ "grad_norm": 0.04466070607304573,
2516
+ "learning_rate": 1.917894924566125e-05,
2517
+ "loss": 1.4874,
2518
+ "step": 3550
2519
+ },
2520
+ {
2521
+ "epoch": 2.126325220247872,
2522
+ "grad_norm": 0.044879212975502014,
2523
+ "learning_rate": 1.8942018115290063e-05,
2524
+ "loss": 1.4896,
2525
+ "step": 3560
2526
+ },
2527
+ {
2528
+ "epoch": 2.1322980439002537,
2529
+ "grad_norm": 0.04508794844150543,
2530
+ "learning_rate": 1.8706104709024715e-05,
2531
+ "loss": 1.4915,
2532
+ "step": 3570
2533
+ },
2534
+ {
2535
+ "epoch": 2.1382708675526354,
2536
+ "grad_norm": 0.06577686965465546,
2537
+ "learning_rate": 1.8471220428468745e-05,
2538
+ "loss": 1.4981,
2539
+ "step": 3580
2540
+ },
2541
+ {
2542
+ "epoch": 2.144243691205017,
2543
+ "grad_norm": 0.03995177894830704,
2544
+ "learning_rate": 1.823737662548843e-05,
2545
+ "loss": 1.4973,
2546
+ "step": 3590
2547
+ },
2548
+ {
2549
+ "epoch": 2.150216514857399,
2550
+ "grad_norm": 0.06114717572927475,
2551
+ "learning_rate": 1.800458460166417e-05,
2552
+ "loss": 1.4942,
2553
+ "step": 3600
2554
+ },
2555
+ {
2556
+ "epoch": 2.1561893385097806,
2557
+ "grad_norm": 0.04745366424322128,
2558
+ "learning_rate": 1.7772855607744284e-05,
2559
+ "loss": 1.5004,
2560
+ "step": 3610
2561
+ },
2562
+ {
2563
+ "epoch": 2.1621621621621623,
2564
+ "grad_norm": 0.045220714062452316,
2565
+ "learning_rate": 1.7542200843101267e-05,
2566
+ "loss": 1.494,
2567
+ "step": 3620
2568
+ },
2569
+ {
2570
+ "epoch": 2.168134985814544,
2571
+ "grad_norm": 0.04914199188351631,
2572
+ "learning_rate": 1.7312631455190528e-05,
2573
+ "loss": 1.491,
2574
+ "step": 3630
2575
+ },
2576
+ {
2577
+ "epoch": 2.1741078094669257,
2578
+ "grad_norm": 0.044854309409856796,
2579
+ "learning_rate": 1.708415853901166e-05,
2580
+ "loss": 1.4974,
2581
+ "step": 3640
2582
+ },
2583
+ {
2584
+ "epoch": 2.180080633119307,
2585
+ "grad_norm": 0.0511915348470211,
2586
+ "learning_rate": 1.6856793136572155e-05,
2587
+ "loss": 1.4978,
2588
+ "step": 3650
2589
+ },
2590
+ {
2591
+ "epoch": 2.1860534567716887,
2592
+ "grad_norm": 0.052235160022974014,
2593
+ "learning_rate": 1.6630546236353833e-05,
2594
+ "loss": 1.4884,
2595
+ "step": 3660
2596
+ },
2597
+ {
2598
+ "epoch": 2.1920262804240704,
2599
+ "grad_norm": 0.03959416225552559,
2600
+ "learning_rate": 1.6405428772781724e-05,
2601
+ "loss": 1.4897,
2602
+ "step": 3670
2603
+ },
2604
+ {
2605
+ "epoch": 2.197999104076452,
2606
+ "grad_norm": 0.04642707481980324,
2607
+ "learning_rate": 1.618145162569563e-05,
2608
+ "loss": 1.489,
2609
+ "step": 3680
2610
+ },
2611
+ {
2612
+ "epoch": 2.203971927728834,
2613
+ "grad_norm": 0.05590491741895676,
2614
+ "learning_rate": 1.5958625619824286e-05,
2615
+ "loss": 1.4946,
2616
+ "step": 3690
2617
+ },
2618
+ {
2619
+ "epoch": 2.2099447513812156,
2620
+ "grad_norm": 0.050484009087085724,
2621
+ "learning_rate": 1.5736961524262232e-05,
2622
+ "loss": 1.5011,
2623
+ "step": 3700
2624
+ },
2625
+ {
2626
+ "epoch": 2.2159175750335973,
2627
+ "grad_norm": 0.04109204187989235,
2628
+ "learning_rate": 1.551647005194932e-05,
2629
+ "loss": 1.4993,
2630
+ "step": 3710
2631
+ },
2632
+ {
2633
+ "epoch": 2.2218903986859786,
2634
+ "grad_norm": 0.04570942744612694,
2635
+ "learning_rate": 1.5297161859152986e-05,
2636
+ "loss": 1.491,
2637
+ "step": 3720
2638
+ },
2639
+ {
2640
+ "epoch": 2.2278632223383603,
2641
+ "grad_norm": 0.041420578956604004,
2642
+ "learning_rate": 1.5079047544953227e-05,
2643
+ "loss": 1.4874,
2644
+ "step": 3730
2645
+ },
2646
+ {
2647
+ "epoch": 2.233836045990742,
2648
+ "grad_norm": 0.04918381944298744,
2649
+ "learning_rate": 1.486213765073032e-05,
2650
+ "loss": 1.4939,
2651
+ "step": 3740
2652
+ },
2653
+ {
2654
+ "epoch": 2.2398088696431238,
2655
+ "grad_norm": 0.05086056888103485,
2656
+ "learning_rate": 1.4646442659655425e-05,
2657
+ "loss": 1.4992,
2658
+ "step": 3750
2659
+ },
2660
+ {
2661
+ "epoch": 2.2457816932955055,
2662
+ "grad_norm": 0.061345502734184265,
2663
+ "learning_rate": 1.4431972996183894e-05,
2664
+ "loss": 1.4935,
2665
+ "step": 3760
2666
+ },
2667
+ {
2668
+ "epoch": 2.251754516947887,
2669
+ "grad_norm": 0.03802775219082832,
2670
+ "learning_rate": 1.4218739025551469e-05,
2671
+ "loss": 1.487,
2672
+ "step": 3770
2673
+ },
2674
+ {
2675
+ "epoch": 2.257727340600269,
2676
+ "grad_norm": 0.039830368012189865,
2677
+ "learning_rate": 1.4006751053273338e-05,
2678
+ "loss": 1.4943,
2679
+ "step": 3780
2680
+ },
2681
+ {
2682
+ "epoch": 2.2637001642526506,
2683
+ "grad_norm": 0.04441362991929054,
2684
+ "learning_rate": 1.3796019324646062e-05,
2685
+ "loss": 1.4907,
2686
+ "step": 3790
2687
+ },
2688
+ {
2689
+ "epoch": 2.269672987905032,
2690
+ "grad_norm": 0.04267200455069542,
2691
+ "learning_rate": 1.358655402425245e-05,
2692
+ "loss": 1.4905,
2693
+ "step": 3800
2694
+ },
2695
+ {
2696
+ "epoch": 2.2756458115574136,
2697
+ "grad_norm": 0.04467471316456795,
2698
+ "learning_rate": 1.3378365275469322e-05,
2699
+ "loss": 1.4865,
2700
+ "step": 3810
2701
+ },
2702
+ {
2703
+ "epoch": 2.2816186352097954,
2704
+ "grad_norm": 0.04877958446741104,
2705
+ "learning_rate": 1.3171463139978222e-05,
2706
+ "loss": 1.4978,
2707
+ "step": 3820
2708
+ },
2709
+ {
2710
+ "epoch": 2.287591458862177,
2711
+ "grad_norm": 0.04458734765648842,
2712
+ "learning_rate": 1.2965857617279216e-05,
2713
+ "loss": 1.4931,
2714
+ "step": 3830
2715
+ },
2716
+ {
2717
+ "epoch": 2.293564282514559,
2718
+ "grad_norm": 0.043027278035879135,
2719
+ "learning_rate": 1.2761558644207547e-05,
2720
+ "loss": 1.495,
2721
+ "step": 3840
2722
+ },
2723
+ {
2724
+ "epoch": 2.2995371061669405,
2725
+ "grad_norm": 0.03808119520545006,
2726
+ "learning_rate": 1.2558576094453435e-05,
2727
+ "loss": 1.4922,
2728
+ "step": 3850
2729
+ },
2730
+ {
2731
+ "epoch": 2.3055099298193222,
2732
+ "grad_norm": 0.038997333496809006,
2733
+ "learning_rate": 1.2356919778084867e-05,
2734
+ "loss": 1.4915,
2735
+ "step": 3860
2736
+ },
2737
+ {
2738
+ "epoch": 2.3114827534717035,
2739
+ "grad_norm": 0.04020654410123825,
2740
+ "learning_rate": 1.2156599441073488e-05,
2741
+ "loss": 1.4874,
2742
+ "step": 3870
2743
+ },
2744
+ {
2745
+ "epoch": 2.3174555771240852,
2746
+ "grad_norm": 0.04891055077314377,
2747
+ "learning_rate": 1.1957624764823566e-05,
2748
+ "loss": 1.5016,
2749
+ "step": 3880
2750
+ },
2751
+ {
2752
+ "epoch": 2.323428400776467,
2753
+ "grad_norm": 0.046524520963430405,
2754
+ "learning_rate": 1.176000536570412e-05,
2755
+ "loss": 1.4928,
2756
+ "step": 3890
2757
+ },
2758
+ {
2759
+ "epoch": 2.3294012244288487,
2760
+ "grad_norm": 0.04302162304520607,
2761
+ "learning_rate": 1.1563750794584156e-05,
2762
+ "loss": 1.4905,
2763
+ "step": 3900
2764
+ },
2765
+ {
2766
+ "epoch": 2.3353740480812304,
2767
+ "grad_norm": 0.046545591205358505,
2768
+ "learning_rate": 1.1368870536371036e-05,
2769
+ "loss": 1.4911,
2770
+ "step": 3910
2771
+ },
2772
+ {
2773
+ "epoch": 2.341346871733612,
2774
+ "grad_norm": 0.04680660367012024,
2775
+ "learning_rate": 1.1175374009552159e-05,
2776
+ "loss": 1.4832,
2777
+ "step": 3920
2778
+ },
2779
+ {
2780
+ "epoch": 2.347319695385994,
2781
+ "grad_norm": 0.04679818078875542,
2782
+ "learning_rate": 1.0983270565739668e-05,
2783
+ "loss": 1.4892,
2784
+ "step": 3930
2785
+ },
2786
+ {
2787
+ "epoch": 2.3532925190383756,
2788
+ "grad_norm": 0.04409361630678177,
2789
+ "learning_rate": 1.0792569489218598e-05,
2790
+ "loss": 1.4907,
2791
+ "step": 3940
2792
+ },
2793
+ {
2794
+ "epoch": 2.3592653426907573,
2795
+ "grad_norm": 0.04122375324368477,
2796
+ "learning_rate": 1.0603279996498089e-05,
2797
+ "loss": 1.4936,
2798
+ "step": 3950
2799
+ },
2800
+ {
2801
+ "epoch": 2.3652381663431385,
2802
+ "grad_norm": 0.045084912329912186,
2803
+ "learning_rate": 1.0415411235865979e-05,
2804
+ "loss": 1.4852,
2805
+ "step": 3960
2806
+ },
2807
+ {
2808
+ "epoch": 2.3712109899955203,
2809
+ "grad_norm": 0.04110685735940933,
2810
+ "learning_rate": 1.0228972286946695e-05,
2811
+ "loss": 1.494,
2812
+ "step": 3970
2813
+ },
2814
+ {
2815
+ "epoch": 2.377183813647902,
2816
+ "grad_norm": 0.04527169466018677,
2817
+ "learning_rate": 1.0043972160262392e-05,
2818
+ "loss": 1.4955,
2819
+ "step": 3980
2820
+ },
2821
+ {
2822
+ "epoch": 2.3831566373002837,
2823
+ "grad_norm": 0.04808187112212181,
2824
+ "learning_rate": 9.860419796797527e-06,
2825
+ "loss": 1.4858,
2826
+ "step": 3990
2827
+ },
2828
+ {
2829
+ "epoch": 2.3891294609526654,
2830
+ "grad_norm": 0.03969137370586395,
2831
+ "learning_rate": 9.678324067566716e-06,
2832
+ "loss": 1.497,
2833
+ "step": 4000
2834
+ },
2835
+ {
2836
+ "epoch": 2.3891294609526654,
2837
+ "eval_loss": 1.4980565309524536,
2838
+ "eval_runtime": 20.0226,
2839
+ "eval_samples_per_second": 1729.697,
2840
+ "eval_steps_per_second": 13.535,
2841
+ "step": 4000
2842
+ },
2843
+ {
2844
+ "epoch": 2.395102284605047,
2845
+ "grad_norm": 0.039191678166389465,
2846
+ "learning_rate": 9.497693773185985e-06,
2847
+ "loss": 1.491,
2848
+ "step": 4010
2849
+ },
2850
+ {
2851
+ "epoch": 2.401075108257429,
2852
+ "grad_norm": 0.04326602816581726,
2853
+ "learning_rate": 9.318537643447488e-06,
2854
+ "loss": 1.4897,
2855
+ "step": 4020
2856
+ },
2857
+ {
2858
+ "epoch": 2.40704793190981,
2859
+ "grad_norm": 0.04062432423233986,
2860
+ "learning_rate": 9.140864336897559e-06,
2861
+ "loss": 1.4834,
2862
+ "step": 4030
2863
+ },
2864
+ {
2865
+ "epoch": 2.413020755562192,
2866
+ "grad_norm": 0.043511949479579926,
2867
+ "learning_rate": 8.964682440418272e-06,
2868
+ "loss": 1.4899,
2869
+ "step": 4040
2870
+ },
2871
+ {
2872
+ "epoch": 2.4189935792145736,
2873
+ "grad_norm": 0.041364822536706924,
2874
+ "learning_rate": 8.79000046881242e-06,
2875
+ "loss": 1.4876,
2876
+ "step": 4050
2877
+ },
2878
+ {
2879
+ "epoch": 2.4249664028669553,
2880
+ "grad_norm": 0.03720170632004738,
2881
+ "learning_rate": 8.61682686439202e-06,
2882
+ "loss": 1.4926,
2883
+ "step": 4060
2884
+ },
2885
+ {
2886
+ "epoch": 2.430939226519337,
2887
+ "grad_norm": 0.04620780423283577,
2888
+ "learning_rate": 8.44516999657027e-06,
2889
+ "loss": 1.4929,
2890
+ "step": 4070
2891
+ },
2892
+ {
2893
+ "epoch": 2.4369120501717187,
2894
+ "grad_norm": 0.03785783797502518,
2895
+ "learning_rate": 8.275038161457094e-06,
2896
+ "loss": 1.4917,
2897
+ "step": 4080
2898
+ },
2899
+ {
2900
+ "epoch": 2.4428848738241005,
2901
+ "grad_norm": 0.047655072063207626,
2902
+ "learning_rate": 8.106439581458177e-06,
2903
+ "loss": 1.4923,
2904
+ "step": 4090
2905
+ },
2906
+ {
2907
+ "epoch": 2.448857697476482,
2908
+ "grad_norm": 0.04838723689317703,
2909
+ "learning_rate": 7.939382404877545e-06,
2910
+ "loss": 1.4902,
2911
+ "step": 4100
2912
+ },
2913
+ {
2914
+ "epoch": 2.454830521128864,
2915
+ "grad_norm": 0.0498916357755661,
2916
+ "learning_rate": 7.773874705523826e-06,
2917
+ "loss": 1.4846,
2918
+ "step": 4110
2919
+ },
2920
+ {
2921
+ "epoch": 2.460803344781245,
2922
+ "grad_norm": 0.044865112751722336,
2923
+ "learning_rate": 7.609924482320013e-06,
2924
+ "loss": 1.4867,
2925
+ "step": 4120
2926
+ },
2927
+ {
2928
+ "epoch": 2.466776168433627,
2929
+ "grad_norm": 0.041775912046432495,
2930
+ "learning_rate": 7.447539658916869e-06,
2931
+ "loss": 1.4869,
2932
+ "step": 4130
2933
+ },
2934
+ {
2935
+ "epoch": 2.4727489920860086,
2936
+ "grad_norm": 0.03888450190424919,
2937
+ "learning_rate": 7.286728083309995e-06,
2938
+ "loss": 1.4824,
2939
+ "step": 4140
2940
+ },
2941
+ {
2942
+ "epoch": 2.4787218157383903,
2943
+ "grad_norm": 0.05169163644313812,
2944
+ "learning_rate": 7.127497527460541e-06,
2945
+ "loss": 1.4856,
2946
+ "step": 4150
2947
+ },
2948
+ {
2949
+ "epoch": 2.484694639390772,
2950
+ "grad_norm": 0.04095705598592758,
2951
+ "learning_rate": 6.969855686919573e-06,
2952
+ "loss": 1.4899,
2953
+ "step": 4160
2954
+ },
2955
+ {
2956
+ "epoch": 2.490667463043154,
2957
+ "grad_norm": 0.0429367758333683,
2958
+ "learning_rate": 6.81381018045618e-06,
2959
+ "loss": 1.4848,
2960
+ "step": 4170
2961
+ },
2962
+ {
2963
+ "epoch": 2.4966402866955355,
2964
+ "grad_norm": 0.04392432048916817,
2965
+ "learning_rate": 6.659368549689209e-06,
2966
+ "loss": 1.4832,
2967
+ "step": 4180
2968
+ },
2969
+ {
2970
+ "epoch": 2.502613110347917,
2971
+ "grad_norm": 0.04673699662089348,
2972
+ "learning_rate": 6.506538258722859e-06,
2973
+ "loss": 1.4855,
2974
+ "step": 4190
2975
+ },
2976
+ {
2977
+ "epoch": 2.5085859340002985,
2978
+ "grad_norm": 0.04074994474649429,
2979
+ "learning_rate": 6.355326693785868e-06,
2980
+ "loss": 1.4789,
2981
+ "step": 4200
2982
+ },
2983
+ {
2984
+ "epoch": 2.51455875765268,
2985
+ "grad_norm": 0.035382091999053955,
2986
+ "learning_rate": 6.2057411628745875e-06,
2987
+ "loss": 1.4862,
2988
+ "step": 4210
2989
+ },
2990
+ {
2991
+ "epoch": 2.520531581305062,
2992
+ "grad_norm": 0.03829929605126381,
2993
+ "learning_rate": 6.057788895399781e-06,
2994
+ "loss": 1.4852,
2995
+ "step": 4220
2996
+ },
2997
+ {
2998
+ "epoch": 2.5265044049574437,
2999
+ "grad_norm": 0.04219154641032219,
3000
+ "learning_rate": 5.9114770418372015e-06,
3001
+ "loss": 1.4865,
3002
+ "step": 4230
3003
+ },
3004
+ {
3005
+ "epoch": 2.5324772286098254,
3006
+ "grad_norm": 0.04591584950685501,
3007
+ "learning_rate": 5.7668126733820476e-06,
3008
+ "loss": 1.4737,
3009
+ "step": 4240
3010
+ },
3011
+ {
3012
+ "epoch": 2.538450052262207,
3013
+ "grad_norm": 0.045854389667510986,
3014
+ "learning_rate": 5.623802781607204e-06,
3015
+ "loss": 1.4872,
3016
+ "step": 4250
3017
+ },
3018
+ {
3019
+ "epoch": 2.544422875914589,
3020
+ "grad_norm": 0.04153481870889664,
3021
+ "learning_rate": 5.48245427812534e-06,
3022
+ "loss": 1.4806,
3023
+ "step": 4260
3024
+ },
3025
+ {
3026
+ "epoch": 2.5503956995669705,
3027
+ "grad_norm": 0.03822470083832741,
3028
+ "learning_rate": 5.342773994254842e-06,
3029
+ "loss": 1.4792,
3030
+ "step": 4270
3031
+ },
3032
+ {
3033
+ "epoch": 2.556368523219352,
3034
+ "grad_norm": 0.03870686888694763,
3035
+ "learning_rate": 5.204768680689727e-06,
3036
+ "loss": 1.4771,
3037
+ "step": 4280
3038
+ },
3039
+ {
3040
+ "epoch": 2.5623413468717335,
3041
+ "grad_norm": 0.05567542836070061,
3042
+ "learning_rate": 5.068445007173331e-06,
3043
+ "loss": 1.4812,
3044
+ "step": 4290
3045
+ },
3046
+ {
3047
+ "epoch": 2.5683141705241153,
3048
+ "grad_norm": 0.03914303705096245,
3049
+ "learning_rate": 4.933809562175982e-06,
3050
+ "loss": 1.4952,
3051
+ "step": 4300
3052
+ },
3053
+ {
3054
+ "epoch": 2.574286994176497,
3055
+ "grad_norm": 0.04728810861706734,
3056
+ "learning_rate": 4.800868852576561e-06,
3057
+ "loss": 1.4813,
3058
+ "step": 4310
3059
+ },
3060
+ {
3061
+ "epoch": 2.5802598178288787,
3062
+ "grad_norm": 0.04394581541419029,
3063
+ "learning_rate": 4.669629303348066e-06,
3064
+ "loss": 1.4779,
3065
+ "step": 4320
3066
+ },
3067
+ {
3068
+ "epoch": 2.5862326414812604,
3069
+ "grad_norm": 0.042139682918787,
3070
+ "learning_rate": 4.540097257247062e-06,
3071
+ "loss": 1.4847,
3072
+ "step": 4330
3073
+ },
3074
+ {
3075
+ "epoch": 2.5922054651336417,
3076
+ "grad_norm": 0.04580564424395561,
3077
+ "learning_rate": 4.412278974507151e-06,
3078
+ "loss": 1.4767,
3079
+ "step": 4340
3080
+ },
3081
+ {
3082
+ "epoch": 2.5981782887860234,
3083
+ "grad_norm": 0.03395635262131691,
3084
+ "learning_rate": 4.286180632536421e-06,
3085
+ "loss": 1.4871,
3086
+ "step": 4350
3087
+ },
3088
+ {
3089
+ "epoch": 2.604151112438405,
3090
+ "grad_norm": 0.04606311395764351,
3091
+ "learning_rate": 4.161808325618886e-06,
3092
+ "loss": 1.4865,
3093
+ "step": 4360
3094
+ },
3095
+ {
3096
+ "epoch": 2.610123936090787,
3097
+ "grad_norm": 0.046741172671318054,
3098
+ "learning_rate": 4.039168064619938e-06,
3099
+ "loss": 1.4896,
3100
+ "step": 4370
3101
+ },
3102
+ {
3103
+ "epoch": 2.6160967597431686,
3104
+ "grad_norm": 0.04130960628390312,
3105
+ "learning_rate": 3.918265776695891e-06,
3106
+ "loss": 1.4837,
3107
+ "step": 4380
3108
+ },
3109
+ {
3110
+ "epoch": 2.6220695833955503,
3111
+ "grad_norm": 0.043055951595306396,
3112
+ "learning_rate": 3.7991073050074678e-06,
3113
+ "loss": 1.4841,
3114
+ "step": 4390
3115
+ },
3116
+ {
3117
+ "epoch": 2.628042407047932,
3118
+ "grad_norm": 0.04418269917368889,
3119
+ "learning_rate": 3.6816984084374485e-06,
3120
+ "loss": 1.4831,
3121
+ "step": 4400
3122
+ },
3123
+ {
3124
+ "epoch": 2.6340152307003137,
3125
+ "grad_norm": 0.036886971443891525,
3126
+ "learning_rate": 3.5660447613123086e-06,
3127
+ "loss": 1.4892,
3128
+ "step": 4410
3129
+ },
3130
+ {
3131
+ "epoch": 2.6399880543526955,
3132
+ "grad_norm": 0.04421091824769974,
3133
+ "learning_rate": 3.452151953128007e-06,
3134
+ "loss": 1.4848,
3135
+ "step": 4420
3136
+ },
3137
+ {
3138
+ "epoch": 2.645960878005077,
3139
+ "grad_norm": 0.042877208441495895,
3140
+ "learning_rate": 3.3400254882798435e-06,
3141
+ "loss": 1.4888,
3142
+ "step": 4430
3143
+ },
3144
+ {
3145
+ "epoch": 2.6519337016574585,
3146
+ "grad_norm": 0.04234934598207474,
3147
+ "learning_rate": 3.2296707857964125e-06,
3148
+ "loss": 1.4796,
3149
+ "step": 4440
3150
+ },
3151
+ {
3152
+ "epoch": 2.65790652530984,
3153
+ "grad_norm": 0.035217370837926865,
3154
+ "learning_rate": 3.121093179077739e-06,
3155
+ "loss": 1.481,
3156
+ "step": 4450
3157
+ },
3158
+ {
3159
+ "epoch": 2.663879348962222,
3160
+ "grad_norm": 0.040508221834897995,
3161
+ "learning_rate": 3.0142979156374806e-06,
3162
+ "loss": 1.4819,
3163
+ "step": 4460
3164
+ },
3165
+ {
3166
+ "epoch": 2.6698521726146036,
3167
+ "grad_norm": 0.041981033980846405,
3168
+ "learning_rate": 2.9092901568493446e-06,
3169
+ "loss": 1.4804,
3170
+ "step": 4470
3171
+ },
3172
+ {
3173
+ "epoch": 2.6758249962669853,
3174
+ "grad_norm": 0.03790983185172081,
3175
+ "learning_rate": 2.80607497769763e-06,
3176
+ "loss": 1.4894,
3177
+ "step": 4480
3178
+ },
3179
+ {
3180
+ "epoch": 2.6817978199193666,
3181
+ "grad_norm": 0.038940299302339554,
3182
+ "learning_rate": 2.70465736653196e-06,
3183
+ "loss": 1.4827,
3184
+ "step": 4490
3185
+ },
3186
+ {
3187
+ "epoch": 2.6877706435717483,
3188
+ "grad_norm": 0.04031272605061531,
3189
+ "learning_rate": 2.605042224826182e-06,
3190
+ "loss": 1.4845,
3191
+ "step": 4500
3192
+ }
3193
+ ],
3194
+ "logging_steps": 10,
3195
+ "max_steps": 5022,
3196
+ "num_input_tokens_seen": 0,
3197
+ "num_train_epochs": 3,
3198
+ "save_steps": 500,
3199
+ "stateful_callbacks": {
3200
+ "TrainerControl": {
3201
+ "args": {
3202
+ "should_epoch_stop": false,
3203
+ "should_evaluate": false,
3204
+ "should_log": false,
3205
+ "should_save": true,
3206
+ "should_training_stop": false
3207
+ },
3208
+ "attributes": {}
3209
+ }
3210
+ },
3211
+ "total_flos": 1.9327446823064306e+19,
3212
+ "train_batch_size": 64,
3213
+ "trial_name": null,
3214
+ "trial_params": null
3215
+ }
checkpoint-4500/training_args.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:6ab0d85bb1f90cdb54e5a3d9359ec0f6a3cdbed2af9fc2a0e31e87697e50efa4
3
+ size 6712
checkpoint-4500/zero_to_fp32.py ADDED
@@ -0,0 +1,604 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #!/usr/bin/env python
2
+
3
+ # Copyright (c) Microsoft Corporation.
4
+ # SPDX-License-Identifier: Apache-2.0
5
+
6
+ # DeepSpeed Team
7
+
8
+ # This script extracts fp32 consolidated weights from a zero 1, 2 and 3 DeepSpeed checkpoints. It gets
9
+ # copied into the top level checkpoint dir, so the user can easily do the conversion at any point in
10
+ # the future. Once extracted, the weights don't require DeepSpeed and can be used in any
11
+ # application.
12
+ #
13
+ # example: python zero_to_fp32.py . pytorch_model.bin
14
+
15
+ import argparse
16
+ import torch
17
+ import glob
18
+ import math
19
+ import os
20
+ import re
21
+ from collections import OrderedDict
22
+ from dataclasses import dataclass
23
+
24
+ # while this script doesn't use deepspeed to recover data, since the checkpoints are pickled with
25
+ # DeepSpeed data structures it has to be available in the current python environment.
26
+ from deepspeed.utils import logger
27
+ from deepspeed.checkpoint.constants import (DS_VERSION, OPTIMIZER_STATE_DICT, SINGLE_PARTITION_OF_FP32_GROUPS,
28
+ FP32_FLAT_GROUPS, ZERO_STAGE, PARTITION_COUNT, PARAM_SHAPES, BUFFER_NAMES,
29
+ FROZEN_PARAM_SHAPES, FROZEN_PARAM_FRAGMENTS)
30
+
31
+
32
+ @dataclass
33
+ class zero_model_state:
34
+ buffers: dict()
35
+ param_shapes: dict()
36
+ shared_params: list
37
+ ds_version: int
38
+ frozen_param_shapes: dict()
39
+ frozen_param_fragments: dict()
40
+
41
+
42
+ debug = 0
43
+
44
+ # load to cpu
45
+ device = torch.device('cpu')
46
+
47
+
48
+ def atoi(text):
49
+ return int(text) if text.isdigit() else text
50
+
51
+
52
+ def natural_keys(text):
53
+ '''
54
+ alist.sort(key=natural_keys) sorts in human order
55
+ http://nedbatchelder.com/blog/200712/human_sorting.html
56
+ (See Toothy's implementation in the comments)
57
+ '''
58
+ return [atoi(c) for c in re.split(r'(\d+)', text)]
59
+
60
+
61
+ def get_model_state_file(checkpoint_dir, zero_stage):
62
+ if not os.path.isdir(checkpoint_dir):
63
+ raise FileNotFoundError(f"Directory '{checkpoint_dir}' doesn't exist")
64
+
65
+ # there should be only one file
66
+ if zero_stage <= 2:
67
+ file = os.path.join(checkpoint_dir, "mp_rank_00_model_states.pt")
68
+ elif zero_stage == 3:
69
+ file = os.path.join(checkpoint_dir, "zero_pp_rank_0_mp_rank_00_model_states.pt")
70
+
71
+ if not os.path.exists(file):
72
+ raise FileNotFoundError(f"can't find model states file at '{file}'")
73
+
74
+ return file
75
+
76
+
77
+ def get_checkpoint_files(checkpoint_dir, glob_pattern):
78
+ # XXX: need to test that this simple glob rule works for multi-node setup too
79
+ ckpt_files = sorted(glob.glob(os.path.join(checkpoint_dir, glob_pattern)), key=natural_keys)
80
+
81
+ if len(ckpt_files) == 0:
82
+ raise FileNotFoundError(f"can't find {glob_pattern} files in directory '{checkpoint_dir}'")
83
+
84
+ return ckpt_files
85
+
86
+
87
+ def get_optim_files(checkpoint_dir):
88
+ return get_checkpoint_files(checkpoint_dir, "*_optim_states.pt")
89
+
90
+
91
+ def get_model_state_files(checkpoint_dir):
92
+ return get_checkpoint_files(checkpoint_dir, "*_model_states.pt")
93
+
94
+
95
+ def parse_model_states(files):
96
+ zero_model_states = []
97
+ for file in files:
98
+ state_dict = torch.load(file, map_location=device)
99
+
100
+ if BUFFER_NAMES not in state_dict:
101
+ raise ValueError(f"{file} is not a model state checkpoint")
102
+ buffer_names = state_dict[BUFFER_NAMES]
103
+ if debug:
104
+ print("Found buffers:", buffer_names)
105
+
106
+ # recover just the buffers while restoring them to fp32 if they were saved in fp16
107
+ buffers = {k: v.float() for k, v in state_dict["module"].items() if k in buffer_names}
108
+ param_shapes = state_dict[PARAM_SHAPES]
109
+
110
+ # collect parameters that are included in param_shapes
111
+ param_names = []
112
+ for s in param_shapes:
113
+ for name in s.keys():
114
+ param_names.append(name)
115
+
116
+ # update with frozen parameters
117
+ frozen_param_shapes = state_dict.get(FROZEN_PARAM_SHAPES, None)
118
+ if frozen_param_shapes is not None:
119
+ if debug:
120
+ print(f"Found frozen_param_shapes: {frozen_param_shapes}")
121
+ param_names += list(frozen_param_shapes.keys())
122
+
123
+ # handle shared params
124
+ shared_params = [[k, v] for k, v in state_dict["shared_params"].items()]
125
+
126
+ ds_version = state_dict.get(DS_VERSION, None)
127
+
128
+ frozen_param_fragments = state_dict.get(FROZEN_PARAM_FRAGMENTS, None)
129
+
130
+ z_model_state = zero_model_state(buffers=buffers,
131
+ param_shapes=param_shapes,
132
+ shared_params=shared_params,
133
+ ds_version=ds_version,
134
+ frozen_param_shapes=frozen_param_shapes,
135
+ frozen_param_fragments=frozen_param_fragments)
136
+ zero_model_states.append(z_model_state)
137
+
138
+ return zero_model_states
139
+
140
+
141
+ def parse_optim_states(files, ds_checkpoint_dir):
142
+
143
+ total_files = len(files)
144
+ state_dicts = []
145
+ for f in files:
146
+ state_dict = torch.load(f, map_location=device)
147
+ # immediately discard the potentially huge 2 optimizer states as we only care for fp32 master weights
148
+ # and also handle the case where it was already removed by another helper script
149
+ state_dict["optimizer_state_dict"].pop("optimizer_state_dict", None)
150
+ state_dicts.append(state_dict)
151
+
152
+ if not ZERO_STAGE in state_dicts[0][OPTIMIZER_STATE_DICT]:
153
+ raise ValueError(f"{files[0]} is not a zero checkpoint")
154
+ zero_stage = state_dicts[0][OPTIMIZER_STATE_DICT][ZERO_STAGE]
155
+ world_size = state_dicts[0][OPTIMIZER_STATE_DICT][PARTITION_COUNT]
156
+
157
+ # For ZeRO-2 each param group can have different partition_count as data parallelism for expert
158
+ # parameters can be different from data parallelism for non-expert parameters. So we can just
159
+ # use the max of the partition_count to get the dp world_size.
160
+
161
+ if type(world_size) is list:
162
+ world_size = max(world_size)
163
+
164
+ if world_size != total_files:
165
+ raise ValueError(
166
+ f"Expected {world_size} of '*_optim_states.pt' under '{ds_checkpoint_dir}' but found {total_files} files. "
167
+ "Possibly due to an overwrite of an old checkpoint, or a checkpoint didn't get saved by one or more processes."
168
+ )
169
+
170
+ # the groups are named differently in each stage
171
+ if zero_stage <= 2:
172
+ fp32_groups_key = SINGLE_PARTITION_OF_FP32_GROUPS
173
+ elif zero_stage == 3:
174
+ fp32_groups_key = FP32_FLAT_GROUPS
175
+ else:
176
+ raise ValueError(f"unknown zero stage {zero_stage}")
177
+
178
+ if zero_stage <= 2:
179
+ fp32_flat_groups = [state_dicts[i][OPTIMIZER_STATE_DICT][fp32_groups_key] for i in range(len(state_dicts))]
180
+ elif zero_stage == 3:
181
+ # if there is more than one param group, there will be multiple flattened tensors - one
182
+ # flattened tensor per group - for simplicity merge them into a single tensor
183
+ #
184
+ # XXX: could make the script more memory efficient for when there are multiple groups - it
185
+ # will require matching the sub-lists of param_shapes for each param group flattened tensor
186
+
187
+ fp32_flat_groups = [
188
+ torch.cat(state_dicts[i][OPTIMIZER_STATE_DICT][fp32_groups_key], 0) for i in range(len(state_dicts))
189
+ ]
190
+
191
+ return zero_stage, world_size, fp32_flat_groups
192
+
193
+
194
+ def _get_fp32_state_dict_from_zero_checkpoint(ds_checkpoint_dir, exclude_frozen_parameters):
195
+ """
196
+ Returns fp32 state_dict reconstructed from ds checkpoint
197
+
198
+ Args:
199
+ - ``ds_checkpoint_dir``: path to the deepspeed checkpoint folder (where the optimizer files are)
200
+
201
+ """
202
+ print(f"Processing zero checkpoint '{ds_checkpoint_dir}'")
203
+
204
+ optim_files = get_optim_files(ds_checkpoint_dir)
205
+ zero_stage, world_size, fp32_flat_groups = parse_optim_states(optim_files, ds_checkpoint_dir)
206
+ print(f"Detected checkpoint of type zero stage {zero_stage}, world_size: {world_size}")
207
+
208
+ model_files = get_model_state_files(ds_checkpoint_dir)
209
+
210
+ zero_model_states = parse_model_states(model_files)
211
+ print(f'Parsing checkpoint created by deepspeed=={zero_model_states[0].ds_version}')
212
+
213
+ if zero_stage <= 2:
214
+ return _get_fp32_state_dict_from_zero2_checkpoint(world_size, fp32_flat_groups, zero_model_states,
215
+ exclude_frozen_parameters)
216
+ elif zero_stage == 3:
217
+ return _get_fp32_state_dict_from_zero3_checkpoint(world_size, fp32_flat_groups, zero_model_states,
218
+ exclude_frozen_parameters)
219
+
220
+
221
+ def _zero2_merge_frozen_params(state_dict, zero_model_states):
222
+ if zero_model_states[0].frozen_param_shapes is None or len(zero_model_states[0].frozen_param_shapes) == 0:
223
+ return
224
+
225
+ frozen_param_shapes = zero_model_states[0].frozen_param_shapes
226
+ frozen_param_fragments = zero_model_states[0].frozen_param_fragments
227
+
228
+ if debug:
229
+ num_elem = sum(s.numel() for s in frozen_param_shapes.values())
230
+ print(f'rank 0: {FROZEN_PARAM_SHAPES}.numel = {num_elem}')
231
+
232
+ wanted_params = len(frozen_param_shapes)
233
+ wanted_numel = sum(s.numel() for s in frozen_param_shapes.values())
234
+ avail_numel = sum([p.numel() for p in frozen_param_fragments.values()])
235
+ print(f'Frozen params: Have {avail_numel} numels to process.')
236
+ print(f'Frozen params: Need {wanted_numel} numels in {wanted_params} params')
237
+
238
+ total_params = 0
239
+ total_numel = 0
240
+ for name, shape in frozen_param_shapes.items():
241
+ total_params += 1
242
+ unpartitioned_numel = shape.numel()
243
+ total_numel += unpartitioned_numel
244
+
245
+ state_dict[name] = frozen_param_fragments[name]
246
+
247
+ if debug:
248
+ print(f"{name} full shape: {shape} unpartitioned numel {unpartitioned_numel} ")
249
+
250
+ print(f"Reconstructed Frozen fp32 state dict with {total_params} params {total_numel} elements")
251
+
252
+
253
+ def _has_callable(obj, fn):
254
+ attr = getattr(obj, fn, None)
255
+ return callable(attr)
256
+
257
+
258
+ def _zero2_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states):
259
+ param_shapes = zero_model_states[0].param_shapes
260
+
261
+ # Reconstruction protocol:
262
+ #
263
+ # XXX: document this
264
+
265
+ if debug:
266
+ for i in range(world_size):
267
+ for j in range(len(fp32_flat_groups[0])):
268
+ print(f"{FP32_FLAT_GROUPS}[{i}][{j}].shape={fp32_flat_groups[i][j].shape}")
269
+
270
+ # XXX: memory usage doubles here (zero2)
271
+ num_param_groups = len(fp32_flat_groups[0])
272
+ merged_single_partition_of_fp32_groups = []
273
+ for i in range(num_param_groups):
274
+ merged_partitions = [sd[i] for sd in fp32_flat_groups]
275
+ full_single_fp32_vector = torch.cat(merged_partitions, 0)
276
+ merged_single_partition_of_fp32_groups.append(full_single_fp32_vector)
277
+ avail_numel = sum(
278
+ [full_single_fp32_vector.numel() for full_single_fp32_vector in merged_single_partition_of_fp32_groups])
279
+
280
+ if debug:
281
+ wanted_params = sum([len(shapes) for shapes in param_shapes])
282
+ wanted_numel = sum([sum(shape.numel() for shape in shapes.values()) for shapes in param_shapes])
283
+ # not asserting if there is a mismatch due to possible padding
284
+ print(f"Have {avail_numel} numels to process.")
285
+ print(f"Need {wanted_numel} numels in {wanted_params} params.")
286
+
287
+ # params
288
+ # XXX: for huge models that can't fit into the host's RAM we will have to recode this to support
289
+ # out-of-core computing solution
290
+ total_numel = 0
291
+ total_params = 0
292
+ for shapes, full_single_fp32_vector in zip(param_shapes, merged_single_partition_of_fp32_groups):
293
+ offset = 0
294
+ avail_numel = full_single_fp32_vector.numel()
295
+ for name, shape in shapes.items():
296
+
297
+ unpartitioned_numel = shape.numel() if _has_callable(shape, 'numel') else math.prod(shape)
298
+ total_numel += unpartitioned_numel
299
+ total_params += 1
300
+
301
+ if debug:
302
+ print(f"{name} full shape: {shape} unpartitioned numel {unpartitioned_numel} ")
303
+ state_dict[name] = full_single_fp32_vector.narrow(0, offset, unpartitioned_numel).view(shape)
304
+ offset += unpartitioned_numel
305
+
306
+ # Z2 started to align to 2*world_size to improve nccl performance. Therefore both offset and
307
+ # avail_numel can differ by anywhere between 0..2*world_size. Due to two unrelated complex
308
+ # paddings performed in the code it's almost impossible to predict the exact numbers w/o the
309
+ # live optimizer object, so we are checking that the numbers are within the right range
310
+ align_to = 2 * world_size
311
+
312
+ def zero2_align(x):
313
+ return align_to * math.ceil(x / align_to)
314
+
315
+ if debug:
316
+ print(f"original offset={offset}, avail_numel={avail_numel}")
317
+
318
+ offset = zero2_align(offset)
319
+ avail_numel = zero2_align(avail_numel)
320
+
321
+ if debug:
322
+ print(f"aligned offset={offset}, avail_numel={avail_numel}")
323
+
324
+ # Sanity check
325
+ if offset != avail_numel:
326
+ raise ValueError(f"consumed {offset} numels out of {avail_numel} - something is wrong")
327
+
328
+ print(f"Reconstructed fp32 state dict with {total_params} params {total_numel} elements")
329
+
330
+
331
+ def _get_fp32_state_dict_from_zero2_checkpoint(world_size, fp32_flat_groups, zero_model_states,
332
+ exclude_frozen_parameters):
333
+ state_dict = OrderedDict()
334
+
335
+ # buffers
336
+ buffers = zero_model_states[0].buffers
337
+ state_dict.update(buffers)
338
+ if debug:
339
+ print(f"added {len(buffers)} buffers")
340
+
341
+ if not exclude_frozen_parameters:
342
+ _zero2_merge_frozen_params(state_dict, zero_model_states)
343
+
344
+ _zero2_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states)
345
+
346
+ # recover shared parameters
347
+ for pair in zero_model_states[0].shared_params:
348
+ if pair[1] in state_dict:
349
+ state_dict[pair[0]] = state_dict[pair[1]]
350
+
351
+ return state_dict
352
+
353
+
354
+ def zero3_partitioned_param_info(unpartitioned_numel, world_size):
355
+ remainder = unpartitioned_numel % world_size
356
+ padding_numel = (world_size - remainder) if remainder else 0
357
+ partitioned_numel = math.ceil(unpartitioned_numel / world_size)
358
+ return partitioned_numel, padding_numel
359
+
360
+
361
+ def _zero3_merge_frozen_params(state_dict, world_size, zero_model_states):
362
+ if zero_model_states[0].frozen_param_shapes is None or len(zero_model_states[0].frozen_param_shapes) == 0:
363
+ return
364
+
365
+ if debug:
366
+ for i in range(world_size):
367
+ num_elem = sum(s.numel() for s in zero_model_states[i].frozen_param_fragments.values())
368
+ print(f'rank {i}: {FROZEN_PARAM_SHAPES}.numel = {num_elem}')
369
+
370
+ frozen_param_shapes = zero_model_states[0].frozen_param_shapes
371
+ wanted_params = len(frozen_param_shapes)
372
+ wanted_numel = sum(s.numel() for s in frozen_param_shapes.values())
373
+ avail_numel = sum([p.numel() for p in zero_model_states[0].frozen_param_fragments.values()]) * world_size
374
+ print(f'Frozen params: Have {avail_numel} numels to process.')
375
+ print(f'Frozen params: Need {wanted_numel} numels in {wanted_params} params')
376
+
377
+ total_params = 0
378
+ total_numel = 0
379
+ for name, shape in zero_model_states[0].frozen_param_shapes.items():
380
+ total_params += 1
381
+ unpartitioned_numel = shape.numel()
382
+ total_numel += unpartitioned_numel
383
+
384
+ param_frags = tuple(model_state.frozen_param_fragments[name] for model_state in zero_model_states)
385
+ state_dict[name] = torch.cat(param_frags, 0).narrow(0, 0, unpartitioned_numel).view(shape)
386
+
387
+ partitioned_numel, partitioned_padding_numel = zero3_partitioned_param_info(unpartitioned_numel, world_size)
388
+
389
+ if debug:
390
+ print(
391
+ f"Frozen params: {total_params} {name} full shape: {shape} partition0 numel={partitioned_numel} partitioned_padding_numel={partitioned_padding_numel}"
392
+ )
393
+
394
+ print(f"Reconstructed Frozen fp32 state dict with {total_params} params {total_numel} elements")
395
+
396
+
397
+ def _zero3_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states):
398
+ param_shapes = zero_model_states[0].param_shapes
399
+ avail_numel = fp32_flat_groups[0].numel() * world_size
400
+ # Reconstruction protocol: For zero3 we need to zip the partitions together at boundary of each
401
+ # param, re-consolidating each param, while dealing with padding if any
402
+
403
+ # merge list of dicts, preserving order
404
+ param_shapes = {k: v for d in param_shapes for k, v in d.items()}
405
+
406
+ if debug:
407
+ for i in range(world_size):
408
+ print(f"{FP32_FLAT_GROUPS}[{i}].shape={fp32_flat_groups[i].shape}")
409
+
410
+ wanted_params = len(param_shapes)
411
+ wanted_numel = sum(shape.numel() for shape in param_shapes.values())
412
+ # not asserting if there is a mismatch due to possible padding
413
+ avail_numel = fp32_flat_groups[0].numel() * world_size
414
+ print(f"Trainable params: Have {avail_numel} numels to process.")
415
+ print(f"Trainable params: Need {wanted_numel} numels in {wanted_params} params.")
416
+
417
+ # params
418
+ # XXX: for huge models that can't fit into the host's RAM we will have to recode this to support
419
+ # out-of-core computing solution
420
+ offset = 0
421
+ total_numel = 0
422
+ total_params = 0
423
+ for name, shape in param_shapes.items():
424
+
425
+ unpartitioned_numel = shape.numel()
426
+ total_numel += unpartitioned_numel
427
+ total_params += 1
428
+
429
+ partitioned_numel, partitioned_padding_numel = zero3_partitioned_param_info(unpartitioned_numel, world_size)
430
+
431
+ if debug:
432
+ print(
433
+ f"Trainable params: {total_params} {name} full shape: {shape} partition0 numel={partitioned_numel} partitioned_padding_numel={partitioned_padding_numel}"
434
+ )
435
+
436
+ # XXX: memory usage doubles here
437
+ state_dict[name] = torch.cat(
438
+ tuple(fp32_flat_groups[i].narrow(0, offset, partitioned_numel) for i in range(world_size)),
439
+ 0).narrow(0, 0, unpartitioned_numel).view(shape)
440
+ offset += partitioned_numel
441
+
442
+ offset *= world_size
443
+
444
+ # Sanity check
445
+ if offset != avail_numel:
446
+ raise ValueError(f"consumed {offset} numels out of {avail_numel} - something is wrong")
447
+
448
+ print(f"Reconstructed Trainable fp32 state dict with {total_params} params {total_numel} elements")
449
+
450
+
451
+ def _get_fp32_state_dict_from_zero3_checkpoint(world_size, fp32_flat_groups, zero_model_states,
452
+ exclude_frozen_parameters):
453
+ state_dict = OrderedDict()
454
+
455
+ # buffers
456
+ buffers = zero_model_states[0].buffers
457
+ state_dict.update(buffers)
458
+ if debug:
459
+ print(f"added {len(buffers)} buffers")
460
+
461
+ if not exclude_frozen_parameters:
462
+ _zero3_merge_frozen_params(state_dict, world_size, zero_model_states)
463
+
464
+ _zero3_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states)
465
+
466
+ # recover shared parameters
467
+ for pair in zero_model_states[0].shared_params:
468
+ if pair[1] in state_dict:
469
+ state_dict[pair[0]] = state_dict[pair[1]]
470
+
471
+ return state_dict
472
+
473
+
474
+ def get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir, tag=None, exclude_frozen_parameters=False):
475
+ """
476
+ Convert ZeRO 2 or 3 checkpoint into a single fp32 consolidated state_dict that can be loaded with
477
+ ``load_state_dict()`` and used for training without DeepSpeed or shared with others, for example
478
+ via a model hub.
479
+
480
+ Args:
481
+ - ``checkpoint_dir``: path to the desired checkpoint folder
482
+ - ``tag``: checkpoint tag used as a unique identifier for checkpoint. If not provided will attempt to load tag in 'latest' file. e.g., ``global_step14``
483
+ - ``exclude_frozen_parameters``: exclude frozen parameters
484
+
485
+ Returns:
486
+ - pytorch ``state_dict``
487
+
488
+ Note: this approach may not work if your application doesn't have sufficient free CPU memory and
489
+ you may need to use the offline approach using the ``zero_to_fp32.py`` script that is saved with
490
+ the checkpoint.
491
+
492
+ A typical usage might be ::
493
+
494
+ from deepspeed.utils.zero_to_fp32 import get_fp32_state_dict_from_zero_checkpoint
495
+ # do the training and checkpoint saving
496
+ state_dict = get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir) # already on cpu
497
+ model = model.cpu() # move to cpu
498
+ model.load_state_dict(state_dict)
499
+ # submit to model hub or save the model to share with others
500
+
501
+ In this example the ``model`` will no longer be usable in the deepspeed context of the same
502
+ application. i.e. you will need to re-initialize the deepspeed engine, since
503
+ ``model.load_state_dict(state_dict)`` will remove all the deepspeed magic from it.
504
+
505
+ If you want it all done for you, use ``load_state_dict_from_zero_checkpoint`` instead.
506
+
507
+ """
508
+ if tag is None:
509
+ latest_path = os.path.join(checkpoint_dir, 'latest')
510
+ if os.path.isfile(latest_path):
511
+ with open(latest_path, 'r') as fd:
512
+ tag = fd.read().strip()
513
+ else:
514
+ raise ValueError(f"Unable to find 'latest' file at {latest_path}")
515
+
516
+ ds_checkpoint_dir = os.path.join(checkpoint_dir, tag)
517
+
518
+ if not os.path.isdir(ds_checkpoint_dir):
519
+ raise FileNotFoundError(f"Directory '{ds_checkpoint_dir}' doesn't exist")
520
+
521
+ return _get_fp32_state_dict_from_zero_checkpoint(ds_checkpoint_dir, exclude_frozen_parameters)
522
+
523
+
524
+ def convert_zero_checkpoint_to_fp32_state_dict(checkpoint_dir, output_file, tag=None, exclude_frozen_parameters=False):
525
+ """
526
+ Convert ZeRO 2 or 3 checkpoint into a single fp32 consolidated ``state_dict`` file that can be
527
+ loaded with ``torch.load(file)`` + ``load_state_dict()`` and used for training without DeepSpeed.
528
+
529
+ Args:
530
+ - ``checkpoint_dir``: path to the desired checkpoint folder. (one that contains the tag-folder, like ``global_step14``)
531
+ - ``output_file``: path to the pytorch fp32 state_dict output file (e.g. path/pytorch_model.bin)
532
+ - ``tag``: checkpoint tag used as a unique identifier for checkpoint. If not provided will attempt to load tag in the file named ``latest`` in the checkpoint folder, e.g., ``global_step14``
533
+ - ``exclude_frozen_parameters``: exclude frozen parameters
534
+ """
535
+
536
+ state_dict = get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir, tag, exclude_frozen_parameters)
537
+ print(f"Saving fp32 state dict to {output_file}")
538
+ torch.save(state_dict, output_file)
539
+
540
+
541
+ def load_state_dict_from_zero_checkpoint(model, checkpoint_dir, tag=None):
542
+ """
543
+ 1. Put the provided model to cpu
544
+ 2. Convert ZeRO 2 or 3 checkpoint into a single fp32 consolidated ``state_dict``
545
+ 3. Load it into the provided model
546
+
547
+ Args:
548
+ - ``model``: the model object to update
549
+ - ``checkpoint_dir``: path to the desired checkpoint folder. (one that contains the tag-folder, like ``global_step14``)
550
+ - ``tag``: checkpoint tag used as a unique identifier for checkpoint. If not provided will attempt to load tag in the file named ``latest`` in the checkpoint folder, e.g., ``global_step14``
551
+
552
+ Returns:
553
+ - ``model`: modified model
554
+
555
+ Make sure you have plenty of CPU memory available before you call this function. If you don't
556
+ have enough use the ``zero_to_fp32.py`` utility to do the conversion. You will find it
557
+ conveniently placed for you in the checkpoint folder.
558
+
559
+ A typical usage might be ::
560
+
561
+ from deepspeed.utils.zero_to_fp32 import load_state_dict_from_zero_checkpoint
562
+ model = load_state_dict_from_zero_checkpoint(trainer.model, checkpoint_dir)
563
+ # submit to model hub or save the model to share with others
564
+
565
+ Note, that once this was run, the ``model`` will no longer be usable in the deepspeed context
566
+ of the same application. i.e. you will need to re-initialize the deepspeed engine, since
567
+ ``model.load_state_dict(state_dict)`` will remove all the deepspeed magic from it.
568
+
569
+ """
570
+ logger.info(f"Extracting fp32 weights")
571
+ state_dict = get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir, tag)
572
+
573
+ logger.info(f"Overwriting model with fp32 weights")
574
+ model = model.cpu()
575
+ model.load_state_dict(state_dict, strict=False)
576
+
577
+ return model
578
+
579
+
580
+ if __name__ == "__main__":
581
+
582
+ parser = argparse.ArgumentParser()
583
+ parser.add_argument("checkpoint_dir",
584
+ type=str,
585
+ help="path to the desired checkpoint folder, e.g., path/checkpoint-12")
586
+ parser.add_argument(
587
+ "output_file",
588
+ type=str,
589
+ help="path to the pytorch fp32 state_dict output file (e.g. path/checkpoint-12/pytorch_model.bin)")
590
+ parser.add_argument("-t",
591
+ "--tag",
592
+ type=str,
593
+ default=None,
594
+ help="checkpoint tag used as a unique identifier for checkpoint. e.g., global_step1")
595
+ parser.add_argument("--exclude_frozen_parameters", action='store_true', help="exclude frozen parameters")
596
+ parser.add_argument("-d", "--debug", action='store_true', help="enable debug")
597
+ args = parser.parse_args()
598
+
599
+ debug = args.debug
600
+
601
+ convert_zero_checkpoint_to_fp32_state_dict(args.checkpoint_dir,
602
+ args.output_file,
603
+ tag=args.tag,
604
+ exclude_frozen_parameters=args.exclude_frozen_parameters)
checkpoint-579/config.json ADDED
@@ -0,0 +1,30 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "_name_or_path": "/mnt/ddn/yrm/model/MMfreeLM-370M",
3
+ "architectures": [
4
+ "HGRNBitForCausalLM"
5
+ ],
6
+ "attn_mode": "fused_recurrent",
7
+ "bos_token_id": 1,
8
+ "conv_size": 4,
9
+ "eos_token_id": 2,
10
+ "expand_ratio": 1,
11
+ "fuse_cross_entropy": true,
12
+ "hidden_act": "swish",
13
+ "hidden_ratio": 4,
14
+ "hidden_size": 1024,
15
+ "initializer_range": 0.02,
16
+ "intermediate_size": null,
17
+ "max_position_embeddings": 2048,
18
+ "model_type": "hgrn_bit",
19
+ "num_heads": 1,
20
+ "num_hidden_layers": 24,
21
+ "rms_norm_eps": 1e-06,
22
+ "share_conv_kernel": true,
23
+ "tie_word_embeddings": false,
24
+ "torch_dtype": "bfloat16",
25
+ "transformers_version": "4.45.2",
26
+ "use_cache": false,
27
+ "use_lower_bound": true,
28
+ "use_short_conv": false,
29
+ "vocab_size": 32000
30
+ }