dreamerdeo commited on
Commit
c185259
1 Parent(s): 196f07f
config.json ADDED
@@ -0,0 +1,30 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "_name_or_path": "google/t5-large-lm-adapt",
3
+ "architectures": [
4
+ "T5ForConditionalGeneration"
5
+ ],
6
+ "d_ff": 2816,
7
+ "d_kv": 64,
8
+ "d_model": 1024,
9
+ "decoder_start_token_id": 0,
10
+ "dropout_rate": 0.1,
11
+ "eos_token_id": 1,
12
+ "feed_forward_proj": "gated-gelu",
13
+ "gradient_checkpointing": true,
14
+ "initializer_factor": 1.0,
15
+ "is_encoder_decoder": true,
16
+ "layer_norm_epsilon": 1e-06,
17
+ "max_length": 512,
18
+ "model_type": "t5",
19
+ "num_decoder_layers": 24,
20
+ "num_heads": 16,
21
+ "num_layers": 24,
22
+ "output_past": true,
23
+ "pad_token_id": 0,
24
+ "relative_attention_num_buckets": 32,
25
+ "tie_word_embeddings": false,
26
+ "torch_dtype": "float32",
27
+ "transformers_version": "4.9.1",
28
+ "use_cache": false,
29
+ "vocab_size": 32128
30
+ }
latest ADDED
@@ -0,0 +1 @@
 
 
1
+ global_step2000
pytorch_model.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:e37ea3374e90847d2f52fbeec66e4189afb8961c582f597ed237861a1d68406b
3
+ size 3132793282
rng_state_0.pth ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:33d4e867339985a01d3551db4e58b19992103c762b3ebb145698ca499afe8886
3
+ size 14649
rng_state_1.pth ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:07b9b533e43a86fd8d75da6e6dc2516c5a274ae1f30b985b8c6510bfe0cd7638
3
+ size 14654
rng_state_2.pth ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:e404ce3b064e6bb412f0226169d0deaf72d60d8d1935994e0e97d8bbfdbaebfd
3
+ size 14654
rng_state_3.pth ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:8b9d1476a94159f17356260ee7fb2b4f98d4b6ec20ead888948f164e364a97eb
3
+ size 14654
special_tokens_map.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"eos_token": "</s>", "unk_token": "<unk>", "pad_token": "<pad>", "additional_special_tokens": ["<extra_id_0>", "<extra_id_1>", "<extra_id_2>", "<extra_id_3>", "<extra_id_4>", "<extra_id_5>", "<extra_id_6>", "<extra_id_7>", "<extra_id_8>", "<extra_id_9>", "<extra_id_10>", "<extra_id_11>", "<extra_id_12>", "<extra_id_13>", "<extra_id_14>", "<extra_id_15>", "<extra_id_16>", "<extra_id_17>", "<extra_id_18>", "<extra_id_19>", "<extra_id_20>", "<extra_id_21>", "<extra_id_22>", "<extra_id_23>", "<extra_id_24>", "<extra_id_25>", "<extra_id_26>", "<extra_id_27>", "<extra_id_28>", "<extra_id_29>", "<extra_id_30>", "<extra_id_31>", "<extra_id_32>", "<extra_id_33>", "<extra_id_34>", "<extra_id_35>", "<extra_id_36>", "<extra_id_37>", "<extra_id_38>", "<extra_id_39>", "<extra_id_40>", "<extra_id_41>", "<extra_id_42>", "<extra_id_43>", "<extra_id_44>", "<extra_id_45>", "<extra_id_46>", "<extra_id_47>", "<extra_id_48>", "<extra_id_49>", "<extra_id_50>", "<extra_id_51>", "<extra_id_52>", "<extra_id_53>", "<extra_id_54>", "<extra_id_55>", "<extra_id_56>", "<extra_id_57>", "<extra_id_58>", "<extra_id_59>", "<extra_id_60>", "<extra_id_61>", "<extra_id_62>", "<extra_id_63>", "<extra_id_64>", "<extra_id_65>", "<extra_id_66>", "<extra_id_67>", "<extra_id_68>", "<extra_id_69>", "<extra_id_70>", "<extra_id_71>", "<extra_id_72>", "<extra_id_73>", "<extra_id_74>", "<extra_id_75>", "<extra_id_76>", "<extra_id_77>", "<extra_id_78>", "<extra_id_79>", "<extra_id_80>", "<extra_id_81>", "<extra_id_82>", "<extra_id_83>", "<extra_id_84>", "<extra_id_85>", "<extra_id_86>", "<extra_id_87>", "<extra_id_88>", "<extra_id_89>", "<extra_id_90>", "<extra_id_91>", "<extra_id_92>", "<extra_id_93>", "<extra_id_94>", "<extra_id_95>", "<extra_id_96>", "<extra_id_97>", "<extra_id_98>", "<extra_id_99>"]}
tokenizer.json ADDED
The diff for this file is too large to render. See raw diff
 
tokenizer_config.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"eos_token": "</s>", "unk_token": "<unk>", "pad_token": "<pad>", "extra_ids": 100, "additional_special_tokens": ["<extra_id_0>", "<extra_id_1>", "<extra_id_2>", "<extra_id_3>", "<extra_id_4>", "<extra_id_5>", "<extra_id_6>", "<extra_id_7>", "<extra_id_8>", "<extra_id_9>", "<extra_id_10>", "<extra_id_11>", "<extra_id_12>", "<extra_id_13>", "<extra_id_14>", "<extra_id_15>", "<extra_id_16>", "<extra_id_17>", "<extra_id_18>", "<extra_id_19>", "<extra_id_20>", "<extra_id_21>", "<extra_id_22>", "<extra_id_23>", "<extra_id_24>", "<extra_id_25>", "<extra_id_26>", "<extra_id_27>", "<extra_id_28>", "<extra_id_29>", "<extra_id_30>", "<extra_id_31>", "<extra_id_32>", "<extra_id_33>", "<extra_id_34>", "<extra_id_35>", "<extra_id_36>", "<extra_id_37>", "<extra_id_38>", "<extra_id_39>", "<extra_id_40>", "<extra_id_41>", "<extra_id_42>", "<extra_id_43>", "<extra_id_44>", "<extra_id_45>", "<extra_id_46>", "<extra_id_47>", "<extra_id_48>", "<extra_id_49>", "<extra_id_50>", "<extra_id_51>", "<extra_id_52>", "<extra_id_53>", "<extra_id_54>", "<extra_id_55>", "<extra_id_56>", "<extra_id_57>", "<extra_id_58>", "<extra_id_59>", "<extra_id_60>", "<extra_id_61>", "<extra_id_62>", "<extra_id_63>", "<extra_id_64>", "<extra_id_65>", "<extra_id_66>", "<extra_id_67>", "<extra_id_68>", "<extra_id_69>", "<extra_id_70>", "<extra_id_71>", "<extra_id_72>", "<extra_id_73>", "<extra_id_74>", "<extra_id_75>", "<extra_id_76>", "<extra_id_77>", "<extra_id_78>", "<extra_id_79>", "<extra_id_80>", "<extra_id_81>", "<extra_id_82>", "<extra_id_83>", "<extra_id_84>", "<extra_id_85>", "<extra_id_86>", "<extra_id_87>", "<extra_id_88>", "<extra_id_89>", "<extra_id_90>", "<extra_id_91>", "<extra_id_92>", "<extra_id_93>", "<extra_id_94>", "<extra_id_95>", "<extra_id_96>", "<extra_id_97>", "<extra_id_98>", "<extra_id_99>"], "sp_model_kwargs": {}, "model_max_length": 512, "name_or_path": "google/t5-large-lm-adapt", "special_tokens_map_file": "/home/patrick/.cache/huggingface/transformers/28fa6bb11d5fd637c4b67b299f5616169510dac4cd181efc8f70674c7872c874.c94798918c92ded6aeef2d2f0e666d2cc4145eca1aa6e1336fde07f2e13e2f46", "tokenizer_class": "T5Tokenizer"}
trainer_state.json ADDED
@@ -0,0 +1,1248 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "best_metric": null,
3
+ "best_model_checkpoint": null,
4
+ "epoch": 32.78688524590164,
5
+ "global_step": 2000,
6
+ "is_hyper_param_search": false,
7
+ "is_local_process_zero": true,
8
+ "is_world_process_zero": true,
9
+ "log_history": [
10
+ {
11
+ "epoch": 0.16,
12
+ "learning_rate": 2.4999999999999998e-05,
13
+ "loss": 4.5271,
14
+ "step": 10
15
+ },
16
+ {
17
+ "epoch": 0.33,
18
+ "learning_rate": 3.2525749891599525e-05,
19
+ "loss": 3.9027,
20
+ "step": 20
21
+ },
22
+ {
23
+ "epoch": 0.49,
24
+ "learning_rate": 3.6928031367991554e-05,
25
+ "loss": 3.4367,
26
+ "step": 30
27
+ },
28
+ {
29
+ "epoch": 0.66,
30
+ "learning_rate": 4.005149978319905e-05,
31
+ "loss": 3.3343,
32
+ "step": 40
33
+ },
34
+ {
35
+ "epoch": 0.82,
36
+ "learning_rate": 4.247425010840046e-05,
37
+ "loss": 3.2186,
38
+ "step": 50
39
+ },
40
+ {
41
+ "epoch": 0.98,
42
+ "learning_rate": 4.445378125959108e-05,
43
+ "loss": 3.1259,
44
+ "step": 60
45
+ },
46
+ {
47
+ "epoch": 1.15,
48
+ "learning_rate": 4.612745100035642e-05,
49
+ "loss": 2.9406,
50
+ "step": 70
51
+ },
52
+ {
53
+ "epoch": 1.31,
54
+ "learning_rate": 4.757724967479858e-05,
55
+ "loss": 2.8567,
56
+ "step": 80
57
+ },
58
+ {
59
+ "epoch": 1.48,
60
+ "learning_rate": 4.885606273598312e-05,
61
+ "loss": 2.8893,
62
+ "step": 90
63
+ },
64
+ {
65
+ "epoch": 1.64,
66
+ "learning_rate": 4.9999999999999996e-05,
67
+ "loss": 2.9067,
68
+ "step": 100
69
+ },
70
+ {
71
+ "epoch": 1.8,
72
+ "learning_rate": 5.1034817128955624e-05,
73
+ "loss": 2.813,
74
+ "step": 110
75
+ },
76
+ {
77
+ "epoch": 1.97,
78
+ "learning_rate": 5.197953115119061e-05,
79
+ "loss": 2.8364,
80
+ "step": 120
81
+ },
82
+ {
83
+ "epoch": 2.13,
84
+ "learning_rate": 5.2848583807670914e-05,
85
+ "loss": 2.7439,
86
+ "step": 130
87
+ },
88
+ {
89
+ "epoch": 2.3,
90
+ "learning_rate": 5.365320089195593e-05,
91
+ "loss": 2.7048,
92
+ "step": 140
93
+ },
94
+ {
95
+ "epoch": 2.46,
96
+ "learning_rate": 5.4402281476392025e-05,
97
+ "loss": 2.6631,
98
+ "step": 150
99
+ },
100
+ {
101
+ "epoch": 2.62,
102
+ "learning_rate": 5.5102999566398106e-05,
103
+ "loss": 2.6804,
104
+ "step": 160
105
+ },
106
+ {
107
+ "epoch": 2.79,
108
+ "learning_rate": 5.5761223034456847e-05,
109
+ "loss": 2.6094,
110
+ "step": 170
111
+ },
112
+ {
113
+ "epoch": 2.95,
114
+ "learning_rate": 5.6381812627582644e-05,
115
+ "loss": 2.6055,
116
+ "step": 180
117
+ },
118
+ {
119
+ "epoch": 3.11,
120
+ "learning_rate": 5.696884002382071e-05,
121
+ "loss": 2.4945,
122
+ "step": 190
123
+ },
124
+ {
125
+ "epoch": 3.28,
126
+ "learning_rate": 5.752574989159952e-05,
127
+ "loss": 2.5523,
128
+ "step": 200
129
+ },
130
+ {
131
+ "epoch": 3.44,
132
+ "learning_rate": 5.805548236834797e-05,
133
+ "loss": 2.5406,
134
+ "step": 210
135
+ },
136
+ {
137
+ "epoch": 3.61,
138
+ "learning_rate": 5.856056702055516e-05,
139
+ "loss": 2.5444,
140
+ "step": 220
141
+ },
142
+ {
143
+ "epoch": 3.77,
144
+ "learning_rate": 5.9043195900439815e-05,
145
+ "loss": 2.568,
146
+ "step": 230
147
+ },
148
+ {
149
+ "epoch": 3.93,
150
+ "learning_rate": 5.950528104279014e-05,
151
+ "loss": 2.5305,
152
+ "step": 240
153
+ },
154
+ {
155
+ "epoch": 4.1,
156
+ "learning_rate": 5.9948500216800926e-05,
157
+ "loss": 2.4653,
158
+ "step": 250
159
+ },
160
+ {
161
+ "epoch": 4.26,
162
+ "learning_rate": 6.037433369927045e-05,
163
+ "loss": 2.4644,
164
+ "step": 260
165
+ },
166
+ {
167
+ "epoch": 4.43,
168
+ "learning_rate": 6.078409410397467e-05,
169
+ "loss": 2.4302,
170
+ "step": 270
171
+ },
172
+ {
173
+ "epoch": 4.59,
174
+ "learning_rate": 6.117895078355547e-05,
175
+ "loss": 2.4025,
176
+ "step": 280
177
+ },
178
+ {
179
+ "epoch": 4.75,
180
+ "learning_rate": 6.15599499474739e-05,
181
+ "loss": 2.4185,
182
+ "step": 290
183
+ },
184
+ {
185
+ "epoch": 4.92,
186
+ "learning_rate": 6.192803136799156e-05,
187
+ "loss": 2.4651,
188
+ "step": 300
189
+ },
190
+ {
191
+ "epoch": 5.08,
192
+ "learning_rate": 6.22840423458568e-05,
193
+ "loss": 2.4095,
194
+ "step": 310
195
+ },
196
+ {
197
+ "epoch": 5.25,
198
+ "learning_rate": 6.262874945799764e-05,
199
+ "loss": 2.3613,
200
+ "step": 320
201
+ },
202
+ {
203
+ "epoch": 5.41,
204
+ "learning_rate": 6.296284849694718e-05,
205
+ "loss": 2.381,
206
+ "step": 330
207
+ },
208
+ {
209
+ "epoch": 5.57,
210
+ "learning_rate": 6.328697292605637e-05,
211
+ "loss": 2.3387,
212
+ "step": 340
213
+ },
214
+ {
215
+ "epoch": 5.74,
216
+ "learning_rate": 6.360170110875688e-05,
217
+ "loss": 2.3331,
218
+ "step": 350
219
+ },
220
+ {
221
+ "epoch": 5.9,
222
+ "learning_rate": 6.390756251918218e-05,
223
+ "loss": 2.3831,
224
+ "step": 360
225
+ },
226
+ {
227
+ "epoch": 6.07,
228
+ "learning_rate": 6.420504310167487e-05,
229
+ "loss": 2.2977,
230
+ "step": 370
231
+ },
232
+ {
233
+ "epoch": 6.23,
234
+ "learning_rate": 6.449458991542025e-05,
235
+ "loss": 2.2816,
236
+ "step": 380
237
+ },
238
+ {
239
+ "epoch": 6.39,
240
+ "learning_rate": 6.477661517566246e-05,
241
+ "loss": 2.2826,
242
+ "step": 390
243
+ },
244
+ {
245
+ "epoch": 6.56,
246
+ "learning_rate": 6.505149978319905e-05,
247
+ "loss": 2.3021,
248
+ "step": 400
249
+ },
250
+ {
251
+ "epoch": 6.72,
252
+ "learning_rate": 6.531959641799339e-05,
253
+ "loss": 2.3166,
254
+ "step": 410
255
+ },
256
+ {
257
+ "epoch": 6.89,
258
+ "learning_rate": 6.55812322599475e-05,
259
+ "loss": 2.3421,
260
+ "step": 420
261
+ },
262
+ {
263
+ "epoch": 7.05,
264
+ "learning_rate": 6.583671138948966e-05,
265
+ "loss": 2.3094,
266
+ "step": 430
267
+ },
268
+ {
269
+ "epoch": 7.21,
270
+ "learning_rate": 6.608631691215467e-05,
271
+ "loss": 2.2268,
272
+ "step": 440
273
+ },
274
+ {
275
+ "epoch": 7.38,
276
+ "learning_rate": 6.633031284438359e-05,
277
+ "loss": 2.2722,
278
+ "step": 450
279
+ },
280
+ {
281
+ "epoch": 7.54,
282
+ "learning_rate": 6.656894579203935e-05,
283
+ "loss": 2.1933,
284
+ "step": 460
285
+ },
286
+ {
287
+ "epoch": 7.7,
288
+ "learning_rate": 6.680244644839293e-05,
289
+ "loss": 2.1991,
290
+ "step": 470
291
+ },
292
+ {
293
+ "epoch": 7.87,
294
+ "learning_rate": 6.703103093438967e-05,
295
+ "loss": 2.2637,
296
+ "step": 480
297
+ },
298
+ {
299
+ "epoch": 8.03,
300
+ "learning_rate": 6.725490200071283e-05,
301
+ "loss": 2.2277,
302
+ "step": 490
303
+ },
304
+ {
305
+ "epoch": 8.2,
306
+ "learning_rate": 6.747425010840046e-05,
307
+ "loss": 2.1819,
308
+ "step": 500
309
+ },
310
+ {
311
+ "epoch": 8.2,
312
+ "eval_loss": 2.786494255065918,
313
+ "eval_runtime": 13.6759,
314
+ "eval_samples_per_second": 47.602,
315
+ "eval_steps_per_second": 0.585,
316
+ "step": 500
317
+ },
318
+ {
319
+ "epoch": 8.36,
320
+ "learning_rate": 6.76892544024484e-05,
321
+ "loss": 2.1427,
322
+ "step": 510
323
+ },
324
+ {
325
+ "epoch": 8.52,
326
+ "learning_rate": 6.790008359086997e-05,
327
+ "loss": 2.173,
328
+ "step": 520
329
+ },
330
+ {
331
+ "epoch": 8.69,
332
+ "learning_rate": 6.810689674001973e-05,
333
+ "loss": 2.1895,
334
+ "step": 530
335
+ },
336
+ {
337
+ "epoch": 8.85,
338
+ "learning_rate": 6.830984399557421e-05,
339
+ "loss": 2.2101,
340
+ "step": 540
341
+ },
342
+ {
343
+ "epoch": 9.02,
344
+ "learning_rate": 6.850906723735608e-05,
345
+ "loss": 2.1926,
346
+ "step": 550
347
+ },
348
+ {
349
+ "epoch": 9.18,
350
+ "learning_rate": 6.870470067515499e-05,
351
+ "loss": 2.0861,
352
+ "step": 560
353
+ },
354
+ {
355
+ "epoch": 9.34,
356
+ "learning_rate": 6.889687139181228e-05,
357
+ "loss": 2.1092,
358
+ "step": 570
359
+ },
360
+ {
361
+ "epoch": 9.51,
362
+ "learning_rate": 6.908569983907343e-05,
363
+ "loss": 2.129,
364
+ "step": 580
365
+ },
366
+ {
367
+ "epoch": 9.67,
368
+ "learning_rate": 6.92713002910536e-05,
369
+ "loss": 2.113,
370
+ "step": 590
371
+ },
372
+ {
373
+ "epoch": 9.84,
374
+ "learning_rate": 6.945378125959108e-05,
375
+ "loss": 2.1234,
376
+ "step": 600
377
+ },
378
+ {
379
+ "epoch": 10.0,
380
+ "learning_rate": 6.963324587526918e-05,
381
+ "loss": 2.1028,
382
+ "step": 610
383
+ },
384
+ {
385
+ "epoch": 10.16,
386
+ "learning_rate": 6.980979223745634e-05,
387
+ "loss": 2.0476,
388
+ "step": 620
389
+ },
390
+ {
391
+ "epoch": 10.33,
392
+ "learning_rate": 6.998351373633953e-05,
393
+ "loss": 2.0879,
394
+ "step": 630
395
+ },
396
+ {
397
+ "epoch": 10.49,
398
+ "learning_rate": 7.015449934959717e-05,
399
+ "loss": 2.0547,
400
+ "step": 640
401
+ },
402
+ {
403
+ "epoch": 10.66,
404
+ "learning_rate": 7.032283391607138e-05,
405
+ "loss": 2.0791,
406
+ "step": 650
407
+ },
408
+ {
409
+ "epoch": 10.82,
410
+ "learning_rate": 7.048859838854671e-05,
411
+ "loss": 2.1454,
412
+ "step": 660
413
+ },
414
+ {
415
+ "epoch": 10.98,
416
+ "learning_rate": 7.065187006752065e-05,
417
+ "loss": 2.0957,
418
+ "step": 670
419
+ },
420
+ {
421
+ "epoch": 11.15,
422
+ "learning_rate": 7.08127228176559e-05,
423
+ "loss": 2.0561,
424
+ "step": 680
425
+ },
426
+ {
427
+ "epoch": 11.31,
428
+ "learning_rate": 7.097122726843138e-05,
429
+ "loss": 2.0563,
430
+ "step": 690
431
+ },
432
+ {
433
+ "epoch": 11.48,
434
+ "learning_rate": 7.112745100035642e-05,
435
+ "loss": 2.027,
436
+ "step": 700
437
+ },
438
+ {
439
+ "epoch": 11.64,
440
+ "learning_rate": 7.128145871797688e-05,
441
+ "loss": 2.0495,
442
+ "step": 710
443
+ },
444
+ {
445
+ "epoch": 11.8,
446
+ "learning_rate": 7.143331241078171e-05,
447
+ "loss": 2.019,
448
+ "step": 720
449
+ },
450
+ {
451
+ "epoch": 11.97,
452
+ "learning_rate": 7.158307150301139e-05,
453
+ "loss": 2.0242,
454
+ "step": 730
455
+ },
456
+ {
457
+ "epoch": 12.13,
458
+ "learning_rate": 7.17307929932744e-05,
459
+ "loss": 1.9962,
460
+ "step": 740
461
+ },
462
+ {
463
+ "epoch": 12.3,
464
+ "learning_rate": 7.187653158479249e-05,
465
+ "loss": 1.9971,
466
+ "step": 750
467
+ },
468
+ {
469
+ "epoch": 12.46,
470
+ "learning_rate": 7.202033980701978e-05,
471
+ "loss": 2.0236,
472
+ "step": 760
473
+ },
474
+ {
475
+ "epoch": 12.62,
476
+ "learning_rate": 7.216226812931204e-05,
477
+ "loss": 1.9923,
478
+ "step": 770
479
+ },
480
+ {
481
+ "epoch": 12.79,
482
+ "learning_rate": 7.2302365067262e-05,
483
+ "loss": 2.0244,
484
+ "step": 780
485
+ },
486
+ {
487
+ "epoch": 12.95,
488
+ "learning_rate": 7.244067728226103e-05,
489
+ "loss": 1.9846,
490
+ "step": 790
491
+ },
492
+ {
493
+ "epoch": 13.11,
494
+ "learning_rate": 7.257724967479857e-05,
495
+ "loss": 1.9811,
496
+ "step": 800
497
+ },
498
+ {
499
+ "epoch": 13.28,
500
+ "learning_rate": 7.271212547196624e-05,
501
+ "loss": 1.9709,
502
+ "step": 810
503
+ },
504
+ {
505
+ "epoch": 13.44,
506
+ "learning_rate": 7.284534630959291e-05,
507
+ "loss": 1.9652,
508
+ "step": 820
509
+ },
510
+ {
511
+ "epoch": 13.61,
512
+ "learning_rate": 7.297695230940184e-05,
513
+ "loss": 1.9605,
514
+ "step": 830
515
+ },
516
+ {
517
+ "epoch": 13.77,
518
+ "learning_rate": 7.310698215154704e-05,
519
+ "loss": 1.9692,
520
+ "step": 840
521
+ },
522
+ {
523
+ "epoch": 13.93,
524
+ "learning_rate": 7.323547314285732e-05,
525
+ "loss": 1.9945,
526
+ "step": 850
527
+ },
528
+ {
529
+ "epoch": 14.1,
530
+ "learning_rate": 7.336246128108918e-05,
531
+ "loss": 1.9222,
532
+ "step": 860
533
+ },
534
+ {
535
+ "epoch": 14.26,
536
+ "learning_rate": 7.348798131546546e-05,
537
+ "loss": 1.9283,
538
+ "step": 870
539
+ },
540
+ {
541
+ "epoch": 14.43,
542
+ "learning_rate": 7.36120668037542e-05,
543
+ "loss": 1.9376,
544
+ "step": 880
545
+ },
546
+ {
547
+ "epoch": 14.59,
548
+ "learning_rate": 7.37347501661228e-05,
549
+ "loss": 1.9247,
550
+ "step": 890
551
+ },
552
+ {
553
+ "epoch": 14.75,
554
+ "learning_rate": 7.385606273598311e-05,
555
+ "loss": 1.9218,
556
+ "step": 900
557
+ },
558
+ {
559
+ "epoch": 14.92,
560
+ "learning_rate": 7.397603480802732e-05,
561
+ "loss": 1.9492,
562
+ "step": 910
563
+ },
564
+ {
565
+ "epoch": 15.08,
566
+ "learning_rate": 7.409469568363888e-05,
567
+ "loss": 1.9235,
568
+ "step": 920
569
+ },
570
+ {
571
+ "epoch": 15.25,
572
+ "learning_rate": 7.421207371384837e-05,
573
+ "loss": 1.8671,
574
+ "step": 930
575
+ },
576
+ {
577
+ "epoch": 15.41,
578
+ "learning_rate": 7.432819633999247e-05,
579
+ "loss": 1.909,
580
+ "step": 940
581
+ },
582
+ {
583
+ "epoch": 15.57,
584
+ "learning_rate": 7.444309013222118e-05,
585
+ "loss": 1.8568,
586
+ "step": 950
587
+ },
588
+ {
589
+ "epoch": 15.74,
590
+ "learning_rate": 7.45567808259892e-05,
591
+ "loss": 1.9199,
592
+ "step": 960
593
+ },
594
+ {
595
+ "epoch": 15.9,
596
+ "learning_rate": 7.46692933566561e-05,
597
+ "loss": 1.9247,
598
+ "step": 970
599
+ },
600
+ {
601
+ "epoch": 16.07,
602
+ "learning_rate": 7.478065189231236e-05,
603
+ "loss": 1.895,
604
+ "step": 980
605
+ },
606
+ {
607
+ "epoch": 16.23,
608
+ "learning_rate": 7.489087986493874e-05,
609
+ "loss": 1.8821,
610
+ "step": 990
611
+ },
612
+ {
613
+ "epoch": 16.39,
614
+ "learning_rate": 7.5e-05,
615
+ "loss": 1.8423,
616
+ "step": 1000
617
+ },
618
+ {
619
+ "epoch": 16.39,
620
+ "eval_loss": 2.925347328186035,
621
+ "eval_runtime": 13.9926,
622
+ "eval_samples_per_second": 46.524,
623
+ "eval_steps_per_second": 0.572,
624
+ "step": 1000
625
+ },
626
+ {
627
+ "epoch": 16.56,
628
+ "learning_rate": 7.510803434456605e-05,
629
+ "loss": 1.8519,
630
+ "step": 1010
631
+ },
632
+ {
633
+ "epoch": 16.72,
634
+ "learning_rate": 7.521500429404794e-05,
635
+ "loss": 1.8578,
636
+ "step": 1020
637
+ },
638
+ {
639
+ "epoch": 16.89,
640
+ "learning_rate": 7.532093061762931e-05,
641
+ "loss": 1.8676,
642
+ "step": 1030
643
+ },
644
+ {
645
+ "epoch": 17.05,
646
+ "learning_rate": 7.54258334824695e-05,
647
+ "loss": 1.8492,
648
+ "step": 1040
649
+ },
650
+ {
651
+ "epoch": 17.21,
652
+ "learning_rate": 7.552973247674843e-05,
653
+ "loss": 1.8542,
654
+ "step": 1050
655
+ },
656
+ {
657
+ "epoch": 17.38,
658
+ "learning_rate": 7.563264663161926e-05,
659
+ "loss": 1.8312,
660
+ "step": 1060
661
+ },
662
+ {
663
+ "epoch": 17.54,
664
+ "learning_rate": 7.573459444213023e-05,
665
+ "loss": 1.8554,
666
+ "step": 1070
667
+ },
668
+ {
669
+ "epoch": 17.7,
670
+ "learning_rate": 7.583559388717374e-05,
671
+ "loss": 1.8484,
672
+ "step": 1080
673
+ },
674
+ {
675
+ "epoch": 17.87,
676
+ "learning_rate": 7.593566244851558e-05,
677
+ "loss": 1.8485,
678
+ "step": 1090
679
+ },
680
+ {
681
+ "epoch": 18.03,
682
+ "learning_rate": 7.603481712895562e-05,
683
+ "loss": 1.8505,
684
+ "step": 1100
685
+ },
686
+ {
687
+ "epoch": 18.2,
688
+ "learning_rate": 7.613307446966643e-05,
689
+ "loss": 1.8163,
690
+ "step": 1110
691
+ },
692
+ {
693
+ "epoch": 18.36,
694
+ "learning_rate": 7.623045056675453e-05,
695
+ "loss": 1.8382,
696
+ "step": 1120
697
+ },
698
+ {
699
+ "epoch": 18.52,
700
+ "learning_rate": 7.632696108708549e-05,
701
+ "loss": 1.8251,
702
+ "step": 1130
703
+ },
704
+ {
705
+ "epoch": 18.69,
706
+ "learning_rate": 7.642262128341181e-05,
707
+ "loss": 1.8252,
708
+ "step": 1140
709
+ },
710
+ {
711
+ "epoch": 18.85,
712
+ "learning_rate": 7.651744600884029e-05,
713
+ "loss": 1.849,
714
+ "step": 1150
715
+ },
716
+ {
717
+ "epoch": 19.02,
718
+ "learning_rate": 7.661144973067295e-05,
719
+ "loss": 1.8202,
720
+ "step": 1160
721
+ },
722
+ {
723
+ "epoch": 19.18,
724
+ "learning_rate": 7.670464654365404e-05,
725
+ "loss": 1.8013,
726
+ "step": 1170
727
+ },
728
+ {
729
+ "epoch": 19.34,
730
+ "learning_rate": 7.679705018265312e-05,
731
+ "loss": 1.8149,
732
+ "step": 1180
733
+ },
734
+ {
735
+ "epoch": 19.51,
736
+ "learning_rate": 7.688867403481326e-05,
737
+ "loss": 1.7919,
738
+ "step": 1190
739
+ },
740
+ {
741
+ "epoch": 19.67,
742
+ "learning_rate": 7.697953115119061e-05,
743
+ "loss": 1.801,
744
+ "step": 1200
745
+ },
746
+ {
747
+ "epoch": 19.84,
748
+ "learning_rate": 7.706963425791124e-05,
749
+ "loss": 1.8286,
750
+ "step": 1210
751
+ },
752
+ {
753
+ "epoch": 20.0,
754
+ "learning_rate": 7.71589957668687e-05,
755
+ "loss": 1.7945,
756
+ "step": 1220
757
+ },
758
+ {
759
+ "epoch": 20.16,
760
+ "learning_rate": 7.724762778598493e-05,
761
+ "loss": 1.7619,
762
+ "step": 1230
763
+ },
764
+ {
765
+ "epoch": 20.33,
766
+ "learning_rate": 7.733554212905587e-05,
767
+ "loss": 1.7693,
768
+ "step": 1240
769
+ },
770
+ {
771
+ "epoch": 20.49,
772
+ "learning_rate": 7.74227503252014e-05,
773
+ "loss": 1.7689,
774
+ "step": 1250
775
+ },
776
+ {
777
+ "epoch": 20.66,
778
+ "learning_rate": 7.750926362793907e-05,
779
+ "loss": 1.77,
780
+ "step": 1260
781
+ },
782
+ {
783
+ "epoch": 20.82,
784
+ "learning_rate": 7.759509302389892e-05,
785
+ "loss": 1.7765,
786
+ "step": 1270
787
+ },
788
+ {
789
+ "epoch": 20.98,
790
+ "learning_rate": 7.768024924119671e-05,
791
+ "loss": 1.7791,
792
+ "step": 1280
793
+ },
794
+ {
795
+ "epoch": 21.15,
796
+ "learning_rate": 7.776474275748121e-05,
797
+ "loss": 1.7514,
798
+ "step": 1290
799
+ },
800
+ {
801
+ "epoch": 21.31,
802
+ "learning_rate": 7.784858380767091e-05,
803
+ "loss": 1.7564,
804
+ "step": 1300
805
+ },
806
+ {
807
+ "epoch": 21.48,
808
+ "learning_rate": 7.793178239139409e-05,
809
+ "loss": 1.7541,
810
+ "step": 1310
811
+ },
812
+ {
813
+ "epoch": 21.64,
814
+ "learning_rate": 7.801434828014625e-05,
815
+ "loss": 1.7519,
816
+ "step": 1320
817
+ },
818
+ {
819
+ "epoch": 21.8,
820
+ "learning_rate": 7.809629102417713e-05,
821
+ "loss": 1.7862,
822
+ "step": 1330
823
+ },
824
+ {
825
+ "epoch": 21.97,
826
+ "learning_rate": 7.817761995912018e-05,
827
+ "loss": 1.7724,
828
+ "step": 1340
829
+ },
830
+ {
831
+ "epoch": 22.13,
832
+ "learning_rate": 7.825834421237515e-05,
833
+ "loss": 1.7565,
834
+ "step": 1350
835
+ },
836
+ {
837
+ "epoch": 22.3,
838
+ "learning_rate": 7.833847270925543e-05,
839
+ "loss": 1.7346,
840
+ "step": 1360
841
+ },
842
+ {
843
+ "epoch": 22.46,
844
+ "learning_rate": 7.841801417891016e-05,
845
+ "loss": 1.7238,
846
+ "step": 1370
847
+ },
848
+ {
849
+ "epoch": 22.62,
850
+ "learning_rate": 7.84969771600309e-05,
851
+ "loss": 1.738,
852
+ "step": 1380
853
+ },
854
+ {
855
+ "epoch": 22.79,
856
+ "learning_rate": 7.857537000635237e-05,
857
+ "loss": 1.7446,
858
+ "step": 1390
859
+ },
860
+ {
861
+ "epoch": 22.95,
862
+ "learning_rate": 7.865320089195594e-05,
863
+ "loss": 1.7395,
864
+ "step": 1400
865
+ },
866
+ {
867
+ "epoch": 23.11,
868
+ "learning_rate": 7.87304778163845e-05,
869
+ "loss": 1.7533,
870
+ "step": 1410
871
+ },
872
+ {
873
+ "epoch": 23.28,
874
+ "learning_rate": 7.880720860957641e-05,
875
+ "loss": 1.7101,
876
+ "step": 1420
877
+ },
878
+ {
879
+ "epoch": 23.44,
880
+ "learning_rate": 7.888340093662653e-05,
881
+ "loss": 1.7145,
882
+ "step": 1430
883
+ },
884
+ {
885
+ "epoch": 23.61,
886
+ "learning_rate": 7.895906230238123e-05,
887
+ "loss": 1.7496,
888
+ "step": 1440
889
+ },
890
+ {
891
+ "epoch": 23.77,
892
+ "learning_rate": 7.903420005587436e-05,
893
+ "loss": 1.7416,
894
+ "step": 1450
895
+ },
896
+ {
897
+ "epoch": 23.93,
898
+ "learning_rate": 7.910882139461093e-05,
899
+ "loss": 1.7315,
900
+ "step": 1460
901
+ },
902
+ {
903
+ "epoch": 24.1,
904
+ "learning_rate": 7.918293336870439e-05,
905
+ "loss": 1.7224,
906
+ "step": 1470
907
+ },
908
+ {
909
+ "epoch": 24.26,
910
+ "learning_rate": 7.925654288487392e-05,
911
+ "loss": 1.716,
912
+ "step": 1480
913
+ },
914
+ {
915
+ "epoch": 24.43,
916
+ "learning_rate": 7.932965671030685e-05,
917
+ "loss": 1.704,
918
+ "step": 1490
919
+ },
920
+ {
921
+ "epoch": 24.59,
922
+ "learning_rate": 7.940228147639202e-05,
923
+ "loss": 1.6873,
924
+ "step": 1500
925
+ },
926
+ {
927
+ "epoch": 24.59,
928
+ "eval_loss": 3.106438159942627,
929
+ "eval_runtime": 13.9459,
930
+ "eval_samples_per_second": 46.681,
931
+ "eval_steps_per_second": 0.574,
932
+ "step": 1500
933
+ },
934
+ {
935
+ "epoch": 24.75,
936
+ "learning_rate": 7.947442368232923e-05,
937
+ "loss": 1.7098,
938
+ "step": 1510
939
+ },
940
+ {
941
+ "epoch": 24.92,
942
+ "learning_rate": 7.954608969861931e-05,
943
+ "loss": 1.7058,
944
+ "step": 1520
945
+ },
946
+ {
947
+ "epoch": 25.08,
948
+ "learning_rate": 7.961728577043997e-05,
949
+ "loss": 1.7189,
950
+ "step": 1530
951
+ },
952
+ {
953
+ "epoch": 25.25,
954
+ "learning_rate": 7.968801802091157e-05,
955
+ "loss": 1.6689,
956
+ "step": 1540
957
+ },
958
+ {
959
+ "epoch": 25.41,
960
+ "learning_rate": 7.975829245425728e-05,
961
+ "loss": 1.709,
962
+ "step": 1550
963
+ },
964
+ {
965
+ "epoch": 25.57,
966
+ "learning_rate": 7.982811495886153e-05,
967
+ "loss": 1.6881,
968
+ "step": 1560
969
+ },
970
+ {
971
+ "epoch": 25.74,
972
+ "learning_rate": 7.989749131023083e-05,
973
+ "loss": 1.7032,
974
+ "step": 1570
975
+ },
976
+ {
977
+ "epoch": 25.9,
978
+ "learning_rate": 7.996642717386056e-05,
979
+ "loss": 1.6887,
980
+ "step": 1580
981
+ },
982
+ {
983
+ "epoch": 26.07,
984
+ "learning_rate": 8.003492810801127e-05,
985
+ "loss": 1.6961,
986
+ "step": 1590
987
+ },
988
+ {
989
+ "epoch": 26.23,
990
+ "learning_rate": 8.01029995663981e-05,
991
+ "loss": 1.6701,
992
+ "step": 1600
993
+ },
994
+ {
995
+ "epoch": 26.39,
996
+ "learning_rate": 8.017064690079624e-05,
997
+ "loss": 1.69,
998
+ "step": 1610
999
+ },
1000
+ {
1001
+ "epoch": 26.56,
1002
+ "learning_rate": 8.023787536356576e-05,
1003
+ "loss": 1.7125,
1004
+ "step": 1620
1005
+ },
1006
+ {
1007
+ "epoch": 26.72,
1008
+ "learning_rate": 8.030469011009893e-05,
1009
+ "loss": 1.6606,
1010
+ "step": 1630
1011
+ },
1012
+ {
1013
+ "epoch": 26.89,
1014
+ "learning_rate": 8.037109620119243e-05,
1015
+ "loss": 1.6649,
1016
+ "step": 1640
1017
+ },
1018
+ {
1019
+ "epoch": 27.05,
1020
+ "learning_rate": 8.043709860534764e-05,
1021
+ "loss": 1.6699,
1022
+ "step": 1650
1023
+ },
1024
+ {
1025
+ "epoch": 27.21,
1026
+ "learning_rate": 8.050270220100136e-05,
1027
+ "loss": 1.645,
1028
+ "step": 1660
1029
+ },
1030
+ {
1031
+ "epoch": 27.38,
1032
+ "learning_rate": 8.056791177868957e-05,
1033
+ "loss": 1.65,
1034
+ "step": 1670
1035
+ },
1036
+ {
1037
+ "epoch": 27.54,
1038
+ "learning_rate": 8.063273204314657e-05,
1039
+ "loss": 1.6552,
1040
+ "step": 1680
1041
+ },
1042
+ {
1043
+ "epoch": 27.7,
1044
+ "learning_rate": 8.069716761534183e-05,
1045
+ "loss": 1.6772,
1046
+ "step": 1690
1047
+ },
1048
+ {
1049
+ "epoch": 27.87,
1050
+ "learning_rate": 8.076122303445684e-05,
1051
+ "loss": 1.6664,
1052
+ "step": 1700
1053
+ },
1054
+ {
1055
+ "epoch": 28.03,
1056
+ "learning_rate": 8.082490275980384e-05,
1057
+ "loss": 1.6539,
1058
+ "step": 1710
1059
+ },
1060
+ {
1061
+ "epoch": 28.2,
1062
+ "learning_rate": 8.088821117268871e-05,
1063
+ "loss": 1.6616,
1064
+ "step": 1720
1065
+ },
1066
+ {
1067
+ "epoch": 28.36,
1068
+ "learning_rate": 8.095115257821987e-05,
1069
+ "loss": 1.6379,
1070
+ "step": 1730
1071
+ },
1072
+ {
1073
+ "epoch": 28.52,
1074
+ "learning_rate": 8.1013731207065e-05,
1075
+ "loss": 1.6536,
1076
+ "step": 1740
1077
+ },
1078
+ {
1079
+ "epoch": 28.69,
1080
+ "learning_rate": 8.107595121715735e-05,
1081
+ "loss": 1.6506,
1082
+ "step": 1750
1083
+ },
1084
+ {
1085
+ "epoch": 28.85,
1086
+ "learning_rate": 8.113781669535373e-05,
1087
+ "loss": 1.66,
1088
+ "step": 1760
1089
+ },
1090
+ {
1091
+ "epoch": 29.02,
1092
+ "learning_rate": 8.119933165904515e-05,
1093
+ "loss": 1.6548,
1094
+ "step": 1770
1095
+ },
1096
+ {
1097
+ "epoch": 29.18,
1098
+ "learning_rate": 8.126050005772234e-05,
1099
+ "loss": 1.6408,
1100
+ "step": 1780
1101
+ },
1102
+ {
1103
+ "epoch": 29.34,
1104
+ "learning_rate": 8.132132577449732e-05,
1105
+ "loss": 1.6533,
1106
+ "step": 1790
1107
+ },
1108
+ {
1109
+ "epoch": 29.51,
1110
+ "learning_rate": 8.138181262758264e-05,
1111
+ "loss": 1.6508,
1112
+ "step": 1800
1113
+ },
1114
+ {
1115
+ "epoch": 29.67,
1116
+ "learning_rate": 8.144196437172959e-05,
1117
+ "loss": 1.6302,
1118
+ "step": 1810
1119
+ },
1120
+ {
1121
+ "epoch": 29.84,
1122
+ "learning_rate": 8.150178469962686e-05,
1123
+ "loss": 1.6319,
1124
+ "step": 1820
1125
+ },
1126
+ {
1127
+ "epoch": 30.0,
1128
+ "learning_rate": 8.156127724326073e-05,
1129
+ "loss": 1.623,
1130
+ "step": 1830
1131
+ },
1132
+ {
1133
+ "epoch": 30.16,
1134
+ "learning_rate": 8.16204455752384e-05,
1135
+ "loss": 1.6299,
1136
+ "step": 1840
1137
+ },
1138
+ {
1139
+ "epoch": 30.33,
1140
+ "learning_rate": 8.167929321007533e-05,
1141
+ "loss": 1.6187,
1142
+ "step": 1850
1143
+ },
1144
+ {
1145
+ "epoch": 30.49,
1146
+ "learning_rate": 8.17378236054479e-05,
1147
+ "loss": 1.6138,
1148
+ "step": 1860
1149
+ },
1150
+ {
1151
+ "epoch": 30.66,
1152
+ "learning_rate": 8.179604016341247e-05,
1153
+ "loss": 1.6418,
1154
+ "step": 1870
1155
+ },
1156
+ {
1157
+ "epoch": 30.82,
1158
+ "learning_rate": 8.1853946231592e-05,
1159
+ "loss": 1.6433,
1160
+ "step": 1880
1161
+ },
1162
+ {
1163
+ "epoch": 30.98,
1164
+ "learning_rate": 8.19115451043311e-05,
1165
+ "loss": 1.6416,
1166
+ "step": 1890
1167
+ },
1168
+ {
1169
+ "epoch": 31.15,
1170
+ "learning_rate": 8.196884002382071e-05,
1171
+ "loss": 1.6244,
1172
+ "step": 1900
1173
+ },
1174
+ {
1175
+ "epoch": 31.31,
1176
+ "learning_rate": 8.202583418119318e-05,
1177
+ "loss": 1.6141,
1178
+ "step": 1910
1179
+ },
1180
+ {
1181
+ "epoch": 31.48,
1182
+ "learning_rate": 8.208253071758874e-05,
1183
+ "loss": 1.6033,
1184
+ "step": 1920
1185
+ },
1186
+ {
1187
+ "epoch": 31.64,
1188
+ "learning_rate": 8.213893272519434e-05,
1189
+ "loss": 1.6287,
1190
+ "step": 1930
1191
+ },
1192
+ {
1193
+ "epoch": 31.8,
1194
+ "learning_rate": 8.219504324825564e-05,
1195
+ "loss": 1.6268,
1196
+ "step": 1940
1197
+ },
1198
+ {
1199
+ "epoch": 31.97,
1200
+ "learning_rate": 8.225086528406294e-05,
1201
+ "loss": 1.6297,
1202
+ "step": 1950
1203
+ },
1204
+ {
1205
+ "epoch": 32.13,
1206
+ "learning_rate": 8.23064017839119e-05,
1207
+ "loss": 1.6012,
1208
+ "step": 1960
1209
+ },
1210
+ {
1211
+ "epoch": 32.3,
1212
+ "learning_rate": 8.236165565403982e-05,
1213
+ "loss": 1.6203,
1214
+ "step": 1970
1215
+ },
1216
+ {
1217
+ "epoch": 32.46,
1218
+ "learning_rate": 8.241662975653826e-05,
1219
+ "loss": 1.6107,
1220
+ "step": 1980
1221
+ },
1222
+ {
1223
+ "epoch": 32.62,
1224
+ "learning_rate": 8.247132691024267e-05,
1225
+ "loss": 1.6107,
1226
+ "step": 1990
1227
+ },
1228
+ {
1229
+ "epoch": 32.79,
1230
+ "learning_rate": 8.252574989159953e-05,
1231
+ "loss": 1.5886,
1232
+ "step": 2000
1233
+ },
1234
+ {
1235
+ "epoch": 32.79,
1236
+ "eval_loss": 3.1871249675750732,
1237
+ "eval_runtime": 13.1185,
1238
+ "eval_samples_per_second": 49.624,
1239
+ "eval_steps_per_second": 0.61,
1240
+ "step": 2000
1241
+ }
1242
+ ],
1243
+ "max_steps": 100000,
1244
+ "num_train_epochs": 1640,
1245
+ "total_flos": 394015948800.0,
1246
+ "trial_name": null,
1247
+ "trial_params": null
1248
+ }
training_args.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:429c0dc53ed2ff5e8b7c901bbcf2bb07691a9d6ef79fc60cc81ec69a50afe4f7
3
+ size 4015
zero_to_fp32.py ADDED
@@ -0,0 +1,348 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #!/usr/bin/env python
2
+
3
+ # This script extracts fp32 consolidated weights from a zero 2 and 3 DeepSpeed checkpoints. It gets
4
+ # copied into the top level checkpoint dir, so the user can easily do the conversion at any point in
5
+ # the future. Once extracted, the weights don't require DeepSpeed and can be used in any
6
+ # application.
7
+ #
8
+ # example: python zero_to_fp32.py . pytorch_model.bin
9
+
10
+ import argparse
11
+ import torch
12
+ import glob
13
+ import os
14
+ from collections import OrderedDict
15
+
16
+ # while this script doesn't use deepspeed to recover data, since the checkpoints are pickled with
17
+ # DeepSpeed data structures it has to be available in the current python environment.
18
+ import deepspeed
19
+ from deepspeed.utils import logger
20
+
21
+ debug = 0
22
+
23
+ # load to cpu
24
+ device = torch.device('cpu')
25
+
26
+
27
+ def get_model_state_file(checkpoint_dir, zero_stage):
28
+ if not os.path.isdir(checkpoint_dir):
29
+ raise FileNotFoundError(f"Directory '{checkpoint_dir}' doesn't exist")
30
+
31
+ # there should be only one file
32
+ if zero_stage == 2:
33
+ file = os.path.join(checkpoint_dir, "mp_rank_00_model_states.pt")
34
+ elif zero_stage == 3:
35
+ file = os.path.join(checkpoint_dir, "zero_pp_rank_0_mp_rank_00_model_states.pt")
36
+
37
+ if not os.path.exists(file):
38
+ raise FileNotFoundError(f"can't find model states file at '{file}'")
39
+
40
+ return file
41
+
42
+
43
+ def get_optim_files(checkpoint_dir):
44
+ # XXX: need to test that this simple glob rule works for multi-node setup too
45
+ optim_files = sorted(glob.glob(os.path.join(checkpoint_dir, "*_optim_states.pt")))
46
+
47
+ if len(optim_files) == 0:
48
+ raise FileNotFoundError(
49
+ f"can't find '*_optim_states.pt' files in directory '{checkpoint_dir}'")
50
+
51
+ return optim_files
52
+
53
+
54
+ def parse_model_state(file):
55
+ state_dict = torch.load(file, map_location=device)
56
+
57
+ if "buffer_names" not in state_dict:
58
+ raise ValueError(f"{file} is not a model state checkpoint")
59
+ buffer_names = state_dict["buffer_names"]
60
+ if debug:
61
+ print("Found buffers:", buffer_names)
62
+
63
+ # recover just the buffers while restoring them to fp32 if they were saved in fp16
64
+ buffers = {
65
+ k: v.float()
66
+ for k,
67
+ v in state_dict["module"].items() if k in buffer_names
68
+ }
69
+ return buffers
70
+
71
+
72
+ def parse_optim_states(files, ds_checkpoint_dir):
73
+
74
+ total_files = len(files)
75
+ state_dicts = []
76
+ for f in files:
77
+ state_dicts.append(torch.load(f, map_location=device))
78
+
79
+ if not "zero_stage" in state_dicts[0]['optimizer_state_dict']:
80
+ raise ValueError(f"{files[0]} is not a zero checkpoint")
81
+ zero_stage = state_dicts[0]['optimizer_state_dict']["zero_stage"]
82
+ world_size = state_dicts[0]['optimizer_state_dict']["partition_count"]
83
+ param_shapes = state_dicts[0]["param_shapes"]
84
+
85
+ if world_size != total_files:
86
+ raise ValueError(
87
+ f"Expected {world_size} of '*_optim_states.pt' under '{ds_checkpoint_dir}' but found {total_files} files. "
88
+ "Possibly due to an overwrite of an old checkpoint, or a checkpoint didn't get saved by one or more processes."
89
+ )
90
+
91
+ # the groups are named differently in each stage
92
+ if zero_stage == 2:
93
+ fp32_groups_key = "single_partition_of_fp32_groups"
94
+ elif zero_stage == 3:
95
+ fp32_groups_key = "fp32_flat_groups"
96
+ else:
97
+ raise ValueError(f"unknown zero stage {zero_stage}")
98
+
99
+ # if there is more than one param group, there will be multiple flattened tensors - one
100
+ # flattened tensor per group - for simplicity merge them into a single tensor
101
+ #
102
+ # XXX: could make the script more memory efficient for when there are multiple groups - it
103
+ # will require matching the sub-lists of param_shapes for each param group flattened tensor
104
+ fp32_flat_groups = [
105
+ torch.cat(state_dicts[i]['optimizer_state_dict'][fp32_groups_key],
106
+ 0) for i in range(len(state_dicts))
107
+ ]
108
+
109
+ return zero_stage, world_size, param_shapes, fp32_flat_groups
110
+
111
+
112
+ def zero3_partitioned_param_info(unpartitioned_numel, world_size):
113
+ remainder = unpartitioned_numel % world_size
114
+ padding_numel = (world_size - remainder) if remainder else 0
115
+ partitioned_numel = int(unpartitioned_numel / world_size)
116
+ return partitioned_numel, padding_numel
117
+
118
+
119
+ def _get_fp32_state_dict_from_zero_checkpoint(ds_checkpoint_dir):
120
+ """
121
+ Returns fp32 state_dict reconstructed from ds checkpoint
122
+
123
+ Args:
124
+ - ``ds_checkpoint_dir``: path to the deepspeed checkpoint folder (where the optimizer files are)
125
+
126
+ """
127
+ print(f"Processing zero checkpoint '{ds_checkpoint_dir}'")
128
+
129
+ optim_files = get_optim_files(ds_checkpoint_dir)
130
+ zero_stage, world_size, param_shapes, fp32_flat_groups = parse_optim_states(optim_files, ds_checkpoint_dir)
131
+ print(
132
+ f"Detected checkpoint of type zero stage {zero_stage}, world_size: {world_size}")
133
+
134
+ model_file = get_model_state_file(ds_checkpoint_dir, zero_stage)
135
+ buffers = parse_model_state(model_file)
136
+
137
+ # Reconstruction protocol:
138
+ #
139
+ # - for zero2 we just need to concat the partitions back to back and reconsolidate over one huge
140
+ # flat buffer - no need to deal with padding since if there is any it will be only in the tail
141
+ # of the last partition so there it will be just left out
142
+ #
143
+ # - for zero3 we need to zip the partitions together at boundary of each param, re-consolidating
144
+ # each param, while dealing with padding if any
145
+
146
+ if debug:
147
+ for i in range(world_size):
148
+ print(f"fp32_flat_groups[i].shape={fp32_flat_groups[i].shape}")
149
+
150
+ if zero_stage == 2:
151
+ # XXX: memory usage doubles here (zero2)
152
+ full_single_fp32_vector = torch.cat(fp32_flat_groups, 0)
153
+ avail_numel = full_single_fp32_vector.numel()
154
+ elif zero_stage == 3:
155
+ avail_numel = fp32_flat_groups[0].numel() * world_size
156
+
157
+ if debug:
158
+ wanted_params = len(param_shapes)
159
+ wanted_numel = sum(shape.numel() for shape in param_shapes.values())
160
+ # not asserting if there is a mismatch due to possible padding
161
+ print(f"Have {avail_numel} numels to process.")
162
+ print(f"Need {wanted_numel} numels in {wanted_params} params.")
163
+
164
+ state_dict = OrderedDict()
165
+
166
+ # buffers
167
+ state_dict.update(buffers)
168
+ if debug:
169
+ print(f"added {len(buffers)} buffers")
170
+
171
+ # params
172
+ # XXX: for huge models that can't fit into the host's RAM we will have to recode this to support
173
+ # out-of-core computing solution
174
+ offset = 0
175
+ total_numel = 0
176
+ total_params = 0
177
+ for name, shape in param_shapes.items():
178
+
179
+ unpartitioned_numel = shape.numel()
180
+ total_numel += unpartitioned_numel
181
+ total_params += 1
182
+
183
+ if zero_stage == 2:
184
+ if debug:
185
+ print(
186
+ f"{name} full shape: {shape} unpartitioned numel {unpartitioned_numel} "
187
+ )
188
+ state_dict[name] = full_single_fp32_vector.narrow(
189
+ 0,
190
+ offset,
191
+ unpartitioned_numel).view(shape)
192
+ offset += unpartitioned_numel
193
+
194
+ elif zero_stage == 3:
195
+ partitioned_numel, partitioned_padding_numel = zero3_partitioned_param_info(unpartitioned_numel, world_size)
196
+
197
+ if debug:
198
+ print(
199
+ f"{total_params} {name} full shape: {shape} partition0 numel={partitioned_numel} partitioned_padding_numel={partitioned_padding_numel}"
200
+ )
201
+
202
+ # XXX: memory usage doubles here (zero3)
203
+ state_dict[name] = torch.cat(
204
+ tuple(fp32_flat_groups[i].narrow(0,
205
+ offset,
206
+ partitioned_numel)
207
+ for i in range(world_size)),
208
+ 0).view(shape)
209
+ offset += partitioned_numel + partitioned_padding_numel
210
+
211
+ if zero_stage == 3:
212
+ offset *= world_size
213
+
214
+ # Sanity check
215
+ if offset != avail_numel:
216
+ raise ValueError(
217
+ f"consumed {offset} numels out of {avail_numel} - something is wrong")
218
+
219
+ print(
220
+ f"Reconstructed fp32 state dict with {total_params} params {total_numel} elements"
221
+ )
222
+
223
+ return state_dict
224
+
225
+
226
+ def get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir, tag=None):
227
+ """
228
+ Convert ZeRO 2 or 3 checkpoint into a single fp32 consolidated state_dict that can be loaded with
229
+ ``load_state_dict()`` and used for training without DeepSpeed or shared with others, for example
230
+ via a model hub.
231
+
232
+ Args:
233
+ - ``checkpoint_dir``: path to the desired checkpoint folder
234
+ - ``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``
235
+
236
+ Returns:
237
+ - pytorch ``state_dict``
238
+
239
+ Note: this approach may not work if your application doesn't have sufficient free CPU memory and
240
+ you may need to use the offline approach using the ``zero_to_fp32.py`` script that is saved with
241
+ the checkpoint.
242
+
243
+ A typical usage might be ::
244
+
245
+ from deepspeed.utils.zero_to_fp32 import get_fp32_state_dict_from_zero_checkpoint
246
+ # do the training and checkpoint saving
247
+ state_dict = get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir) # already on cpu
248
+ model = model.cpu() # move to cpu
249
+ model.load_state_dict(state_dict)
250
+ # submit to model hub or save the model to share with others
251
+
252
+ In this example the ``model`` will no longer be useable in the deepspeed context of the same
253
+ application. i.e. you will need to re-initialize the deepspeed engine, since
254
+ ``model.load_state_dict(state_dict)`` will remove all the deepspeed magic from it.
255
+
256
+ If you want it all done for you, use ``load_state_dict_from_zero_checkpoint`` instead.
257
+
258
+ """
259
+ if tag is None:
260
+ latest_path = os.path.join(checkpoint_dir, 'latest')
261
+ if os.path.isfile(latest_path):
262
+ with open(latest_path, 'r') as fd:
263
+ tag = fd.read().strip()
264
+ else:
265
+ raise ValueError(f"Unable to find 'latest' file at {latest_path}")
266
+
267
+ ds_checkpoint_dir = os.path.join(checkpoint_dir, tag)
268
+
269
+ if not os.path.isdir(ds_checkpoint_dir):
270
+ raise FileNotFoundError(f"Directory '{ds_checkpoint_dir}' doesn't exist")
271
+
272
+ return _get_fp32_state_dict_from_zero_checkpoint(ds_checkpoint_dir)
273
+
274
+
275
+ def convert_zero_checkpoint_to_fp32_state_dict(checkpoint_dir, output_file, tag=None):
276
+ """
277
+ Convert ZeRO 2 or 3 checkpoint into a single fp32 consolidated ``state_dict`` file that can be
278
+ loaded with ``torch.load(file)`` + ``load_state_dict()`` and used for training without DeepSpeed.
279
+
280
+ Args:
281
+ - ``checkpoint_dir``: path to the desired checkpoint folder. (one that contains the tag-folder, like ``global_step14``)
282
+ - ``output_file``: path to the pytorch fp32 state_dict output file (e.g. path/pytorch_model.bin)
283
+ - ``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``
284
+ """
285
+
286
+ state_dict = get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir, tag)
287
+ print(f"Saving fp32 state dict to {output_file}")
288
+ torch.save(state_dict, output_file)
289
+
290
+
291
+ def load_state_dict_from_zero_checkpoint(model, checkpoint_dir, tag=None):
292
+ """
293
+ 1. Put the provided model to cpu
294
+ 2. Convert ZeRO 2 or 3 checkpoint into a single fp32 consolidated ``state_dict``
295
+ 3. Load it into the provided model
296
+
297
+ Args:
298
+ - ``model``: the model object to update
299
+ - ``checkpoint_dir``: path to the desired checkpoint folder. (one that contains the tag-folder, like ``global_step14``)
300
+ - ``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``
301
+
302
+ Returns:
303
+ - ``model`: modified model
304
+
305
+ Make sure you have plenty of CPU memory available before you call this function. If you don't
306
+ have enough use the ``zero_to_fp32.py`` utility to do the conversion. You will find it
307
+ conveniently placed for you in the checkpoint folder.
308
+
309
+ A typical usage might be ::
310
+
311
+ from deepspeed.utils.zero_to_fp32 import load_state_dict_from_zero_checkpoint
312
+ model = load_state_dict_from_zero_checkpoint(trainer.model, checkpoint_dir)
313
+ # submit to model hub or save the model to share with others
314
+
315
+ Note, that once this was run, the ``model`` will no longer be useable in the deepspeed context
316
+ of the same application. i.e. you will need to re-initialize the deepspeed engine, since
317
+ ``model.load_state_dict(state_dict)`` will remove all the deepspeed magic from it.
318
+
319
+ """
320
+ logger.info(f"Extracting fp32 weights")
321
+ state_dict = get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir, tag)
322
+
323
+ logger.info(f"Overwriting model with fp32 weights")
324
+ model = model.cpu()
325
+ model.load_state_dict(state_dict, strict=False)
326
+
327
+ return model
328
+
329
+
330
+ if __name__ == "__main__":
331
+
332
+ parser = argparse.ArgumentParser()
333
+ parser.add_argument(
334
+ "checkpoint_dir",
335
+ type=str,
336
+ help="path to the desired checkpoint folder, e.g., path/checkpoint-12")
337
+ parser.add_argument(
338
+ "output_file",
339
+ type=str,
340
+ help=
341
+ "path to the pytorch fp32 state_dict output file (e.g. path/checkpoint-12/pytorch_model.bin)"
342
+ )
343
+ parser.add_argument("-d", "--debug", action='store_true', help="enable debug")
344
+ args = parser.parse_args()
345
+
346
+ debug = args.debug
347
+
348
+ convert_zero_checkpoint_to_fp32_state_dict(args.checkpoint_dir, args.output_file)