sglucas commited on
Commit
12e1648
·
verified ·
1 Parent(s): 8d2f6b6

Upload 91 files

Browse files
This view is limited to 50 files because it contains too many changes.   See raw diff
Files changed (50) hide show
  1. save_lora_instruct_r8_4e4_s11_1/README.md +202 -0
  2. save_lora_instruct_r8_4e4_s11_1/adapter_config.json +35 -0
  3. save_lora_instruct_r8_4e4_s11_1/adapter_model.safetensors +3 -0
  4. save_lora_instruct_r8_4e4_s11_1/checkpoint-1500/README.md +202 -0
  5. save_lora_instruct_r8_4e4_s11_1/checkpoint-1500/adapter_config.json +35 -0
  6. save_lora_instruct_r8_4e4_s11_1/checkpoint-1500/adapter_model.safetensors +3 -0
  7. save_lora_instruct_r8_4e4_s11_1/checkpoint-1500/global_step1500/bf16_zero_pp_rank_0_mp_rank_00_optim_states.pt +3 -0
  8. save_lora_instruct_r8_4e4_s11_1/checkpoint-1500/global_step1500/mp_rank_00_model_states.pt +3 -0
  9. save_lora_instruct_r8_4e4_s11_1/checkpoint-1500/latest +1 -0
  10. save_lora_instruct_r8_4e4_s11_1/checkpoint-1500/rng_state.pth +3 -0
  11. save_lora_instruct_r8_4e4_s11_1/checkpoint-1500/scheduler.pt +3 -0
  12. save_lora_instruct_r8_4e4_s11_1/checkpoint-1500/trainer_state.json +1821 -0
  13. save_lora_instruct_r8_4e4_s11_1/checkpoint-1500/training_args.bin +3 -0
  14. save_lora_instruct_r8_4e4_s11_1/checkpoint-1500/zero_to_fp32.py +587 -0
  15. save_lora_instruct_r8_4e4_s11_1/checkpoint-2000/README.md +202 -0
  16. save_lora_instruct_r8_4e4_s11_1/checkpoint-2000/adapter_config.json +35 -0
  17. save_lora_instruct_r8_4e4_s11_1/checkpoint-2000/adapter_model.safetensors +3 -0
  18. save_lora_instruct_r8_4e4_s11_1/checkpoint-2000/global_step2000/bf16_zero_pp_rank_0_mp_rank_00_optim_states.pt +3 -0
  19. save_lora_instruct_r8_4e4_s11_1/checkpoint-2000/global_step2000/mp_rank_00_model_states.pt +3 -0
  20. save_lora_instruct_r8_4e4_s11_1/checkpoint-2000/latest +1 -0
  21. save_lora_instruct_r8_4e4_s11_1/checkpoint-2000/rng_state.pth +3 -0
  22. save_lora_instruct_r8_4e4_s11_1/checkpoint-2000/scheduler.pt +3 -0
  23. save_lora_instruct_r8_4e4_s11_1/checkpoint-2000/trainer_state.json +2421 -0
  24. save_lora_instruct_r8_4e4_s11_1/checkpoint-2000/training_args.bin +3 -0
  25. save_lora_instruct_r8_4e4_s11_1/checkpoint-2000/zero_to_fp32.py +587 -0
  26. save_lora_instruct_r8_4e4_s11_1/checkpoint-2500/README.md +202 -0
  27. save_lora_instruct_r8_4e4_s11_1/checkpoint-2500/adapter_config.json +35 -0
  28. save_lora_instruct_r8_4e4_s11_1/checkpoint-2500/adapter_model.safetensors +3 -0
  29. save_lora_instruct_r8_4e4_s11_1/checkpoint-2500/global_step2500/bf16_zero_pp_rank_0_mp_rank_00_optim_states.pt +3 -0
  30. save_lora_instruct_r8_4e4_s11_1/checkpoint-2500/global_step2500/mp_rank_00_model_states.pt +3 -0
  31. save_lora_instruct_r8_4e4_s11_1/checkpoint-2500/latest +1 -0
  32. save_lora_instruct_r8_4e4_s11_1/checkpoint-2500/rng_state.pth +3 -0
  33. save_lora_instruct_r8_4e4_s11_1/checkpoint-2500/scheduler.pt +3 -0
  34. save_lora_instruct_r8_4e4_s11_1/checkpoint-2500/trainer_state.json +3021 -0
  35. save_lora_instruct_r8_4e4_s11_1/checkpoint-2500/training_args.bin +3 -0
  36. save_lora_instruct_r8_4e4_s11_1/checkpoint-2500/zero_to_fp32.py +587 -0
  37. save_lora_instruct_r8_4e4_s11_1/checkpoint-3000/README.md +202 -0
  38. save_lora_instruct_r8_4e4_s11_1/checkpoint-3000/adapter_config.json +35 -0
  39. save_lora_instruct_r8_4e4_s11_1/checkpoint-3000/adapter_model.safetensors +3 -0
  40. save_lora_instruct_r8_4e4_s11_1/checkpoint-3000/global_step3000/bf16_zero_pp_rank_0_mp_rank_00_optim_states.pt +3 -0
  41. save_lora_instruct_r8_4e4_s11_1/checkpoint-3000/global_step3000/mp_rank_00_model_states.pt +3 -0
  42. save_lora_instruct_r8_4e4_s11_1/checkpoint-3000/latest +1 -0
  43. save_lora_instruct_r8_4e4_s11_1/checkpoint-3000/rng_state.pth +3 -0
  44. save_lora_instruct_r8_4e4_s11_1/checkpoint-3000/scheduler.pt +3 -0
  45. save_lora_instruct_r8_4e4_s11_1/checkpoint-3000/trainer_state.json +3621 -0
  46. save_lora_instruct_r8_4e4_s11_1/checkpoint-3000/training_args.bin +3 -0
  47. save_lora_instruct_r8_4e4_s11_1/checkpoint-3000/zero_to_fp32.py +587 -0
  48. save_lora_instruct_r8_4e4_s11_1/checkpoint-3500/README.md +202 -0
  49. save_lora_instruct_r8_4e4_s11_1/checkpoint-3500/adapter_config.json +35 -0
  50. save_lora_instruct_r8_4e4_s11_1/checkpoint-3500/adapter_model.safetensors +3 -0
save_lora_instruct_r8_4e4_s11_1/README.md ADDED
@@ -0,0 +1,202 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ base_model: meta-llama/Llama-2-7b-hf
3
+ library_name: peft
4
+ ---
5
+
6
+ # Model Card for Model ID
7
+
8
+ <!-- Provide a quick summary of what the model is/does. -->
9
+
10
+
11
+
12
+ ## Model Details
13
+
14
+ ### Model Description
15
+
16
+ <!-- Provide a longer summary of what this model is. -->
17
+
18
+
19
+
20
+ - **Developed by:** [More Information Needed]
21
+ - **Funded by [optional]:** [More Information Needed]
22
+ - **Shared by [optional]:** [More Information Needed]
23
+ - **Model type:** [More Information Needed]
24
+ - **Language(s) (NLP):** [More Information Needed]
25
+ - **License:** [More Information Needed]
26
+ - **Finetuned from model [optional]:** [More Information Needed]
27
+
28
+ ### Model Sources [optional]
29
+
30
+ <!-- Provide the basic links for the model. -->
31
+
32
+ - **Repository:** [More Information Needed]
33
+ - **Paper [optional]:** [More Information Needed]
34
+ - **Demo [optional]:** [More Information Needed]
35
+
36
+ ## Uses
37
+
38
+ <!-- Address questions around how the model is intended to be used, including the foreseeable users of the model and those affected by the model. -->
39
+
40
+ ### Direct Use
41
+
42
+ <!-- This section is for the model use without fine-tuning or plugging into a larger ecosystem/app. -->
43
+
44
+ [More Information Needed]
45
+
46
+ ### Downstream Use [optional]
47
+
48
+ <!-- This section is for the model use when fine-tuned for a task, or when plugged into a larger ecosystem/app -->
49
+
50
+ [More Information Needed]
51
+
52
+ ### Out-of-Scope Use
53
+
54
+ <!-- This section addresses misuse, malicious use, and uses that the model will not work well for. -->
55
+
56
+ [More Information Needed]
57
+
58
+ ## Bias, Risks, and Limitations
59
+
60
+ <!-- This section is meant to convey both technical and sociotechnical limitations. -->
61
+
62
+ [More Information Needed]
63
+
64
+ ### Recommendations
65
+
66
+ <!-- This section is meant to convey recommendations with respect to the bias, risk, and technical limitations. -->
67
+
68
+ Users (both direct and downstream) should be made aware of the risks, biases and limitations of the model. More information needed for further recommendations.
69
+
70
+ ## How to Get Started with the Model
71
+
72
+ Use the code below to get started with the model.
73
+
74
+ [More Information Needed]
75
+
76
+ ## Training Details
77
+
78
+ ### Training Data
79
+
80
+ <!-- This should link to a Dataset Card, perhaps with a short stub of information on what the training data is all about as well as documentation related to data pre-processing or additional filtering. -->
81
+
82
+ [More Information Needed]
83
+
84
+ ### Training Procedure
85
+
86
+ <!-- This relates heavily to the Technical Specifications. Content here should link to that section when it is relevant to the training procedure. -->
87
+
88
+ #### Preprocessing [optional]
89
+
90
+ [More Information Needed]
91
+
92
+
93
+ #### Training Hyperparameters
94
+
95
+ - **Training regime:** [More Information Needed] <!--fp32, fp16 mixed precision, bf16 mixed precision, bf16 non-mixed precision, fp16 non-mixed precision, fp8 mixed precision -->
96
+
97
+ #### Speeds, Sizes, Times [optional]
98
+
99
+ <!-- This section provides information about throughput, start/end time, checkpoint size if relevant, etc. -->
100
+
101
+ [More Information Needed]
102
+
103
+ ## Evaluation
104
+
105
+ <!-- This section describes the evaluation protocols and provides the results. -->
106
+
107
+ ### Testing Data, Factors & Metrics
108
+
109
+ #### Testing Data
110
+
111
+ <!-- This should link to a Dataset Card if possible. -->
112
+
113
+ [More Information Needed]
114
+
115
+ #### Factors
116
+
117
+ <!-- These are the things the evaluation is disaggregating by, e.g., subpopulations or domains. -->
118
+
119
+ [More Information Needed]
120
+
121
+ #### Metrics
122
+
123
+ <!-- These are the evaluation metrics being used, ideally with a description of why. -->
124
+
125
+ [More Information Needed]
126
+
127
+ ### Results
128
+
129
+ [More Information Needed]
130
+
131
+ #### Summary
132
+
133
+
134
+
135
+ ## Model Examination [optional]
136
+
137
+ <!-- Relevant interpretability work for the model goes here -->
138
+
139
+ [More Information Needed]
140
+
141
+ ## Environmental Impact
142
+
143
+ <!-- Total emissions (in grams of CO2eq) and additional considerations, such as electricity usage, go here. Edit the suggested text below accordingly -->
144
+
145
+ Carbon emissions can be estimated using the [Machine Learning Impact calculator](https://mlco2.github.io/impact#compute) presented in [Lacoste et al. (2019)](https://arxiv.org/abs/1910.09700).
146
+
147
+ - **Hardware Type:** [More Information Needed]
148
+ - **Hours used:** [More Information Needed]
149
+ - **Cloud Provider:** [More Information Needed]
150
+ - **Compute Region:** [More Information Needed]
151
+ - **Carbon Emitted:** [More Information Needed]
152
+
153
+ ## Technical Specifications [optional]
154
+
155
+ ### Model Architecture and Objective
156
+
157
+ [More Information Needed]
158
+
159
+ ### Compute Infrastructure
160
+
161
+ [More Information Needed]
162
+
163
+ #### Hardware
164
+
165
+ [More Information Needed]
166
+
167
+ #### Software
168
+
169
+ [More Information Needed]
170
+
171
+ ## Citation [optional]
172
+
173
+ <!-- If there is a paper or blog post introducing the model, the APA and Bibtex information for that should go in this section. -->
174
+
175
+ **BibTeX:**
176
+
177
+ [More Information Needed]
178
+
179
+ **APA:**
180
+
181
+ [More Information Needed]
182
+
183
+ ## Glossary [optional]
184
+
185
+ <!-- If relevant, include terms and calculations in this section that can help readers understand the model or model card. -->
186
+
187
+ [More Information Needed]
188
+
189
+ ## More Information [optional]
190
+
191
+ [More Information Needed]
192
+
193
+ ## Model Card Authors [optional]
194
+
195
+ [More Information Needed]
196
+
197
+ ## Model Card Contact
198
+
199
+ [More Information Needed]
200
+ ### Framework versions
201
+
202
+ - PEFT 0.9.0
save_lora_instruct_r8_4e4_s11_1/adapter_config.json ADDED
@@ -0,0 +1,35 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "alpha_pattern": {},
3
+ "auto_mapping": null,
4
+ "base_model_name_or_path": "meta-llama/Llama-2-7b-hf",
5
+ "bias": "none",
6
+ "fan_in_fan_out": false,
7
+ "inference_mode": true,
8
+ "init_lora_weights": true,
9
+ "layers_pattern": null,
10
+ "layers_to_transform": null,
11
+ "loftq_config": {},
12
+ "lora_alpha": 16,
13
+ "lora_dropout": 0.05,
14
+ "megatron_config": null,
15
+ "megatron_core": "megatron.core",
16
+ "modules_to_save": null,
17
+ "mora_type": 1,
18
+ "peft_type": "LORA",
19
+ "r": 8,
20
+ "rank_pattern": {},
21
+ "revision": null,
22
+ "target_modules": [
23
+ "q_proj",
24
+ "k_proj",
25
+ "v_proj",
26
+ "o_proj",
27
+ "gate_proj",
28
+ "down_proj",
29
+ "up_proj"
30
+ ],
31
+ "task_type": "CAUSAL_LM",
32
+ "use_dora": false,
33
+ "use_mora": false,
34
+ "use_rslora": false
35
+ }
save_lora_instruct_r8_4e4_s11_1/adapter_model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:b877725910cf2bc993f85d0284ffc64a6a01cabf19935b768e3986df210dc2c2
3
+ size 564342240
save_lora_instruct_r8_4e4_s11_1/checkpoint-1500/README.md ADDED
@@ -0,0 +1,202 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ base_model: meta-llama/Llama-2-7b-hf
3
+ library_name: peft
4
+ ---
5
+
6
+ # Model Card for Model ID
7
+
8
+ <!-- Provide a quick summary of what the model is/does. -->
9
+
10
+
11
+
12
+ ## Model Details
13
+
14
+ ### Model Description
15
+
16
+ <!-- Provide a longer summary of what this model is. -->
17
+
18
+
19
+
20
+ - **Developed by:** [More Information Needed]
21
+ - **Funded by [optional]:** [More Information Needed]
22
+ - **Shared by [optional]:** [More Information Needed]
23
+ - **Model type:** [More Information Needed]
24
+ - **Language(s) (NLP):** [More Information Needed]
25
+ - **License:** [More Information Needed]
26
+ - **Finetuned from model [optional]:** [More Information Needed]
27
+
28
+ ### Model Sources [optional]
29
+
30
+ <!-- Provide the basic links for the model. -->
31
+
32
+ - **Repository:** [More Information Needed]
33
+ - **Paper [optional]:** [More Information Needed]
34
+ - **Demo [optional]:** [More Information Needed]
35
+
36
+ ## Uses
37
+
38
+ <!-- Address questions around how the model is intended to be used, including the foreseeable users of the model and those affected by the model. -->
39
+
40
+ ### Direct Use
41
+
42
+ <!-- This section is for the model use without fine-tuning or plugging into a larger ecosystem/app. -->
43
+
44
+ [More Information Needed]
45
+
46
+ ### Downstream Use [optional]
47
+
48
+ <!-- This section is for the model use when fine-tuned for a task, or when plugged into a larger ecosystem/app -->
49
+
50
+ [More Information Needed]
51
+
52
+ ### Out-of-Scope Use
53
+
54
+ <!-- This section addresses misuse, malicious use, and uses that the model will not work well for. -->
55
+
56
+ [More Information Needed]
57
+
58
+ ## Bias, Risks, and Limitations
59
+
60
+ <!-- This section is meant to convey both technical and sociotechnical limitations. -->
61
+
62
+ [More Information Needed]
63
+
64
+ ### Recommendations
65
+
66
+ <!-- This section is meant to convey recommendations with respect to the bias, risk, and technical limitations. -->
67
+
68
+ Users (both direct and downstream) should be made aware of the risks, biases and limitations of the model. More information needed for further recommendations.
69
+
70
+ ## How to Get Started with the Model
71
+
72
+ Use the code below to get started with the model.
73
+
74
+ [More Information Needed]
75
+
76
+ ## Training Details
77
+
78
+ ### Training Data
79
+
80
+ <!-- This should link to a Dataset Card, perhaps with a short stub of information on what the training data is all about as well as documentation related to data pre-processing or additional filtering. -->
81
+
82
+ [More Information Needed]
83
+
84
+ ### Training Procedure
85
+
86
+ <!-- This relates heavily to the Technical Specifications. Content here should link to that section when it is relevant to the training procedure. -->
87
+
88
+ #### Preprocessing [optional]
89
+
90
+ [More Information Needed]
91
+
92
+
93
+ #### Training Hyperparameters
94
+
95
+ - **Training regime:** [More Information Needed] <!--fp32, fp16 mixed precision, bf16 mixed precision, bf16 non-mixed precision, fp16 non-mixed precision, fp8 mixed precision -->
96
+
97
+ #### Speeds, Sizes, Times [optional]
98
+
99
+ <!-- This section provides information about throughput, start/end time, checkpoint size if relevant, etc. -->
100
+
101
+ [More Information Needed]
102
+
103
+ ## Evaluation
104
+
105
+ <!-- This section describes the evaluation protocols and provides the results. -->
106
+
107
+ ### Testing Data, Factors & Metrics
108
+
109
+ #### Testing Data
110
+
111
+ <!-- This should link to a Dataset Card if possible. -->
112
+
113
+ [More Information Needed]
114
+
115
+ #### Factors
116
+
117
+ <!-- These are the things the evaluation is disaggregating by, e.g., subpopulations or domains. -->
118
+
119
+ [More Information Needed]
120
+
121
+ #### Metrics
122
+
123
+ <!-- These are the evaluation metrics being used, ideally with a description of why. -->
124
+
125
+ [More Information Needed]
126
+
127
+ ### Results
128
+
129
+ [More Information Needed]
130
+
131
+ #### Summary
132
+
133
+
134
+
135
+ ## Model Examination [optional]
136
+
137
+ <!-- Relevant interpretability work for the model goes here -->
138
+
139
+ [More Information Needed]
140
+
141
+ ## Environmental Impact
142
+
143
+ <!-- Total emissions (in grams of CO2eq) and additional considerations, such as electricity usage, go here. Edit the suggested text below accordingly -->
144
+
145
+ Carbon emissions can be estimated using the [Machine Learning Impact calculator](https://mlco2.github.io/impact#compute) presented in [Lacoste et al. (2019)](https://arxiv.org/abs/1910.09700).
146
+
147
+ - **Hardware Type:** [More Information Needed]
148
+ - **Hours used:** [More Information Needed]
149
+ - **Cloud Provider:** [More Information Needed]
150
+ - **Compute Region:** [More Information Needed]
151
+ - **Carbon Emitted:** [More Information Needed]
152
+
153
+ ## Technical Specifications [optional]
154
+
155
+ ### Model Architecture and Objective
156
+
157
+ [More Information Needed]
158
+
159
+ ### Compute Infrastructure
160
+
161
+ [More Information Needed]
162
+
163
+ #### Hardware
164
+
165
+ [More Information Needed]
166
+
167
+ #### Software
168
+
169
+ [More Information Needed]
170
+
171
+ ## Citation [optional]
172
+
173
+ <!-- If there is a paper or blog post introducing the model, the APA and Bibtex information for that should go in this section. -->
174
+
175
+ **BibTeX:**
176
+
177
+ [More Information Needed]
178
+
179
+ **APA:**
180
+
181
+ [More Information Needed]
182
+
183
+ ## Glossary [optional]
184
+
185
+ <!-- If relevant, include terms and calculations in this section that can help readers understand the model or model card. -->
186
+
187
+ [More Information Needed]
188
+
189
+ ## More Information [optional]
190
+
191
+ [More Information Needed]
192
+
193
+ ## Model Card Authors [optional]
194
+
195
+ [More Information Needed]
196
+
197
+ ## Model Card Contact
198
+
199
+ [More Information Needed]
200
+ ### Framework versions
201
+
202
+ - PEFT 0.9.0
save_lora_instruct_r8_4e4_s11_1/checkpoint-1500/adapter_config.json ADDED
@@ -0,0 +1,35 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "alpha_pattern": {},
3
+ "auto_mapping": null,
4
+ "base_model_name_or_path": "meta-llama/Llama-2-7b-hf",
5
+ "bias": "none",
6
+ "fan_in_fan_out": false,
7
+ "inference_mode": true,
8
+ "init_lora_weights": true,
9
+ "layers_pattern": null,
10
+ "layers_to_transform": null,
11
+ "loftq_config": {},
12
+ "lora_alpha": 16,
13
+ "lora_dropout": 0.05,
14
+ "megatron_config": null,
15
+ "megatron_core": "megatron.core",
16
+ "modules_to_save": null,
17
+ "mora_type": 1,
18
+ "peft_type": "LORA",
19
+ "r": 8,
20
+ "rank_pattern": {},
21
+ "revision": null,
22
+ "target_modules": [
23
+ "q_proj",
24
+ "k_proj",
25
+ "v_proj",
26
+ "o_proj",
27
+ "gate_proj",
28
+ "down_proj",
29
+ "up_proj"
30
+ ],
31
+ "task_type": "CAUSAL_LM",
32
+ "use_dora": false,
33
+ "use_mora": false,
34
+ "use_rslora": false
35
+ }
save_lora_instruct_r8_4e4_s11_1/checkpoint-1500/adapter_model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:148b651127bad36ecafe1696dd4410a4dbc7f78c3d1729012f246f0217678672
3
+ size 564342240
save_lora_instruct_r8_4e4_s11_1/checkpoint-1500/global_step1500/bf16_zero_pp_rank_0_mp_rank_00_optim_states.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:dc73040c87dbff03438699f1812dbe80616e5733495eebe76f36c37042b2f749
3
+ size 239914224
save_lora_instruct_r8_4e4_s11_1/checkpoint-1500/global_step1500/mp_rank_00_model_states.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:7e9748c0d074063aa0be54e4a8a370e66d0671ca8867acc5ce413e208beb76bd
3
+ size 40303404
save_lora_instruct_r8_4e4_s11_1/checkpoint-1500/latest ADDED
@@ -0,0 +1 @@
 
 
1
+ global_step1500
save_lora_instruct_r8_4e4_s11_1/checkpoint-1500/rng_state.pth ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:fb1ba1ceb33f795be7ee4e07148f4508e4f6b4ae91adf50fdaf1077b1ae47da8
3
+ size 14244
save_lora_instruct_r8_4e4_s11_1/checkpoint-1500/scheduler.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:a5f4641faf2b17520c52e00d1eae4553db1b75e4c42cd080785063e0d358be92
3
+ size 1064
save_lora_instruct_r8_4e4_s11_1/checkpoint-1500/trainer_state.json ADDED
@@ -0,0 +1,1821 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "best_metric": null,
3
+ "best_model_checkpoint": null,
4
+ "epoch": 0.598746374777809,
5
+ "eval_steps": 500,
6
+ "global_step": 1500,
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.0,
13
+ "learning_rate": 1.3333333333333333e-05,
14
+ "loss": 1.3798,
15
+ "step": 5
16
+ },
17
+ {
18
+ "epoch": 0.0,
19
+ "learning_rate": 2.6666666666666667e-05,
20
+ "loss": 1.3917,
21
+ "step": 10
22
+ },
23
+ {
24
+ "epoch": 0.01,
25
+ "learning_rate": 4e-05,
26
+ "loss": 1.2862,
27
+ "step": 15
28
+ },
29
+ {
30
+ "epoch": 0.01,
31
+ "learning_rate": 5.333333333333333e-05,
32
+ "loss": 1.2046,
33
+ "step": 20
34
+ },
35
+ {
36
+ "epoch": 0.01,
37
+ "learning_rate": 6.666666666666667e-05,
38
+ "loss": 1.0634,
39
+ "step": 25
40
+ },
41
+ {
42
+ "epoch": 0.01,
43
+ "learning_rate": 8e-05,
44
+ "loss": 1.0273,
45
+ "step": 30
46
+ },
47
+ {
48
+ "epoch": 0.01,
49
+ "learning_rate": 9.333333333333334e-05,
50
+ "loss": 1.0472,
51
+ "step": 35
52
+ },
53
+ {
54
+ "epoch": 0.02,
55
+ "learning_rate": 0.00010666666666666667,
56
+ "loss": 1.0301,
57
+ "step": 40
58
+ },
59
+ {
60
+ "epoch": 0.02,
61
+ "learning_rate": 0.00012,
62
+ "loss": 0.9335,
63
+ "step": 45
64
+ },
65
+ {
66
+ "epoch": 0.02,
67
+ "learning_rate": 0.00013333333333333334,
68
+ "loss": 0.921,
69
+ "step": 50
70
+ },
71
+ {
72
+ "epoch": 0.02,
73
+ "learning_rate": 0.00014666666666666666,
74
+ "loss": 0.9506,
75
+ "step": 55
76
+ },
77
+ {
78
+ "epoch": 0.02,
79
+ "learning_rate": 0.00016,
80
+ "loss": 0.8876,
81
+ "step": 60
82
+ },
83
+ {
84
+ "epoch": 0.03,
85
+ "learning_rate": 0.00017333333333333334,
86
+ "loss": 0.9335,
87
+ "step": 65
88
+ },
89
+ {
90
+ "epoch": 0.03,
91
+ "learning_rate": 0.0001866666666666667,
92
+ "loss": 0.8554,
93
+ "step": 70
94
+ },
95
+ {
96
+ "epoch": 0.03,
97
+ "learning_rate": 0.0002,
98
+ "loss": 0.8537,
99
+ "step": 75
100
+ },
101
+ {
102
+ "epoch": 0.03,
103
+ "learning_rate": 0.00021333333333333333,
104
+ "loss": 0.9033,
105
+ "step": 80
106
+ },
107
+ {
108
+ "epoch": 0.03,
109
+ "learning_rate": 0.00022666666666666668,
110
+ "loss": 0.8203,
111
+ "step": 85
112
+ },
113
+ {
114
+ "epoch": 0.04,
115
+ "learning_rate": 0.00024,
116
+ "loss": 0.8611,
117
+ "step": 90
118
+ },
119
+ {
120
+ "epoch": 0.04,
121
+ "learning_rate": 0.00025333333333333333,
122
+ "loss": 0.8303,
123
+ "step": 95
124
+ },
125
+ {
126
+ "epoch": 0.04,
127
+ "learning_rate": 0.0002666666666666667,
128
+ "loss": 0.8528,
129
+ "step": 100
130
+ },
131
+ {
132
+ "epoch": 0.04,
133
+ "learning_rate": 0.00028,
134
+ "loss": 0.8537,
135
+ "step": 105
136
+ },
137
+ {
138
+ "epoch": 0.04,
139
+ "learning_rate": 0.0002933333333333333,
140
+ "loss": 0.8286,
141
+ "step": 110
142
+ },
143
+ {
144
+ "epoch": 0.05,
145
+ "learning_rate": 0.0003066666666666667,
146
+ "loss": 0.8449,
147
+ "step": 115
148
+ },
149
+ {
150
+ "epoch": 0.05,
151
+ "learning_rate": 0.00032,
152
+ "loss": 0.8377,
153
+ "step": 120
154
+ },
155
+ {
156
+ "epoch": 0.05,
157
+ "learning_rate": 0.0003333333333333334,
158
+ "loss": 0.8419,
159
+ "step": 125
160
+ },
161
+ {
162
+ "epoch": 0.05,
163
+ "learning_rate": 0.00034666666666666667,
164
+ "loss": 0.8265,
165
+ "step": 130
166
+ },
167
+ {
168
+ "epoch": 0.05,
169
+ "learning_rate": 0.00036,
170
+ "loss": 0.8037,
171
+ "step": 135
172
+ },
173
+ {
174
+ "epoch": 0.06,
175
+ "learning_rate": 0.0003733333333333334,
176
+ "loss": 0.7924,
177
+ "step": 140
178
+ },
179
+ {
180
+ "epoch": 0.06,
181
+ "learning_rate": 0.00038666666666666667,
182
+ "loss": 0.8245,
183
+ "step": 145
184
+ },
185
+ {
186
+ "epoch": 0.06,
187
+ "learning_rate": 0.0004,
188
+ "loss": 0.8388,
189
+ "step": 150
190
+ },
191
+ {
192
+ "epoch": 0.06,
193
+ "learning_rate": 0.0003995884773662552,
194
+ "loss": 0.8066,
195
+ "step": 155
196
+ },
197
+ {
198
+ "epoch": 0.06,
199
+ "learning_rate": 0.0003991769547325103,
200
+ "loss": 0.8107,
201
+ "step": 160
202
+ },
203
+ {
204
+ "epoch": 0.07,
205
+ "learning_rate": 0.00039876543209876544,
206
+ "loss": 0.8005,
207
+ "step": 165
208
+ },
209
+ {
210
+ "epoch": 0.07,
211
+ "learning_rate": 0.0003983539094650206,
212
+ "loss": 0.7727,
213
+ "step": 170
214
+ },
215
+ {
216
+ "epoch": 0.07,
217
+ "learning_rate": 0.00039794238683127576,
218
+ "loss": 0.8276,
219
+ "step": 175
220
+ },
221
+ {
222
+ "epoch": 0.07,
223
+ "learning_rate": 0.00039753086419753086,
224
+ "loss": 0.8464,
225
+ "step": 180
226
+ },
227
+ {
228
+ "epoch": 0.07,
229
+ "learning_rate": 0.000397119341563786,
230
+ "loss": 0.8348,
231
+ "step": 185
232
+ },
233
+ {
234
+ "epoch": 0.08,
235
+ "learning_rate": 0.0003967078189300412,
236
+ "loss": 0.8228,
237
+ "step": 190
238
+ },
239
+ {
240
+ "epoch": 0.08,
241
+ "learning_rate": 0.0003962962962962963,
242
+ "loss": 0.8254,
243
+ "step": 195
244
+ },
245
+ {
246
+ "epoch": 0.08,
247
+ "learning_rate": 0.00039588477366255144,
248
+ "loss": 0.817,
249
+ "step": 200
250
+ },
251
+ {
252
+ "epoch": 0.08,
253
+ "learning_rate": 0.0003954732510288066,
254
+ "loss": 0.8365,
255
+ "step": 205
256
+ },
257
+ {
258
+ "epoch": 0.08,
259
+ "learning_rate": 0.0003950617283950617,
260
+ "loss": 0.793,
261
+ "step": 210
262
+ },
263
+ {
264
+ "epoch": 0.09,
265
+ "learning_rate": 0.00039465020576131686,
266
+ "loss": 0.8014,
267
+ "step": 215
268
+ },
269
+ {
270
+ "epoch": 0.09,
271
+ "learning_rate": 0.000394238683127572,
272
+ "loss": 0.8049,
273
+ "step": 220
274
+ },
275
+ {
276
+ "epoch": 0.09,
277
+ "learning_rate": 0.0003938271604938272,
278
+ "loss": 0.7841,
279
+ "step": 225
280
+ },
281
+ {
282
+ "epoch": 0.09,
283
+ "learning_rate": 0.0003934156378600823,
284
+ "loss": 0.7977,
285
+ "step": 230
286
+ },
287
+ {
288
+ "epoch": 0.09,
289
+ "learning_rate": 0.00039300411522633744,
290
+ "loss": 0.8299,
291
+ "step": 235
292
+ },
293
+ {
294
+ "epoch": 0.1,
295
+ "learning_rate": 0.0003925925925925926,
296
+ "loss": 0.7729,
297
+ "step": 240
298
+ },
299
+ {
300
+ "epoch": 0.1,
301
+ "learning_rate": 0.00039218106995884776,
302
+ "loss": 0.8082,
303
+ "step": 245
304
+ },
305
+ {
306
+ "epoch": 0.1,
307
+ "learning_rate": 0.0003917695473251029,
308
+ "loss": 0.8173,
309
+ "step": 250
310
+ },
311
+ {
312
+ "epoch": 0.1,
313
+ "learning_rate": 0.000391358024691358,
314
+ "loss": 0.8379,
315
+ "step": 255
316
+ },
317
+ {
318
+ "epoch": 0.1,
319
+ "learning_rate": 0.0003909465020576132,
320
+ "loss": 0.7962,
321
+ "step": 260
322
+ },
323
+ {
324
+ "epoch": 0.11,
325
+ "learning_rate": 0.00039053497942386834,
326
+ "loss": 0.8067,
327
+ "step": 265
328
+ },
329
+ {
330
+ "epoch": 0.11,
331
+ "learning_rate": 0.0003901234567901235,
332
+ "loss": 0.7915,
333
+ "step": 270
334
+ },
335
+ {
336
+ "epoch": 0.11,
337
+ "learning_rate": 0.00038971193415637866,
338
+ "loss": 0.7905,
339
+ "step": 275
340
+ },
341
+ {
342
+ "epoch": 0.11,
343
+ "learning_rate": 0.00038930041152263376,
344
+ "loss": 0.7862,
345
+ "step": 280
346
+ },
347
+ {
348
+ "epoch": 0.11,
349
+ "learning_rate": 0.0003888888888888889,
350
+ "loss": 0.7709,
351
+ "step": 285
352
+ },
353
+ {
354
+ "epoch": 0.12,
355
+ "learning_rate": 0.0003884773662551441,
356
+ "loss": 0.7773,
357
+ "step": 290
358
+ },
359
+ {
360
+ "epoch": 0.12,
361
+ "learning_rate": 0.00038806584362139924,
362
+ "loss": 0.8068,
363
+ "step": 295
364
+ },
365
+ {
366
+ "epoch": 0.12,
367
+ "learning_rate": 0.00038765432098765434,
368
+ "loss": 0.7962,
369
+ "step": 300
370
+ },
371
+ {
372
+ "epoch": 0.12,
373
+ "learning_rate": 0.0003872427983539095,
374
+ "loss": 0.7894,
375
+ "step": 305
376
+ },
377
+ {
378
+ "epoch": 0.12,
379
+ "learning_rate": 0.00038683127572016466,
380
+ "loss": 0.7705,
381
+ "step": 310
382
+ },
383
+ {
384
+ "epoch": 0.13,
385
+ "learning_rate": 0.00038641975308641976,
386
+ "loss": 0.7882,
387
+ "step": 315
388
+ },
389
+ {
390
+ "epoch": 0.13,
391
+ "learning_rate": 0.0003860082304526749,
392
+ "loss": 0.7865,
393
+ "step": 320
394
+ },
395
+ {
396
+ "epoch": 0.13,
397
+ "learning_rate": 0.0003855967078189301,
398
+ "loss": 0.7939,
399
+ "step": 325
400
+ },
401
+ {
402
+ "epoch": 0.13,
403
+ "learning_rate": 0.0003851851851851852,
404
+ "loss": 0.7724,
405
+ "step": 330
406
+ },
407
+ {
408
+ "epoch": 0.13,
409
+ "learning_rate": 0.00038477366255144034,
410
+ "loss": 0.7771,
411
+ "step": 335
412
+ },
413
+ {
414
+ "epoch": 0.14,
415
+ "learning_rate": 0.0003843621399176955,
416
+ "loss": 0.7941,
417
+ "step": 340
418
+ },
419
+ {
420
+ "epoch": 0.14,
421
+ "learning_rate": 0.00038395061728395066,
422
+ "loss": 0.7822,
423
+ "step": 345
424
+ },
425
+ {
426
+ "epoch": 0.14,
427
+ "learning_rate": 0.00038353909465020577,
428
+ "loss": 0.8143,
429
+ "step": 350
430
+ },
431
+ {
432
+ "epoch": 0.14,
433
+ "learning_rate": 0.0003831275720164609,
434
+ "loss": 0.795,
435
+ "step": 355
436
+ },
437
+ {
438
+ "epoch": 0.14,
439
+ "learning_rate": 0.0003827160493827161,
440
+ "loss": 0.8049,
441
+ "step": 360
442
+ },
443
+ {
444
+ "epoch": 0.15,
445
+ "learning_rate": 0.0003823045267489712,
446
+ "loss": 0.8309,
447
+ "step": 365
448
+ },
449
+ {
450
+ "epoch": 0.15,
451
+ "learning_rate": 0.00038189300411522635,
452
+ "loss": 0.8314,
453
+ "step": 370
454
+ },
455
+ {
456
+ "epoch": 0.15,
457
+ "learning_rate": 0.0003814814814814815,
458
+ "loss": 0.801,
459
+ "step": 375
460
+ },
461
+ {
462
+ "epoch": 0.15,
463
+ "learning_rate": 0.00038106995884773666,
464
+ "loss": 0.8084,
465
+ "step": 380
466
+ },
467
+ {
468
+ "epoch": 0.15,
469
+ "learning_rate": 0.00038065843621399177,
470
+ "loss": 0.8129,
471
+ "step": 385
472
+ },
473
+ {
474
+ "epoch": 0.16,
475
+ "learning_rate": 0.0003802469135802469,
476
+ "loss": 0.7859,
477
+ "step": 390
478
+ },
479
+ {
480
+ "epoch": 0.16,
481
+ "learning_rate": 0.0003798353909465021,
482
+ "loss": 0.7874,
483
+ "step": 395
484
+ },
485
+ {
486
+ "epoch": 0.16,
487
+ "learning_rate": 0.0003794238683127572,
488
+ "loss": 0.7548,
489
+ "step": 400
490
+ },
491
+ {
492
+ "epoch": 0.16,
493
+ "learning_rate": 0.00037901234567901235,
494
+ "loss": 0.8092,
495
+ "step": 405
496
+ },
497
+ {
498
+ "epoch": 0.16,
499
+ "learning_rate": 0.0003786008230452675,
500
+ "loss": 0.8041,
501
+ "step": 410
502
+ },
503
+ {
504
+ "epoch": 0.17,
505
+ "learning_rate": 0.00037818930041152266,
506
+ "loss": 0.777,
507
+ "step": 415
508
+ },
509
+ {
510
+ "epoch": 0.17,
511
+ "learning_rate": 0.00037777777777777777,
512
+ "loss": 0.7699,
513
+ "step": 420
514
+ },
515
+ {
516
+ "epoch": 0.17,
517
+ "learning_rate": 0.00037736625514403293,
518
+ "loss": 0.781,
519
+ "step": 425
520
+ },
521
+ {
522
+ "epoch": 0.17,
523
+ "learning_rate": 0.0003769547325102881,
524
+ "loss": 0.7504,
525
+ "step": 430
526
+ },
527
+ {
528
+ "epoch": 0.17,
529
+ "learning_rate": 0.0003765432098765432,
530
+ "loss": 0.7974,
531
+ "step": 435
532
+ },
533
+ {
534
+ "epoch": 0.18,
535
+ "learning_rate": 0.00037613168724279835,
536
+ "loss": 0.7663,
537
+ "step": 440
538
+ },
539
+ {
540
+ "epoch": 0.18,
541
+ "learning_rate": 0.0003757201646090535,
542
+ "loss": 0.8013,
543
+ "step": 445
544
+ },
545
+ {
546
+ "epoch": 0.18,
547
+ "learning_rate": 0.00037530864197530867,
548
+ "loss": 0.7453,
549
+ "step": 450
550
+ },
551
+ {
552
+ "epoch": 0.18,
553
+ "learning_rate": 0.00037489711934156377,
554
+ "loss": 0.7425,
555
+ "step": 455
556
+ },
557
+ {
558
+ "epoch": 0.18,
559
+ "learning_rate": 0.00037448559670781893,
560
+ "loss": 0.7582,
561
+ "step": 460
562
+ },
563
+ {
564
+ "epoch": 0.19,
565
+ "learning_rate": 0.0003740740740740741,
566
+ "loss": 0.7801,
567
+ "step": 465
568
+ },
569
+ {
570
+ "epoch": 0.19,
571
+ "learning_rate": 0.00037366255144032925,
572
+ "loss": 0.7809,
573
+ "step": 470
574
+ },
575
+ {
576
+ "epoch": 0.19,
577
+ "learning_rate": 0.0003732510288065844,
578
+ "loss": 0.7749,
579
+ "step": 475
580
+ },
581
+ {
582
+ "epoch": 0.19,
583
+ "learning_rate": 0.00037283950617283956,
584
+ "loss": 0.7807,
585
+ "step": 480
586
+ },
587
+ {
588
+ "epoch": 0.19,
589
+ "learning_rate": 0.00037242798353909467,
590
+ "loss": 0.7715,
591
+ "step": 485
592
+ },
593
+ {
594
+ "epoch": 0.2,
595
+ "learning_rate": 0.0003720164609053498,
596
+ "loss": 0.7356,
597
+ "step": 490
598
+ },
599
+ {
600
+ "epoch": 0.2,
601
+ "learning_rate": 0.000371604938271605,
602
+ "loss": 0.7674,
603
+ "step": 495
604
+ },
605
+ {
606
+ "epoch": 0.2,
607
+ "learning_rate": 0.00037119341563786014,
608
+ "loss": 0.7542,
609
+ "step": 500
610
+ },
611
+ {
612
+ "epoch": 0.2,
613
+ "learning_rate": 0.00037078189300411525,
614
+ "loss": 0.7583,
615
+ "step": 505
616
+ },
617
+ {
618
+ "epoch": 0.2,
619
+ "learning_rate": 0.0003703703703703704,
620
+ "loss": 0.7767,
621
+ "step": 510
622
+ },
623
+ {
624
+ "epoch": 0.21,
625
+ "learning_rate": 0.00036995884773662556,
626
+ "loss": 0.7853,
627
+ "step": 515
628
+ },
629
+ {
630
+ "epoch": 0.21,
631
+ "learning_rate": 0.00036954732510288067,
632
+ "loss": 0.7733,
633
+ "step": 520
634
+ },
635
+ {
636
+ "epoch": 0.21,
637
+ "learning_rate": 0.00036913580246913583,
638
+ "loss": 0.7758,
639
+ "step": 525
640
+ },
641
+ {
642
+ "epoch": 0.21,
643
+ "learning_rate": 0.000368724279835391,
644
+ "loss": 0.7698,
645
+ "step": 530
646
+ },
647
+ {
648
+ "epoch": 0.21,
649
+ "learning_rate": 0.00036831275720164614,
650
+ "loss": 0.7805,
651
+ "step": 535
652
+ },
653
+ {
654
+ "epoch": 0.22,
655
+ "learning_rate": 0.00036790123456790125,
656
+ "loss": 0.7573,
657
+ "step": 540
658
+ },
659
+ {
660
+ "epoch": 0.22,
661
+ "learning_rate": 0.0003674897119341564,
662
+ "loss": 0.7709,
663
+ "step": 545
664
+ },
665
+ {
666
+ "epoch": 0.22,
667
+ "learning_rate": 0.00036707818930041157,
668
+ "loss": 0.7994,
669
+ "step": 550
670
+ },
671
+ {
672
+ "epoch": 0.22,
673
+ "learning_rate": 0.00036666666666666667,
674
+ "loss": 0.7363,
675
+ "step": 555
676
+ },
677
+ {
678
+ "epoch": 0.22,
679
+ "learning_rate": 0.00036625514403292183,
680
+ "loss": 0.7478,
681
+ "step": 560
682
+ },
683
+ {
684
+ "epoch": 0.23,
685
+ "learning_rate": 0.000365843621399177,
686
+ "loss": 0.8188,
687
+ "step": 565
688
+ },
689
+ {
690
+ "epoch": 0.23,
691
+ "learning_rate": 0.0003654320987654321,
692
+ "loss": 0.7524,
693
+ "step": 570
694
+ },
695
+ {
696
+ "epoch": 0.23,
697
+ "learning_rate": 0.00036502057613168725,
698
+ "loss": 0.7319,
699
+ "step": 575
700
+ },
701
+ {
702
+ "epoch": 0.23,
703
+ "learning_rate": 0.0003646090534979424,
704
+ "loss": 0.7915,
705
+ "step": 580
706
+ },
707
+ {
708
+ "epoch": 0.23,
709
+ "learning_rate": 0.00036419753086419757,
710
+ "loss": 0.7722,
711
+ "step": 585
712
+ },
713
+ {
714
+ "epoch": 0.24,
715
+ "learning_rate": 0.00036378600823045267,
716
+ "loss": 0.7842,
717
+ "step": 590
718
+ },
719
+ {
720
+ "epoch": 0.24,
721
+ "learning_rate": 0.00036337448559670783,
722
+ "loss": 0.7591,
723
+ "step": 595
724
+ },
725
+ {
726
+ "epoch": 0.24,
727
+ "learning_rate": 0.000362962962962963,
728
+ "loss": 0.7653,
729
+ "step": 600
730
+ },
731
+ {
732
+ "epoch": 0.24,
733
+ "learning_rate": 0.0003625514403292181,
734
+ "loss": 0.7838,
735
+ "step": 605
736
+ },
737
+ {
738
+ "epoch": 0.24,
739
+ "learning_rate": 0.00036213991769547325,
740
+ "loss": 0.7937,
741
+ "step": 610
742
+ },
743
+ {
744
+ "epoch": 0.25,
745
+ "learning_rate": 0.0003617283950617284,
746
+ "loss": 0.77,
747
+ "step": 615
748
+ },
749
+ {
750
+ "epoch": 0.25,
751
+ "learning_rate": 0.00036131687242798357,
752
+ "loss": 0.7899,
753
+ "step": 620
754
+ },
755
+ {
756
+ "epoch": 0.25,
757
+ "learning_rate": 0.0003609053497942387,
758
+ "loss": 0.7815,
759
+ "step": 625
760
+ },
761
+ {
762
+ "epoch": 0.25,
763
+ "learning_rate": 0.00036049382716049383,
764
+ "loss": 0.7648,
765
+ "step": 630
766
+ },
767
+ {
768
+ "epoch": 0.25,
769
+ "learning_rate": 0.000360082304526749,
770
+ "loss": 0.7716,
771
+ "step": 635
772
+ },
773
+ {
774
+ "epoch": 0.26,
775
+ "learning_rate": 0.0003596707818930041,
776
+ "loss": 0.7708,
777
+ "step": 640
778
+ },
779
+ {
780
+ "epoch": 0.26,
781
+ "learning_rate": 0.00035925925925925925,
782
+ "loss": 0.7306,
783
+ "step": 645
784
+ },
785
+ {
786
+ "epoch": 0.26,
787
+ "learning_rate": 0.0003588477366255144,
788
+ "loss": 0.8007,
789
+ "step": 650
790
+ },
791
+ {
792
+ "epoch": 0.26,
793
+ "learning_rate": 0.0003584362139917695,
794
+ "loss": 0.7551,
795
+ "step": 655
796
+ },
797
+ {
798
+ "epoch": 0.26,
799
+ "learning_rate": 0.0003580246913580247,
800
+ "loss": 0.754,
801
+ "step": 660
802
+ },
803
+ {
804
+ "epoch": 0.27,
805
+ "learning_rate": 0.00035761316872427983,
806
+ "loss": 0.7599,
807
+ "step": 665
808
+ },
809
+ {
810
+ "epoch": 0.27,
811
+ "learning_rate": 0.000357201646090535,
812
+ "loss": 0.7637,
813
+ "step": 670
814
+ },
815
+ {
816
+ "epoch": 0.27,
817
+ "learning_rate": 0.00035679012345679015,
818
+ "loss": 0.7766,
819
+ "step": 675
820
+ },
821
+ {
822
+ "epoch": 0.27,
823
+ "learning_rate": 0.0003563786008230453,
824
+ "loss": 0.7727,
825
+ "step": 680
826
+ },
827
+ {
828
+ "epoch": 0.27,
829
+ "learning_rate": 0.0003559670781893004,
830
+ "loss": 0.7675,
831
+ "step": 685
832
+ },
833
+ {
834
+ "epoch": 0.28,
835
+ "learning_rate": 0.00035555555555555557,
836
+ "loss": 0.7707,
837
+ "step": 690
838
+ },
839
+ {
840
+ "epoch": 0.28,
841
+ "learning_rate": 0.00035514403292181073,
842
+ "loss": 0.7221,
843
+ "step": 695
844
+ },
845
+ {
846
+ "epoch": 0.28,
847
+ "learning_rate": 0.0003547325102880659,
848
+ "loss": 0.7335,
849
+ "step": 700
850
+ },
851
+ {
852
+ "epoch": 0.28,
853
+ "learning_rate": 0.00035432098765432105,
854
+ "loss": 0.781,
855
+ "step": 705
856
+ },
857
+ {
858
+ "epoch": 0.28,
859
+ "learning_rate": 0.00035390946502057615,
860
+ "loss": 0.7845,
861
+ "step": 710
862
+ },
863
+ {
864
+ "epoch": 0.29,
865
+ "learning_rate": 0.0003534979423868313,
866
+ "loss": 0.7467,
867
+ "step": 715
868
+ },
869
+ {
870
+ "epoch": 0.29,
871
+ "learning_rate": 0.00035308641975308647,
872
+ "loss": 0.7735,
873
+ "step": 720
874
+ },
875
+ {
876
+ "epoch": 0.29,
877
+ "learning_rate": 0.0003526748971193416,
878
+ "loss": 0.7368,
879
+ "step": 725
880
+ },
881
+ {
882
+ "epoch": 0.29,
883
+ "learning_rate": 0.00035226337448559673,
884
+ "loss": 0.7678,
885
+ "step": 730
886
+ },
887
+ {
888
+ "epoch": 0.29,
889
+ "learning_rate": 0.0003518518518518519,
890
+ "loss": 0.7756,
891
+ "step": 735
892
+ },
893
+ {
894
+ "epoch": 0.3,
895
+ "learning_rate": 0.00035144032921810705,
896
+ "loss": 0.7635,
897
+ "step": 740
898
+ },
899
+ {
900
+ "epoch": 0.3,
901
+ "learning_rate": 0.00035102880658436215,
902
+ "loss": 0.7757,
903
+ "step": 745
904
+ },
905
+ {
906
+ "epoch": 0.3,
907
+ "learning_rate": 0.0003506172839506173,
908
+ "loss": 0.7442,
909
+ "step": 750
910
+ },
911
+ {
912
+ "epoch": 0.3,
913
+ "learning_rate": 0.00035020576131687247,
914
+ "loss": 0.7584,
915
+ "step": 755
916
+ },
917
+ {
918
+ "epoch": 0.3,
919
+ "learning_rate": 0.0003497942386831276,
920
+ "loss": 0.8333,
921
+ "step": 760
922
+ },
923
+ {
924
+ "epoch": 0.31,
925
+ "learning_rate": 0.00034938271604938273,
926
+ "loss": 0.7459,
927
+ "step": 765
928
+ },
929
+ {
930
+ "epoch": 0.31,
931
+ "learning_rate": 0.0003489711934156379,
932
+ "loss": 0.7499,
933
+ "step": 770
934
+ },
935
+ {
936
+ "epoch": 0.31,
937
+ "learning_rate": 0.000348559670781893,
938
+ "loss": 0.7571,
939
+ "step": 775
940
+ },
941
+ {
942
+ "epoch": 0.31,
943
+ "learning_rate": 0.00034814814814814816,
944
+ "loss": 0.7243,
945
+ "step": 780
946
+ },
947
+ {
948
+ "epoch": 0.31,
949
+ "learning_rate": 0.0003477366255144033,
950
+ "loss": 0.7443,
951
+ "step": 785
952
+ },
953
+ {
954
+ "epoch": 0.32,
955
+ "learning_rate": 0.0003473251028806585,
956
+ "loss": 0.7759,
957
+ "step": 790
958
+ },
959
+ {
960
+ "epoch": 0.32,
961
+ "learning_rate": 0.0003469135802469136,
962
+ "loss": 0.7452,
963
+ "step": 795
964
+ },
965
+ {
966
+ "epoch": 0.32,
967
+ "learning_rate": 0.00034650205761316874,
968
+ "loss": 0.7578,
969
+ "step": 800
970
+ },
971
+ {
972
+ "epoch": 0.32,
973
+ "learning_rate": 0.0003460905349794239,
974
+ "loss": 0.7634,
975
+ "step": 805
976
+ },
977
+ {
978
+ "epoch": 0.32,
979
+ "learning_rate": 0.000345679012345679,
980
+ "loss": 0.7925,
981
+ "step": 810
982
+ },
983
+ {
984
+ "epoch": 0.33,
985
+ "learning_rate": 0.00034526748971193416,
986
+ "loss": 0.7966,
987
+ "step": 815
988
+ },
989
+ {
990
+ "epoch": 0.33,
991
+ "learning_rate": 0.0003448559670781893,
992
+ "loss": 0.7601,
993
+ "step": 820
994
+ },
995
+ {
996
+ "epoch": 0.33,
997
+ "learning_rate": 0.0003444444444444445,
998
+ "loss": 0.7617,
999
+ "step": 825
1000
+ },
1001
+ {
1002
+ "epoch": 0.33,
1003
+ "learning_rate": 0.0003440329218106996,
1004
+ "loss": 0.7526,
1005
+ "step": 830
1006
+ },
1007
+ {
1008
+ "epoch": 0.33,
1009
+ "learning_rate": 0.00034362139917695474,
1010
+ "loss": 0.7297,
1011
+ "step": 835
1012
+ },
1013
+ {
1014
+ "epoch": 0.34,
1015
+ "learning_rate": 0.0003432098765432099,
1016
+ "loss": 0.7549,
1017
+ "step": 840
1018
+ },
1019
+ {
1020
+ "epoch": 0.34,
1021
+ "learning_rate": 0.000342798353909465,
1022
+ "loss": 0.7517,
1023
+ "step": 845
1024
+ },
1025
+ {
1026
+ "epoch": 0.34,
1027
+ "learning_rate": 0.00034238683127572016,
1028
+ "loss": 0.7626,
1029
+ "step": 850
1030
+ },
1031
+ {
1032
+ "epoch": 0.34,
1033
+ "learning_rate": 0.0003419753086419753,
1034
+ "loss": 0.7987,
1035
+ "step": 855
1036
+ },
1037
+ {
1038
+ "epoch": 0.34,
1039
+ "learning_rate": 0.0003415637860082305,
1040
+ "loss": 0.7573,
1041
+ "step": 860
1042
+ },
1043
+ {
1044
+ "epoch": 0.35,
1045
+ "learning_rate": 0.0003411522633744856,
1046
+ "loss": 0.8367,
1047
+ "step": 865
1048
+ },
1049
+ {
1050
+ "epoch": 0.35,
1051
+ "learning_rate": 0.00034074074074074074,
1052
+ "loss": 0.7258,
1053
+ "step": 870
1054
+ },
1055
+ {
1056
+ "epoch": 0.35,
1057
+ "learning_rate": 0.0003403292181069959,
1058
+ "loss": 0.7632,
1059
+ "step": 875
1060
+ },
1061
+ {
1062
+ "epoch": 0.35,
1063
+ "learning_rate": 0.00033991769547325106,
1064
+ "loss": 0.7379,
1065
+ "step": 880
1066
+ },
1067
+ {
1068
+ "epoch": 0.35,
1069
+ "learning_rate": 0.00033950617283950616,
1070
+ "loss": 0.7529,
1071
+ "step": 885
1072
+ },
1073
+ {
1074
+ "epoch": 0.36,
1075
+ "learning_rate": 0.0003390946502057613,
1076
+ "loss": 0.7391,
1077
+ "step": 890
1078
+ },
1079
+ {
1080
+ "epoch": 0.36,
1081
+ "learning_rate": 0.0003386831275720165,
1082
+ "loss": 0.8061,
1083
+ "step": 895
1084
+ },
1085
+ {
1086
+ "epoch": 0.36,
1087
+ "learning_rate": 0.00033827160493827164,
1088
+ "loss": 0.7288,
1089
+ "step": 900
1090
+ },
1091
+ {
1092
+ "epoch": 0.36,
1093
+ "learning_rate": 0.0003378600823045268,
1094
+ "loss": 0.7493,
1095
+ "step": 905
1096
+ },
1097
+ {
1098
+ "epoch": 0.36,
1099
+ "learning_rate": 0.00033744855967078195,
1100
+ "loss": 0.7702,
1101
+ "step": 910
1102
+ },
1103
+ {
1104
+ "epoch": 0.37,
1105
+ "learning_rate": 0.00033703703703703706,
1106
+ "loss": 0.7538,
1107
+ "step": 915
1108
+ },
1109
+ {
1110
+ "epoch": 0.37,
1111
+ "learning_rate": 0.0003366255144032922,
1112
+ "loss": 0.728,
1113
+ "step": 920
1114
+ },
1115
+ {
1116
+ "epoch": 0.37,
1117
+ "learning_rate": 0.0003362139917695474,
1118
+ "loss": 0.7776,
1119
+ "step": 925
1120
+ },
1121
+ {
1122
+ "epoch": 0.37,
1123
+ "learning_rate": 0.0003358024691358025,
1124
+ "loss": 0.7883,
1125
+ "step": 930
1126
+ },
1127
+ {
1128
+ "epoch": 0.37,
1129
+ "learning_rate": 0.00033539094650205764,
1130
+ "loss": 0.7471,
1131
+ "step": 935
1132
+ },
1133
+ {
1134
+ "epoch": 0.38,
1135
+ "learning_rate": 0.0003349794238683128,
1136
+ "loss": 0.7464,
1137
+ "step": 940
1138
+ },
1139
+ {
1140
+ "epoch": 0.38,
1141
+ "learning_rate": 0.00033456790123456795,
1142
+ "loss": 0.7885,
1143
+ "step": 945
1144
+ },
1145
+ {
1146
+ "epoch": 0.38,
1147
+ "learning_rate": 0.00033415637860082306,
1148
+ "loss": 0.7509,
1149
+ "step": 950
1150
+ },
1151
+ {
1152
+ "epoch": 0.38,
1153
+ "learning_rate": 0.0003337448559670782,
1154
+ "loss": 0.7681,
1155
+ "step": 955
1156
+ },
1157
+ {
1158
+ "epoch": 0.38,
1159
+ "learning_rate": 0.0003333333333333334,
1160
+ "loss": 0.8246,
1161
+ "step": 960
1162
+ },
1163
+ {
1164
+ "epoch": 0.39,
1165
+ "learning_rate": 0.0003329218106995885,
1166
+ "loss": 0.7604,
1167
+ "step": 965
1168
+ },
1169
+ {
1170
+ "epoch": 0.39,
1171
+ "learning_rate": 0.00033251028806584364,
1172
+ "loss": 0.7755,
1173
+ "step": 970
1174
+ },
1175
+ {
1176
+ "epoch": 0.39,
1177
+ "learning_rate": 0.0003320987654320988,
1178
+ "loss": 0.7641,
1179
+ "step": 975
1180
+ },
1181
+ {
1182
+ "epoch": 0.39,
1183
+ "learning_rate": 0.0003316872427983539,
1184
+ "loss": 0.7708,
1185
+ "step": 980
1186
+ },
1187
+ {
1188
+ "epoch": 0.39,
1189
+ "learning_rate": 0.00033127572016460906,
1190
+ "loss": 0.7936,
1191
+ "step": 985
1192
+ },
1193
+ {
1194
+ "epoch": 0.4,
1195
+ "learning_rate": 0.0003308641975308642,
1196
+ "loss": 0.7641,
1197
+ "step": 990
1198
+ },
1199
+ {
1200
+ "epoch": 0.4,
1201
+ "learning_rate": 0.0003304526748971194,
1202
+ "loss": 0.7479,
1203
+ "step": 995
1204
+ },
1205
+ {
1206
+ "epoch": 0.4,
1207
+ "learning_rate": 0.0003300411522633745,
1208
+ "loss": 0.7547,
1209
+ "step": 1000
1210
+ },
1211
+ {
1212
+ "epoch": 0.4,
1213
+ "learning_rate": 0.00032962962962962964,
1214
+ "loss": 0.762,
1215
+ "step": 1005
1216
+ },
1217
+ {
1218
+ "epoch": 0.4,
1219
+ "learning_rate": 0.0003292181069958848,
1220
+ "loss": 0.7472,
1221
+ "step": 1010
1222
+ },
1223
+ {
1224
+ "epoch": 0.41,
1225
+ "learning_rate": 0.0003288065843621399,
1226
+ "loss": 0.7542,
1227
+ "step": 1015
1228
+ },
1229
+ {
1230
+ "epoch": 0.41,
1231
+ "learning_rate": 0.00032839506172839506,
1232
+ "loss": 0.7669,
1233
+ "step": 1020
1234
+ },
1235
+ {
1236
+ "epoch": 0.41,
1237
+ "learning_rate": 0.0003279835390946502,
1238
+ "loss": 0.7812,
1239
+ "step": 1025
1240
+ },
1241
+ {
1242
+ "epoch": 0.41,
1243
+ "learning_rate": 0.0003275720164609054,
1244
+ "loss": 0.7273,
1245
+ "step": 1030
1246
+ },
1247
+ {
1248
+ "epoch": 0.41,
1249
+ "learning_rate": 0.0003271604938271605,
1250
+ "loss": 0.7822,
1251
+ "step": 1035
1252
+ },
1253
+ {
1254
+ "epoch": 0.42,
1255
+ "learning_rate": 0.00032674897119341564,
1256
+ "loss": 0.7337,
1257
+ "step": 1040
1258
+ },
1259
+ {
1260
+ "epoch": 0.42,
1261
+ "learning_rate": 0.0003263374485596708,
1262
+ "loss": 0.7566,
1263
+ "step": 1045
1264
+ },
1265
+ {
1266
+ "epoch": 0.42,
1267
+ "learning_rate": 0.0003259259259259259,
1268
+ "loss": 0.7377,
1269
+ "step": 1050
1270
+ },
1271
+ {
1272
+ "epoch": 0.42,
1273
+ "learning_rate": 0.00032551440329218106,
1274
+ "loss": 0.7856,
1275
+ "step": 1055
1276
+ },
1277
+ {
1278
+ "epoch": 0.42,
1279
+ "learning_rate": 0.0003251028806584362,
1280
+ "loss": 0.7981,
1281
+ "step": 1060
1282
+ },
1283
+ {
1284
+ "epoch": 0.43,
1285
+ "learning_rate": 0.0003246913580246914,
1286
+ "loss": 0.7505,
1287
+ "step": 1065
1288
+ },
1289
+ {
1290
+ "epoch": 0.43,
1291
+ "learning_rate": 0.0003242798353909465,
1292
+ "loss": 0.7549,
1293
+ "step": 1070
1294
+ },
1295
+ {
1296
+ "epoch": 0.43,
1297
+ "learning_rate": 0.00032386831275720164,
1298
+ "loss": 0.7306,
1299
+ "step": 1075
1300
+ },
1301
+ {
1302
+ "epoch": 0.43,
1303
+ "learning_rate": 0.0003234567901234568,
1304
+ "loss": 0.7343,
1305
+ "step": 1080
1306
+ },
1307
+ {
1308
+ "epoch": 0.43,
1309
+ "learning_rate": 0.0003230452674897119,
1310
+ "loss": 0.738,
1311
+ "step": 1085
1312
+ },
1313
+ {
1314
+ "epoch": 0.44,
1315
+ "learning_rate": 0.00032263374485596707,
1316
+ "loss": 0.7655,
1317
+ "step": 1090
1318
+ },
1319
+ {
1320
+ "epoch": 0.44,
1321
+ "learning_rate": 0.0003222222222222222,
1322
+ "loss": 0.7706,
1323
+ "step": 1095
1324
+ },
1325
+ {
1326
+ "epoch": 0.44,
1327
+ "learning_rate": 0.0003218106995884774,
1328
+ "loss": 0.7512,
1329
+ "step": 1100
1330
+ },
1331
+ {
1332
+ "epoch": 0.44,
1333
+ "learning_rate": 0.00032139917695473254,
1334
+ "loss": 0.7549,
1335
+ "step": 1105
1336
+ },
1337
+ {
1338
+ "epoch": 0.44,
1339
+ "learning_rate": 0.0003209876543209877,
1340
+ "loss": 0.7839,
1341
+ "step": 1110
1342
+ },
1343
+ {
1344
+ "epoch": 0.45,
1345
+ "learning_rate": 0.0003205761316872428,
1346
+ "loss": 0.7511,
1347
+ "step": 1115
1348
+ },
1349
+ {
1350
+ "epoch": 0.45,
1351
+ "learning_rate": 0.00032016460905349796,
1352
+ "loss": 0.769,
1353
+ "step": 1120
1354
+ },
1355
+ {
1356
+ "epoch": 0.45,
1357
+ "learning_rate": 0.0003197530864197531,
1358
+ "loss": 0.7685,
1359
+ "step": 1125
1360
+ },
1361
+ {
1362
+ "epoch": 0.45,
1363
+ "learning_rate": 0.0003193415637860083,
1364
+ "loss": 0.7489,
1365
+ "step": 1130
1366
+ },
1367
+ {
1368
+ "epoch": 0.45,
1369
+ "learning_rate": 0.0003189300411522634,
1370
+ "loss": 0.808,
1371
+ "step": 1135
1372
+ },
1373
+ {
1374
+ "epoch": 0.46,
1375
+ "learning_rate": 0.00031851851851851854,
1376
+ "loss": 0.7654,
1377
+ "step": 1140
1378
+ },
1379
+ {
1380
+ "epoch": 0.46,
1381
+ "learning_rate": 0.0003181069958847737,
1382
+ "loss": 0.7845,
1383
+ "step": 1145
1384
+ },
1385
+ {
1386
+ "epoch": 0.46,
1387
+ "learning_rate": 0.00031769547325102886,
1388
+ "loss": 0.7886,
1389
+ "step": 1150
1390
+ },
1391
+ {
1392
+ "epoch": 0.46,
1393
+ "learning_rate": 0.00031728395061728396,
1394
+ "loss": 0.7318,
1395
+ "step": 1155
1396
+ },
1397
+ {
1398
+ "epoch": 0.46,
1399
+ "learning_rate": 0.0003168724279835391,
1400
+ "loss": 0.7231,
1401
+ "step": 1160
1402
+ },
1403
+ {
1404
+ "epoch": 0.47,
1405
+ "learning_rate": 0.0003164609053497943,
1406
+ "loss": 0.7471,
1407
+ "step": 1165
1408
+ },
1409
+ {
1410
+ "epoch": 0.47,
1411
+ "learning_rate": 0.0003160493827160494,
1412
+ "loss": 0.7424,
1413
+ "step": 1170
1414
+ },
1415
+ {
1416
+ "epoch": 0.47,
1417
+ "learning_rate": 0.00031563786008230454,
1418
+ "loss": 0.7249,
1419
+ "step": 1175
1420
+ },
1421
+ {
1422
+ "epoch": 0.47,
1423
+ "learning_rate": 0.0003152263374485597,
1424
+ "loss": 0.7419,
1425
+ "step": 1180
1426
+ },
1427
+ {
1428
+ "epoch": 0.47,
1429
+ "learning_rate": 0.00031481481481481486,
1430
+ "loss": 0.7567,
1431
+ "step": 1185
1432
+ },
1433
+ {
1434
+ "epoch": 0.48,
1435
+ "learning_rate": 0.00031440329218106997,
1436
+ "loss": 0.7707,
1437
+ "step": 1190
1438
+ },
1439
+ {
1440
+ "epoch": 0.48,
1441
+ "learning_rate": 0.0003139917695473251,
1442
+ "loss": 0.7473,
1443
+ "step": 1195
1444
+ },
1445
+ {
1446
+ "epoch": 0.48,
1447
+ "learning_rate": 0.0003135802469135803,
1448
+ "loss": 0.7222,
1449
+ "step": 1200
1450
+ },
1451
+ {
1452
+ "epoch": 0.48,
1453
+ "learning_rate": 0.0003131687242798354,
1454
+ "loss": 0.7383,
1455
+ "step": 1205
1456
+ },
1457
+ {
1458
+ "epoch": 0.48,
1459
+ "learning_rate": 0.00031275720164609055,
1460
+ "loss": 0.7712,
1461
+ "step": 1210
1462
+ },
1463
+ {
1464
+ "epoch": 0.48,
1465
+ "learning_rate": 0.0003123456790123457,
1466
+ "loss": 0.7602,
1467
+ "step": 1215
1468
+ },
1469
+ {
1470
+ "epoch": 0.49,
1471
+ "learning_rate": 0.0003119341563786008,
1472
+ "loss": 0.7741,
1473
+ "step": 1220
1474
+ },
1475
+ {
1476
+ "epoch": 0.49,
1477
+ "learning_rate": 0.00031152263374485597,
1478
+ "loss": 0.7428,
1479
+ "step": 1225
1480
+ },
1481
+ {
1482
+ "epoch": 0.49,
1483
+ "learning_rate": 0.0003111111111111111,
1484
+ "loss": 0.7605,
1485
+ "step": 1230
1486
+ },
1487
+ {
1488
+ "epoch": 0.49,
1489
+ "learning_rate": 0.0003106995884773663,
1490
+ "loss": 0.7255,
1491
+ "step": 1235
1492
+ },
1493
+ {
1494
+ "epoch": 0.49,
1495
+ "learning_rate": 0.0003102880658436214,
1496
+ "loss": 0.7468,
1497
+ "step": 1240
1498
+ },
1499
+ {
1500
+ "epoch": 0.5,
1501
+ "learning_rate": 0.00030987654320987655,
1502
+ "loss": 0.7961,
1503
+ "step": 1245
1504
+ },
1505
+ {
1506
+ "epoch": 0.5,
1507
+ "learning_rate": 0.0003094650205761317,
1508
+ "loss": 0.7208,
1509
+ "step": 1250
1510
+ },
1511
+ {
1512
+ "epoch": 0.5,
1513
+ "learning_rate": 0.0003090534979423868,
1514
+ "loss": 0.7331,
1515
+ "step": 1255
1516
+ },
1517
+ {
1518
+ "epoch": 0.5,
1519
+ "learning_rate": 0.00030864197530864197,
1520
+ "loss": 0.7371,
1521
+ "step": 1260
1522
+ },
1523
+ {
1524
+ "epoch": 0.5,
1525
+ "learning_rate": 0.00030823045267489713,
1526
+ "loss": 0.7206,
1527
+ "step": 1265
1528
+ },
1529
+ {
1530
+ "epoch": 0.51,
1531
+ "learning_rate": 0.0003078189300411523,
1532
+ "loss": 0.7617,
1533
+ "step": 1270
1534
+ },
1535
+ {
1536
+ "epoch": 0.51,
1537
+ "learning_rate": 0.0003074074074074074,
1538
+ "loss": 0.7652,
1539
+ "step": 1275
1540
+ },
1541
+ {
1542
+ "epoch": 0.51,
1543
+ "learning_rate": 0.00030699588477366255,
1544
+ "loss": 0.7635,
1545
+ "step": 1280
1546
+ },
1547
+ {
1548
+ "epoch": 0.51,
1549
+ "learning_rate": 0.0003065843621399177,
1550
+ "loss": 0.7445,
1551
+ "step": 1285
1552
+ },
1553
+ {
1554
+ "epoch": 0.51,
1555
+ "learning_rate": 0.0003061728395061728,
1556
+ "loss": 0.7717,
1557
+ "step": 1290
1558
+ },
1559
+ {
1560
+ "epoch": 0.52,
1561
+ "learning_rate": 0.00030576131687242797,
1562
+ "loss": 0.7535,
1563
+ "step": 1295
1564
+ },
1565
+ {
1566
+ "epoch": 0.52,
1567
+ "learning_rate": 0.00030534979423868313,
1568
+ "loss": 0.7677,
1569
+ "step": 1300
1570
+ },
1571
+ {
1572
+ "epoch": 0.52,
1573
+ "learning_rate": 0.0003049382716049383,
1574
+ "loss": 0.8131,
1575
+ "step": 1305
1576
+ },
1577
+ {
1578
+ "epoch": 0.52,
1579
+ "learning_rate": 0.00030452674897119345,
1580
+ "loss": 0.7754,
1581
+ "step": 1310
1582
+ },
1583
+ {
1584
+ "epoch": 0.52,
1585
+ "learning_rate": 0.00030411522633744855,
1586
+ "loss": 0.76,
1587
+ "step": 1315
1588
+ },
1589
+ {
1590
+ "epoch": 0.53,
1591
+ "learning_rate": 0.0003037037037037037,
1592
+ "loss": 0.7558,
1593
+ "step": 1320
1594
+ },
1595
+ {
1596
+ "epoch": 0.53,
1597
+ "learning_rate": 0.00030329218106995887,
1598
+ "loss": 0.7604,
1599
+ "step": 1325
1600
+ },
1601
+ {
1602
+ "epoch": 0.53,
1603
+ "learning_rate": 0.000302880658436214,
1604
+ "loss": 0.7716,
1605
+ "step": 1330
1606
+ },
1607
+ {
1608
+ "epoch": 0.53,
1609
+ "learning_rate": 0.0003024691358024692,
1610
+ "loss": 0.7669,
1611
+ "step": 1335
1612
+ },
1613
+ {
1614
+ "epoch": 0.53,
1615
+ "learning_rate": 0.0003020576131687243,
1616
+ "loss": 0.7469,
1617
+ "step": 1340
1618
+ },
1619
+ {
1620
+ "epoch": 0.54,
1621
+ "learning_rate": 0.00030164609053497945,
1622
+ "loss": 0.7511,
1623
+ "step": 1345
1624
+ },
1625
+ {
1626
+ "epoch": 0.54,
1627
+ "learning_rate": 0.0003012345679012346,
1628
+ "loss": 0.7483,
1629
+ "step": 1350
1630
+ },
1631
+ {
1632
+ "epoch": 0.54,
1633
+ "learning_rate": 0.00030082304526748976,
1634
+ "loss": 0.7509,
1635
+ "step": 1355
1636
+ },
1637
+ {
1638
+ "epoch": 0.54,
1639
+ "learning_rate": 0.00030041152263374487,
1640
+ "loss": 0.7249,
1641
+ "step": 1360
1642
+ },
1643
+ {
1644
+ "epoch": 0.54,
1645
+ "learning_rate": 0.00030000000000000003,
1646
+ "loss": 0.7289,
1647
+ "step": 1365
1648
+ },
1649
+ {
1650
+ "epoch": 0.55,
1651
+ "learning_rate": 0.0002995884773662552,
1652
+ "loss": 0.7605,
1653
+ "step": 1370
1654
+ },
1655
+ {
1656
+ "epoch": 0.55,
1657
+ "learning_rate": 0.0002991769547325103,
1658
+ "loss": 0.7185,
1659
+ "step": 1375
1660
+ },
1661
+ {
1662
+ "epoch": 0.55,
1663
+ "learning_rate": 0.00029876543209876545,
1664
+ "loss": 0.6974,
1665
+ "step": 1380
1666
+ },
1667
+ {
1668
+ "epoch": 0.55,
1669
+ "learning_rate": 0.0002983539094650206,
1670
+ "loss": 0.7234,
1671
+ "step": 1385
1672
+ },
1673
+ {
1674
+ "epoch": 0.55,
1675
+ "learning_rate": 0.00029794238683127577,
1676
+ "loss": 0.7506,
1677
+ "step": 1390
1678
+ },
1679
+ {
1680
+ "epoch": 0.56,
1681
+ "learning_rate": 0.00029753086419753087,
1682
+ "loss": 0.7524,
1683
+ "step": 1395
1684
+ },
1685
+ {
1686
+ "epoch": 0.56,
1687
+ "learning_rate": 0.00029711934156378603,
1688
+ "loss": 0.7641,
1689
+ "step": 1400
1690
+ },
1691
+ {
1692
+ "epoch": 0.56,
1693
+ "learning_rate": 0.0002967078189300412,
1694
+ "loss": 0.6967,
1695
+ "step": 1405
1696
+ },
1697
+ {
1698
+ "epoch": 0.56,
1699
+ "learning_rate": 0.0002962962962962963,
1700
+ "loss": 0.735,
1701
+ "step": 1410
1702
+ },
1703
+ {
1704
+ "epoch": 0.56,
1705
+ "learning_rate": 0.00029588477366255145,
1706
+ "loss": 0.7685,
1707
+ "step": 1415
1708
+ },
1709
+ {
1710
+ "epoch": 0.57,
1711
+ "learning_rate": 0.0002954732510288066,
1712
+ "loss": 0.758,
1713
+ "step": 1420
1714
+ },
1715
+ {
1716
+ "epoch": 0.57,
1717
+ "learning_rate": 0.0002950617283950617,
1718
+ "loss": 0.763,
1719
+ "step": 1425
1720
+ },
1721
+ {
1722
+ "epoch": 0.57,
1723
+ "learning_rate": 0.00029465020576131687,
1724
+ "loss": 0.712,
1725
+ "step": 1430
1726
+ },
1727
+ {
1728
+ "epoch": 0.57,
1729
+ "learning_rate": 0.00029423868312757203,
1730
+ "loss": 0.7236,
1731
+ "step": 1435
1732
+ },
1733
+ {
1734
+ "epoch": 0.57,
1735
+ "learning_rate": 0.0002938271604938272,
1736
+ "loss": 0.7732,
1737
+ "step": 1440
1738
+ },
1739
+ {
1740
+ "epoch": 0.58,
1741
+ "learning_rate": 0.0002934156378600823,
1742
+ "loss": 0.7689,
1743
+ "step": 1445
1744
+ },
1745
+ {
1746
+ "epoch": 0.58,
1747
+ "learning_rate": 0.00029300411522633745,
1748
+ "loss": 0.7352,
1749
+ "step": 1450
1750
+ },
1751
+ {
1752
+ "epoch": 0.58,
1753
+ "learning_rate": 0.0002925925925925926,
1754
+ "loss": 0.7711,
1755
+ "step": 1455
1756
+ },
1757
+ {
1758
+ "epoch": 0.58,
1759
+ "learning_rate": 0.0002921810699588477,
1760
+ "loss": 0.7549,
1761
+ "step": 1460
1762
+ },
1763
+ {
1764
+ "epoch": 0.58,
1765
+ "learning_rate": 0.0002917695473251029,
1766
+ "loss": 0.7804,
1767
+ "step": 1465
1768
+ },
1769
+ {
1770
+ "epoch": 0.59,
1771
+ "learning_rate": 0.00029135802469135803,
1772
+ "loss": 0.7478,
1773
+ "step": 1470
1774
+ },
1775
+ {
1776
+ "epoch": 0.59,
1777
+ "learning_rate": 0.0002909465020576132,
1778
+ "loss": 0.7801,
1779
+ "step": 1475
1780
+ },
1781
+ {
1782
+ "epoch": 0.59,
1783
+ "learning_rate": 0.0002905349794238683,
1784
+ "loss": 0.7544,
1785
+ "step": 1480
1786
+ },
1787
+ {
1788
+ "epoch": 0.59,
1789
+ "learning_rate": 0.00029012345679012345,
1790
+ "loss": 0.7546,
1791
+ "step": 1485
1792
+ },
1793
+ {
1794
+ "epoch": 0.59,
1795
+ "learning_rate": 0.0002897119341563786,
1796
+ "loss": 0.7648,
1797
+ "step": 1490
1798
+ },
1799
+ {
1800
+ "epoch": 0.6,
1801
+ "learning_rate": 0.0002893004115226337,
1802
+ "loss": 0.7468,
1803
+ "step": 1495
1804
+ },
1805
+ {
1806
+ "epoch": 0.6,
1807
+ "learning_rate": 0.0002888888888888889,
1808
+ "loss": 0.7434,
1809
+ "step": 1500
1810
+ }
1811
+ ],
1812
+ "logging_steps": 5,
1813
+ "max_steps": 5010,
1814
+ "num_input_tokens_seen": 0,
1815
+ "num_train_epochs": 2,
1816
+ "save_steps": 500,
1817
+ "total_flos": 6.041910864582279e+18,
1818
+ "train_batch_size": 1,
1819
+ "trial_name": null,
1820
+ "trial_params": null
1821
+ }
save_lora_instruct_r8_4e4_s11_1/checkpoint-1500/training_args.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:43458f4cf6aeb211c730b848f93ab15f483827c314fb4dc1e79dd1f658b7dbc8
3
+ size 5944
save_lora_instruct_r8_4e4_s11_1/checkpoint-1500/zero_to_fp32.py ADDED
@@ -0,0 +1,587 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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):
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
+ elif zero_stage == 3:
216
+ return _get_fp32_state_dict_from_zero3_checkpoint(world_size, fp32_flat_groups, zero_model_states)
217
+
218
+
219
+ def _zero2_merge_frozen_params(state_dict, zero_model_states):
220
+ if zero_model_states[0].frozen_param_shapes is None or len(zero_model_states[0].frozen_param_shapes) == 0:
221
+ return
222
+
223
+ frozen_param_shapes = zero_model_states[0].frozen_param_shapes
224
+ frozen_param_fragments = zero_model_states[0].frozen_param_fragments
225
+
226
+ if debug:
227
+ num_elem = sum(s.numel() for s in frozen_param_shapes.values())
228
+ print(f'rank 0: {FROZEN_PARAM_SHAPES}.numel = {num_elem}')
229
+
230
+ wanted_params = len(frozen_param_shapes)
231
+ wanted_numel = sum(s.numel() for s in frozen_param_shapes.values())
232
+ avail_numel = sum([p.numel() for p in frozen_param_fragments.values()])
233
+ print(f'Frozen params: Have {avail_numel} numels to process.')
234
+ print(f'Frozen params: Need {wanted_numel} numels in {wanted_params} params')
235
+
236
+ total_params = 0
237
+ total_numel = 0
238
+ for name, shape in frozen_param_shapes.items():
239
+ total_params += 1
240
+ unpartitioned_numel = shape.numel()
241
+ total_numel += unpartitioned_numel
242
+
243
+ state_dict[name] = frozen_param_fragments[name]
244
+
245
+ if debug:
246
+ print(f"{name} full shape: {shape} unpartitioned numel {unpartitioned_numel} ")
247
+
248
+ print(f"Reconstructed Frozen fp32 state dict with {total_params} params {total_numel} elements")
249
+
250
+
251
+ def _zero2_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states):
252
+ param_shapes = zero_model_states[0].param_shapes
253
+
254
+ # Reconstruction protocol:
255
+ #
256
+ # XXX: document this
257
+
258
+ if debug:
259
+ for i in range(world_size):
260
+ for j in range(len(fp32_flat_groups[0])):
261
+ print(f"{FP32_FLAT_GROUPS}[{i}][{j}].shape={fp32_flat_groups[i][j].shape}")
262
+
263
+ # XXX: memory usage doubles here (zero2)
264
+ num_param_groups = len(fp32_flat_groups[0])
265
+ merged_single_partition_of_fp32_groups = []
266
+ for i in range(num_param_groups):
267
+ merged_partitions = [sd[i] for sd in fp32_flat_groups]
268
+ full_single_fp32_vector = torch.cat(merged_partitions, 0)
269
+ merged_single_partition_of_fp32_groups.append(full_single_fp32_vector)
270
+ avail_numel = sum(
271
+ [full_single_fp32_vector.numel() for full_single_fp32_vector in merged_single_partition_of_fp32_groups])
272
+
273
+ if debug:
274
+ wanted_params = sum([len(shapes) for shapes in param_shapes])
275
+ wanted_numel = sum([sum(shape.numel() for shape in shapes.values()) for shapes in param_shapes])
276
+ # not asserting if there is a mismatch due to possible padding
277
+ print(f"Have {avail_numel} numels to process.")
278
+ print(f"Need {wanted_numel} numels in {wanted_params} params.")
279
+
280
+ # params
281
+ # XXX: for huge models that can't fit into the host's RAM we will have to recode this to support
282
+ # out-of-core computing solution
283
+ total_numel = 0
284
+ total_params = 0
285
+ for shapes, full_single_fp32_vector in zip(param_shapes, merged_single_partition_of_fp32_groups):
286
+ offset = 0
287
+ avail_numel = full_single_fp32_vector.numel()
288
+ for name, shape in shapes.items():
289
+
290
+ unpartitioned_numel = shape.numel()
291
+ total_numel += unpartitioned_numel
292
+ total_params += 1
293
+
294
+ if debug:
295
+ print(f"{name} full shape: {shape} unpartitioned numel {unpartitioned_numel} ")
296
+ state_dict[name] = full_single_fp32_vector.narrow(0, offset, unpartitioned_numel).view(shape)
297
+ offset += unpartitioned_numel
298
+
299
+ # Z2 started to align to 2*world_size to improve nccl performance. Therefore both offset and
300
+ # avail_numel can differ by anywhere between 0..2*world_size. Due to two unrelated complex
301
+ # paddings performed in the code it's almost impossible to predict the exact numbers w/o the
302
+ # live optimizer object, so we are checking that the numbers are within the right range
303
+ align_to = 2 * world_size
304
+
305
+ def zero2_align(x):
306
+ return align_to * math.ceil(x / align_to)
307
+
308
+ if debug:
309
+ print(f"original offset={offset}, avail_numel={avail_numel}")
310
+
311
+ offset = zero2_align(offset)
312
+ avail_numel = zero2_align(avail_numel)
313
+
314
+ if debug:
315
+ print(f"aligned offset={offset}, avail_numel={avail_numel}")
316
+
317
+ # Sanity check
318
+ if offset != avail_numel:
319
+ raise ValueError(f"consumed {offset} numels out of {avail_numel} - something is wrong")
320
+
321
+ print(f"Reconstructed fp32 state dict with {total_params} params {total_numel} elements")
322
+
323
+
324
+ def _get_fp32_state_dict_from_zero2_checkpoint(world_size, fp32_flat_groups, zero_model_states):
325
+ state_dict = OrderedDict()
326
+
327
+ # buffers
328
+ buffers = zero_model_states[0].buffers
329
+ state_dict.update(buffers)
330
+ if debug:
331
+ print(f"added {len(buffers)} buffers")
332
+
333
+ _zero2_merge_frozen_params(state_dict, zero_model_states)
334
+
335
+ _zero2_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states)
336
+
337
+ # recover shared parameters
338
+ for pair in zero_model_states[0].shared_params:
339
+ if pair[1] in state_dict:
340
+ state_dict[pair[0]] = state_dict[pair[1]]
341
+
342
+ return state_dict
343
+
344
+
345
+ def zero3_partitioned_param_info(unpartitioned_numel, world_size):
346
+ remainder = unpartitioned_numel % world_size
347
+ padding_numel = (world_size - remainder) if remainder else 0
348
+ partitioned_numel = math.ceil(unpartitioned_numel / world_size)
349
+ return partitioned_numel, padding_numel
350
+
351
+
352
+ def _zero3_merge_frozen_params(state_dict, world_size, zero_model_states):
353
+ if zero_model_states[0].frozen_param_shapes is None or len(zero_model_states[0].frozen_param_shapes) == 0:
354
+ return
355
+
356
+ if debug:
357
+ for i in range(world_size):
358
+ num_elem = sum(s.numel() for s in zero_model_states[i].frozen_param_fragments.values())
359
+ print(f'rank {i}: {FROZEN_PARAM_SHAPES}.numel = {num_elem}')
360
+
361
+ frozen_param_shapes = zero_model_states[0].frozen_param_shapes
362
+ wanted_params = len(frozen_param_shapes)
363
+ wanted_numel = sum(s.numel() for s in frozen_param_shapes.values())
364
+ avail_numel = sum([p.numel() for p in zero_model_states[0].frozen_param_fragments.values()]) * world_size
365
+ print(f'Frozen params: Have {avail_numel} numels to process.')
366
+ print(f'Frozen params: Need {wanted_numel} numels in {wanted_params} params')
367
+
368
+ total_params = 0
369
+ total_numel = 0
370
+ for name, shape in zero_model_states[0].frozen_param_shapes.items():
371
+ total_params += 1
372
+ unpartitioned_numel = shape.numel()
373
+ total_numel += unpartitioned_numel
374
+
375
+ param_frags = tuple(model_state.frozen_param_fragments[name] for model_state in zero_model_states)
376
+ state_dict[name] = torch.cat(param_frags, 0).narrow(0, 0, unpartitioned_numel).view(shape)
377
+
378
+ partitioned_numel, partitioned_padding_numel = zero3_partitioned_param_info(unpartitioned_numel, world_size)
379
+
380
+ if debug:
381
+ print(
382
+ f"Frozen params: {total_params} {name} full shape: {shape} partition0 numel={partitioned_numel} partitioned_padding_numel={partitioned_padding_numel}"
383
+ )
384
+
385
+ print(f"Reconstructed Frozen fp32 state dict with {total_params} params {total_numel} elements")
386
+
387
+
388
+ def _zero3_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states):
389
+ param_shapes = zero_model_states[0].param_shapes
390
+ avail_numel = fp32_flat_groups[0].numel() * world_size
391
+ # Reconstruction protocol: For zero3 we need to zip the partitions together at boundary of each
392
+ # param, re-consolidating each param, while dealing with padding if any
393
+
394
+ # merge list of dicts, preserving order
395
+ param_shapes = {k: v for d in param_shapes for k, v in d.items()}
396
+
397
+ if debug:
398
+ for i in range(world_size):
399
+ print(f"{FP32_FLAT_GROUPS}[{i}].shape={fp32_flat_groups[i].shape}")
400
+
401
+ wanted_params = len(param_shapes)
402
+ wanted_numel = sum(shape.numel() for shape in param_shapes.values())
403
+ # not asserting if there is a mismatch due to possible padding
404
+ avail_numel = fp32_flat_groups[0].numel() * world_size
405
+ print(f"Trainable params: Have {avail_numel} numels to process.")
406
+ print(f"Trainable params: Need {wanted_numel} numels in {wanted_params} params.")
407
+
408
+ # params
409
+ # XXX: for huge models that can't fit into the host's RAM we will have to recode this to support
410
+ # out-of-core computing solution
411
+ offset = 0
412
+ total_numel = 0
413
+ total_params = 0
414
+ for name, shape in param_shapes.items():
415
+
416
+ unpartitioned_numel = shape.numel()
417
+ total_numel += unpartitioned_numel
418
+ total_params += 1
419
+
420
+ partitioned_numel, partitioned_padding_numel = zero3_partitioned_param_info(unpartitioned_numel, world_size)
421
+
422
+ if debug:
423
+ print(
424
+ f"Trainable params: {total_params} {name} full shape: {shape} partition0 numel={partitioned_numel} partitioned_padding_numel={partitioned_padding_numel}"
425
+ )
426
+
427
+ # XXX: memory usage doubles here
428
+ state_dict[name] = torch.cat(
429
+ tuple(fp32_flat_groups[i].narrow(0, offset, partitioned_numel) for i in range(world_size)),
430
+ 0).narrow(0, 0, unpartitioned_numel).view(shape)
431
+ offset += partitioned_numel
432
+
433
+ offset *= world_size
434
+
435
+ # Sanity check
436
+ if offset != avail_numel:
437
+ raise ValueError(f"consumed {offset} numels out of {avail_numel} - something is wrong")
438
+
439
+ print(f"Reconstructed Trainable fp32 state dict with {total_params} params {total_numel} elements")
440
+
441
+
442
+ def _get_fp32_state_dict_from_zero3_checkpoint(world_size, fp32_flat_groups, zero_model_states):
443
+ state_dict = OrderedDict()
444
+
445
+ # buffers
446
+ buffers = zero_model_states[0].buffers
447
+ state_dict.update(buffers)
448
+ if debug:
449
+ print(f"added {len(buffers)} buffers")
450
+
451
+ _zero3_merge_frozen_params(state_dict, world_size, zero_model_states)
452
+
453
+ _zero3_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states)
454
+
455
+ # recover shared parameters
456
+ for pair in zero_model_states[0].shared_params:
457
+ if pair[1] in state_dict:
458
+ state_dict[pair[0]] = state_dict[pair[1]]
459
+
460
+ return state_dict
461
+
462
+
463
+ def get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir, tag=None):
464
+ """
465
+ Convert ZeRO 2 or 3 checkpoint into a single fp32 consolidated state_dict that can be loaded with
466
+ ``load_state_dict()`` and used for training without DeepSpeed or shared with others, for example
467
+ via a model hub.
468
+
469
+ Args:
470
+ - ``checkpoint_dir``: path to the desired checkpoint folder
471
+ - ``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``
472
+
473
+ Returns:
474
+ - pytorch ``state_dict``
475
+
476
+ Note: this approach may not work if your application doesn't have sufficient free CPU memory and
477
+ you may need to use the offline approach using the ``zero_to_fp32.py`` script that is saved with
478
+ the checkpoint.
479
+
480
+ A typical usage might be ::
481
+
482
+ from deepspeed.utils.zero_to_fp32 import get_fp32_state_dict_from_zero_checkpoint
483
+ # do the training and checkpoint saving
484
+ state_dict = get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir) # already on cpu
485
+ model = model.cpu() # move to cpu
486
+ model.load_state_dict(state_dict)
487
+ # submit to model hub or save the model to share with others
488
+
489
+ In this example the ``model`` will no longer be usable in the deepspeed context of the same
490
+ application. i.e. you will need to re-initialize the deepspeed engine, since
491
+ ``model.load_state_dict(state_dict)`` will remove all the deepspeed magic from it.
492
+
493
+ If you want it all done for you, use ``load_state_dict_from_zero_checkpoint`` instead.
494
+
495
+ """
496
+ if tag is None:
497
+ latest_path = os.path.join(checkpoint_dir, 'latest')
498
+ if os.path.isfile(latest_path):
499
+ with open(latest_path, 'r') as fd:
500
+ tag = fd.read().strip()
501
+ else:
502
+ raise ValueError(f"Unable to find 'latest' file at {latest_path}")
503
+
504
+ ds_checkpoint_dir = os.path.join(checkpoint_dir, tag)
505
+
506
+ if not os.path.isdir(ds_checkpoint_dir):
507
+ raise FileNotFoundError(f"Directory '{ds_checkpoint_dir}' doesn't exist")
508
+
509
+ return _get_fp32_state_dict_from_zero_checkpoint(ds_checkpoint_dir)
510
+
511
+
512
+ def convert_zero_checkpoint_to_fp32_state_dict(checkpoint_dir, output_file, tag=None):
513
+ """
514
+ Convert ZeRO 2 or 3 checkpoint into a single fp32 consolidated ``state_dict`` file that can be
515
+ loaded with ``torch.load(file)`` + ``load_state_dict()`` and used for training without DeepSpeed.
516
+
517
+ Args:
518
+ - ``checkpoint_dir``: path to the desired checkpoint folder. (one that contains the tag-folder, like ``global_step14``)
519
+ - ``output_file``: path to the pytorch fp32 state_dict output file (e.g. path/pytorch_model.bin)
520
+ - ``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``
521
+ """
522
+
523
+ state_dict = get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir, tag)
524
+ print(f"Saving fp32 state dict to {output_file}")
525
+ torch.save(state_dict, output_file)
526
+
527
+
528
+ def load_state_dict_from_zero_checkpoint(model, checkpoint_dir, tag=None):
529
+ """
530
+ 1. Put the provided model to cpu
531
+ 2. Convert ZeRO 2 or 3 checkpoint into a single fp32 consolidated ``state_dict``
532
+ 3. Load it into the provided model
533
+
534
+ Args:
535
+ - ``model``: the model object to update
536
+ - ``checkpoint_dir``: path to the desired checkpoint folder. (one that contains the tag-folder, like ``global_step14``)
537
+ - ``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``
538
+
539
+ Returns:
540
+ - ``model`: modified model
541
+
542
+ Make sure you have plenty of CPU memory available before you call this function. If you don't
543
+ have enough use the ``zero_to_fp32.py`` utility to do the conversion. You will find it
544
+ conveniently placed for you in the checkpoint folder.
545
+
546
+ A typical usage might be ::
547
+
548
+ from deepspeed.utils.zero_to_fp32 import load_state_dict_from_zero_checkpoint
549
+ model = load_state_dict_from_zero_checkpoint(trainer.model, checkpoint_dir)
550
+ # submit to model hub or save the model to share with others
551
+
552
+ Note, that once this was run, the ``model`` will no longer be usable in the deepspeed context
553
+ of the same application. i.e. you will need to re-initialize the deepspeed engine, since
554
+ ``model.load_state_dict(state_dict)`` will remove all the deepspeed magic from it.
555
+
556
+ """
557
+ logger.info(f"Extracting fp32 weights")
558
+ state_dict = get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir, tag)
559
+
560
+ logger.info(f"Overwriting model with fp32 weights")
561
+ model = model.cpu()
562
+ model.load_state_dict(state_dict, strict=False)
563
+
564
+ return model
565
+
566
+
567
+ if __name__ == "__main__":
568
+
569
+ parser = argparse.ArgumentParser()
570
+ parser.add_argument("checkpoint_dir",
571
+ type=str,
572
+ help="path to the desired checkpoint folder, e.g., path/checkpoint-12")
573
+ parser.add_argument(
574
+ "output_file",
575
+ type=str,
576
+ help="path to the pytorch fp32 state_dict output file (e.g. path/checkpoint-12/pytorch_model.bin)")
577
+ parser.add_argument("-t",
578
+ "--tag",
579
+ type=str,
580
+ default=None,
581
+ help="checkpoint tag used as a unique identifier for checkpoint. e.g., global_step1")
582
+ parser.add_argument("-d", "--debug", action='store_true', help="enable debug")
583
+ args = parser.parse_args()
584
+
585
+ debug = args.debug
586
+
587
+ convert_zero_checkpoint_to_fp32_state_dict(args.checkpoint_dir, args.output_file, tag=args.tag)
save_lora_instruct_r8_4e4_s11_1/checkpoint-2000/README.md ADDED
@@ -0,0 +1,202 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ base_model: meta-llama/Llama-2-7b-hf
3
+ library_name: peft
4
+ ---
5
+
6
+ # Model Card for Model ID
7
+
8
+ <!-- Provide a quick summary of what the model is/does. -->
9
+
10
+
11
+
12
+ ## Model Details
13
+
14
+ ### Model Description
15
+
16
+ <!-- Provide a longer summary of what this model is. -->
17
+
18
+
19
+
20
+ - **Developed by:** [More Information Needed]
21
+ - **Funded by [optional]:** [More Information Needed]
22
+ - **Shared by [optional]:** [More Information Needed]
23
+ - **Model type:** [More Information Needed]
24
+ - **Language(s) (NLP):** [More Information Needed]
25
+ - **License:** [More Information Needed]
26
+ - **Finetuned from model [optional]:** [More Information Needed]
27
+
28
+ ### Model Sources [optional]
29
+
30
+ <!-- Provide the basic links for the model. -->
31
+
32
+ - **Repository:** [More Information Needed]
33
+ - **Paper [optional]:** [More Information Needed]
34
+ - **Demo [optional]:** [More Information Needed]
35
+
36
+ ## Uses
37
+
38
+ <!-- Address questions around how the model is intended to be used, including the foreseeable users of the model and those affected by the model. -->
39
+
40
+ ### Direct Use
41
+
42
+ <!-- This section is for the model use without fine-tuning or plugging into a larger ecosystem/app. -->
43
+
44
+ [More Information Needed]
45
+
46
+ ### Downstream Use [optional]
47
+
48
+ <!-- This section is for the model use when fine-tuned for a task, or when plugged into a larger ecosystem/app -->
49
+
50
+ [More Information Needed]
51
+
52
+ ### Out-of-Scope Use
53
+
54
+ <!-- This section addresses misuse, malicious use, and uses that the model will not work well for. -->
55
+
56
+ [More Information Needed]
57
+
58
+ ## Bias, Risks, and Limitations
59
+
60
+ <!-- This section is meant to convey both technical and sociotechnical limitations. -->
61
+
62
+ [More Information Needed]
63
+
64
+ ### Recommendations
65
+
66
+ <!-- This section is meant to convey recommendations with respect to the bias, risk, and technical limitations. -->
67
+
68
+ Users (both direct and downstream) should be made aware of the risks, biases and limitations of the model. More information needed for further recommendations.
69
+
70
+ ## How to Get Started with the Model
71
+
72
+ Use the code below to get started with the model.
73
+
74
+ [More Information Needed]
75
+
76
+ ## Training Details
77
+
78
+ ### Training Data
79
+
80
+ <!-- This should link to a Dataset Card, perhaps with a short stub of information on what the training data is all about as well as documentation related to data pre-processing or additional filtering. -->
81
+
82
+ [More Information Needed]
83
+
84
+ ### Training Procedure
85
+
86
+ <!-- This relates heavily to the Technical Specifications. Content here should link to that section when it is relevant to the training procedure. -->
87
+
88
+ #### Preprocessing [optional]
89
+
90
+ [More Information Needed]
91
+
92
+
93
+ #### Training Hyperparameters
94
+
95
+ - **Training regime:** [More Information Needed] <!--fp32, fp16 mixed precision, bf16 mixed precision, bf16 non-mixed precision, fp16 non-mixed precision, fp8 mixed precision -->
96
+
97
+ #### Speeds, Sizes, Times [optional]
98
+
99
+ <!-- This section provides information about throughput, start/end time, checkpoint size if relevant, etc. -->
100
+
101
+ [More Information Needed]
102
+
103
+ ## Evaluation
104
+
105
+ <!-- This section describes the evaluation protocols and provides the results. -->
106
+
107
+ ### Testing Data, Factors & Metrics
108
+
109
+ #### Testing Data
110
+
111
+ <!-- This should link to a Dataset Card if possible. -->
112
+
113
+ [More Information Needed]
114
+
115
+ #### Factors
116
+
117
+ <!-- These are the things the evaluation is disaggregating by, e.g., subpopulations or domains. -->
118
+
119
+ [More Information Needed]
120
+
121
+ #### Metrics
122
+
123
+ <!-- These are the evaluation metrics being used, ideally with a description of why. -->
124
+
125
+ [More Information Needed]
126
+
127
+ ### Results
128
+
129
+ [More Information Needed]
130
+
131
+ #### Summary
132
+
133
+
134
+
135
+ ## Model Examination [optional]
136
+
137
+ <!-- Relevant interpretability work for the model goes here -->
138
+
139
+ [More Information Needed]
140
+
141
+ ## Environmental Impact
142
+
143
+ <!-- Total emissions (in grams of CO2eq) and additional considerations, such as electricity usage, go here. Edit the suggested text below accordingly -->
144
+
145
+ Carbon emissions can be estimated using the [Machine Learning Impact calculator](https://mlco2.github.io/impact#compute) presented in [Lacoste et al. (2019)](https://arxiv.org/abs/1910.09700).
146
+
147
+ - **Hardware Type:** [More Information Needed]
148
+ - **Hours used:** [More Information Needed]
149
+ - **Cloud Provider:** [More Information Needed]
150
+ - **Compute Region:** [More Information Needed]
151
+ - **Carbon Emitted:** [More Information Needed]
152
+
153
+ ## Technical Specifications [optional]
154
+
155
+ ### Model Architecture and Objective
156
+
157
+ [More Information Needed]
158
+
159
+ ### Compute Infrastructure
160
+
161
+ [More Information Needed]
162
+
163
+ #### Hardware
164
+
165
+ [More Information Needed]
166
+
167
+ #### Software
168
+
169
+ [More Information Needed]
170
+
171
+ ## Citation [optional]
172
+
173
+ <!-- If there is a paper or blog post introducing the model, the APA and Bibtex information for that should go in this section. -->
174
+
175
+ **BibTeX:**
176
+
177
+ [More Information Needed]
178
+
179
+ **APA:**
180
+
181
+ [More Information Needed]
182
+
183
+ ## Glossary [optional]
184
+
185
+ <!-- If relevant, include terms and calculations in this section that can help readers understand the model or model card. -->
186
+
187
+ [More Information Needed]
188
+
189
+ ## More Information [optional]
190
+
191
+ [More Information Needed]
192
+
193
+ ## Model Card Authors [optional]
194
+
195
+ [More Information Needed]
196
+
197
+ ## Model Card Contact
198
+
199
+ [More Information Needed]
200
+ ### Framework versions
201
+
202
+ - PEFT 0.9.0
save_lora_instruct_r8_4e4_s11_1/checkpoint-2000/adapter_config.json ADDED
@@ -0,0 +1,35 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "alpha_pattern": {},
3
+ "auto_mapping": null,
4
+ "base_model_name_or_path": "meta-llama/Llama-2-7b-hf",
5
+ "bias": "none",
6
+ "fan_in_fan_out": false,
7
+ "inference_mode": true,
8
+ "init_lora_weights": true,
9
+ "layers_pattern": null,
10
+ "layers_to_transform": null,
11
+ "loftq_config": {},
12
+ "lora_alpha": 16,
13
+ "lora_dropout": 0.05,
14
+ "megatron_config": null,
15
+ "megatron_core": "megatron.core",
16
+ "modules_to_save": null,
17
+ "mora_type": 1,
18
+ "peft_type": "LORA",
19
+ "r": 8,
20
+ "rank_pattern": {},
21
+ "revision": null,
22
+ "target_modules": [
23
+ "q_proj",
24
+ "k_proj",
25
+ "v_proj",
26
+ "o_proj",
27
+ "gate_proj",
28
+ "down_proj",
29
+ "up_proj"
30
+ ],
31
+ "task_type": "CAUSAL_LM",
32
+ "use_dora": false,
33
+ "use_mora": false,
34
+ "use_rslora": false
35
+ }
save_lora_instruct_r8_4e4_s11_1/checkpoint-2000/adapter_model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:9671d2c504106bbfaae3fa086e35ace2d4b25fbf85e5c7020f54b5677be0e97e
3
+ size 564342240
save_lora_instruct_r8_4e4_s11_1/checkpoint-2000/global_step2000/bf16_zero_pp_rank_0_mp_rank_00_optim_states.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:3933686a0f0a60d101b1032c5bef91c6fceaa0fe41c7f40320e09c7faa2cec0c
3
+ size 239914224
save_lora_instruct_r8_4e4_s11_1/checkpoint-2000/global_step2000/mp_rank_00_model_states.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:a4e1ac50aa58a138b91832747cb96f8f87afd194acf2a86a3da4b96105025c18
3
+ size 40303404
save_lora_instruct_r8_4e4_s11_1/checkpoint-2000/latest ADDED
@@ -0,0 +1 @@
 
 
1
+ global_step2000
save_lora_instruct_r8_4e4_s11_1/checkpoint-2000/rng_state.pth ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:120654c40ab07680b6e25c6f415f868d33c21d42ff816d413cf88a5c5793ca4b
3
+ size 14244
save_lora_instruct_r8_4e4_s11_1/checkpoint-2000/scheduler.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:26d324026b4b66cd9b8553682d39e90a564b56f31b1a487c65e1e5128f325560
3
+ size 1064
save_lora_instruct_r8_4e4_s11_1/checkpoint-2000/trainer_state.json ADDED
@@ -0,0 +1,2421 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "best_metric": null,
3
+ "best_model_checkpoint": null,
4
+ "epoch": 0.7983284997037453,
5
+ "eval_steps": 500,
6
+ "global_step": 2000,
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.0,
13
+ "learning_rate": 1.3333333333333333e-05,
14
+ "loss": 1.3798,
15
+ "step": 5
16
+ },
17
+ {
18
+ "epoch": 0.0,
19
+ "learning_rate": 2.6666666666666667e-05,
20
+ "loss": 1.3917,
21
+ "step": 10
22
+ },
23
+ {
24
+ "epoch": 0.01,
25
+ "learning_rate": 4e-05,
26
+ "loss": 1.2862,
27
+ "step": 15
28
+ },
29
+ {
30
+ "epoch": 0.01,
31
+ "learning_rate": 5.333333333333333e-05,
32
+ "loss": 1.2046,
33
+ "step": 20
34
+ },
35
+ {
36
+ "epoch": 0.01,
37
+ "learning_rate": 6.666666666666667e-05,
38
+ "loss": 1.0634,
39
+ "step": 25
40
+ },
41
+ {
42
+ "epoch": 0.01,
43
+ "learning_rate": 8e-05,
44
+ "loss": 1.0273,
45
+ "step": 30
46
+ },
47
+ {
48
+ "epoch": 0.01,
49
+ "learning_rate": 9.333333333333334e-05,
50
+ "loss": 1.0472,
51
+ "step": 35
52
+ },
53
+ {
54
+ "epoch": 0.02,
55
+ "learning_rate": 0.00010666666666666667,
56
+ "loss": 1.0301,
57
+ "step": 40
58
+ },
59
+ {
60
+ "epoch": 0.02,
61
+ "learning_rate": 0.00012,
62
+ "loss": 0.9335,
63
+ "step": 45
64
+ },
65
+ {
66
+ "epoch": 0.02,
67
+ "learning_rate": 0.00013333333333333334,
68
+ "loss": 0.921,
69
+ "step": 50
70
+ },
71
+ {
72
+ "epoch": 0.02,
73
+ "learning_rate": 0.00014666666666666666,
74
+ "loss": 0.9506,
75
+ "step": 55
76
+ },
77
+ {
78
+ "epoch": 0.02,
79
+ "learning_rate": 0.00016,
80
+ "loss": 0.8876,
81
+ "step": 60
82
+ },
83
+ {
84
+ "epoch": 0.03,
85
+ "learning_rate": 0.00017333333333333334,
86
+ "loss": 0.9335,
87
+ "step": 65
88
+ },
89
+ {
90
+ "epoch": 0.03,
91
+ "learning_rate": 0.0001866666666666667,
92
+ "loss": 0.8554,
93
+ "step": 70
94
+ },
95
+ {
96
+ "epoch": 0.03,
97
+ "learning_rate": 0.0002,
98
+ "loss": 0.8537,
99
+ "step": 75
100
+ },
101
+ {
102
+ "epoch": 0.03,
103
+ "learning_rate": 0.00021333333333333333,
104
+ "loss": 0.9033,
105
+ "step": 80
106
+ },
107
+ {
108
+ "epoch": 0.03,
109
+ "learning_rate": 0.00022666666666666668,
110
+ "loss": 0.8203,
111
+ "step": 85
112
+ },
113
+ {
114
+ "epoch": 0.04,
115
+ "learning_rate": 0.00024,
116
+ "loss": 0.8611,
117
+ "step": 90
118
+ },
119
+ {
120
+ "epoch": 0.04,
121
+ "learning_rate": 0.00025333333333333333,
122
+ "loss": 0.8303,
123
+ "step": 95
124
+ },
125
+ {
126
+ "epoch": 0.04,
127
+ "learning_rate": 0.0002666666666666667,
128
+ "loss": 0.8528,
129
+ "step": 100
130
+ },
131
+ {
132
+ "epoch": 0.04,
133
+ "learning_rate": 0.00028,
134
+ "loss": 0.8537,
135
+ "step": 105
136
+ },
137
+ {
138
+ "epoch": 0.04,
139
+ "learning_rate": 0.0002933333333333333,
140
+ "loss": 0.8286,
141
+ "step": 110
142
+ },
143
+ {
144
+ "epoch": 0.05,
145
+ "learning_rate": 0.0003066666666666667,
146
+ "loss": 0.8449,
147
+ "step": 115
148
+ },
149
+ {
150
+ "epoch": 0.05,
151
+ "learning_rate": 0.00032,
152
+ "loss": 0.8377,
153
+ "step": 120
154
+ },
155
+ {
156
+ "epoch": 0.05,
157
+ "learning_rate": 0.0003333333333333334,
158
+ "loss": 0.8419,
159
+ "step": 125
160
+ },
161
+ {
162
+ "epoch": 0.05,
163
+ "learning_rate": 0.00034666666666666667,
164
+ "loss": 0.8265,
165
+ "step": 130
166
+ },
167
+ {
168
+ "epoch": 0.05,
169
+ "learning_rate": 0.00036,
170
+ "loss": 0.8037,
171
+ "step": 135
172
+ },
173
+ {
174
+ "epoch": 0.06,
175
+ "learning_rate": 0.0003733333333333334,
176
+ "loss": 0.7924,
177
+ "step": 140
178
+ },
179
+ {
180
+ "epoch": 0.06,
181
+ "learning_rate": 0.00038666666666666667,
182
+ "loss": 0.8245,
183
+ "step": 145
184
+ },
185
+ {
186
+ "epoch": 0.06,
187
+ "learning_rate": 0.0004,
188
+ "loss": 0.8388,
189
+ "step": 150
190
+ },
191
+ {
192
+ "epoch": 0.06,
193
+ "learning_rate": 0.0003995884773662552,
194
+ "loss": 0.8066,
195
+ "step": 155
196
+ },
197
+ {
198
+ "epoch": 0.06,
199
+ "learning_rate": 0.0003991769547325103,
200
+ "loss": 0.8107,
201
+ "step": 160
202
+ },
203
+ {
204
+ "epoch": 0.07,
205
+ "learning_rate": 0.00039876543209876544,
206
+ "loss": 0.8005,
207
+ "step": 165
208
+ },
209
+ {
210
+ "epoch": 0.07,
211
+ "learning_rate": 0.0003983539094650206,
212
+ "loss": 0.7727,
213
+ "step": 170
214
+ },
215
+ {
216
+ "epoch": 0.07,
217
+ "learning_rate": 0.00039794238683127576,
218
+ "loss": 0.8276,
219
+ "step": 175
220
+ },
221
+ {
222
+ "epoch": 0.07,
223
+ "learning_rate": 0.00039753086419753086,
224
+ "loss": 0.8464,
225
+ "step": 180
226
+ },
227
+ {
228
+ "epoch": 0.07,
229
+ "learning_rate": 0.000397119341563786,
230
+ "loss": 0.8348,
231
+ "step": 185
232
+ },
233
+ {
234
+ "epoch": 0.08,
235
+ "learning_rate": 0.0003967078189300412,
236
+ "loss": 0.8228,
237
+ "step": 190
238
+ },
239
+ {
240
+ "epoch": 0.08,
241
+ "learning_rate": 0.0003962962962962963,
242
+ "loss": 0.8254,
243
+ "step": 195
244
+ },
245
+ {
246
+ "epoch": 0.08,
247
+ "learning_rate": 0.00039588477366255144,
248
+ "loss": 0.817,
249
+ "step": 200
250
+ },
251
+ {
252
+ "epoch": 0.08,
253
+ "learning_rate": 0.0003954732510288066,
254
+ "loss": 0.8365,
255
+ "step": 205
256
+ },
257
+ {
258
+ "epoch": 0.08,
259
+ "learning_rate": 0.0003950617283950617,
260
+ "loss": 0.793,
261
+ "step": 210
262
+ },
263
+ {
264
+ "epoch": 0.09,
265
+ "learning_rate": 0.00039465020576131686,
266
+ "loss": 0.8014,
267
+ "step": 215
268
+ },
269
+ {
270
+ "epoch": 0.09,
271
+ "learning_rate": 0.000394238683127572,
272
+ "loss": 0.8049,
273
+ "step": 220
274
+ },
275
+ {
276
+ "epoch": 0.09,
277
+ "learning_rate": 0.0003938271604938272,
278
+ "loss": 0.7841,
279
+ "step": 225
280
+ },
281
+ {
282
+ "epoch": 0.09,
283
+ "learning_rate": 0.0003934156378600823,
284
+ "loss": 0.7977,
285
+ "step": 230
286
+ },
287
+ {
288
+ "epoch": 0.09,
289
+ "learning_rate": 0.00039300411522633744,
290
+ "loss": 0.8299,
291
+ "step": 235
292
+ },
293
+ {
294
+ "epoch": 0.1,
295
+ "learning_rate": 0.0003925925925925926,
296
+ "loss": 0.7729,
297
+ "step": 240
298
+ },
299
+ {
300
+ "epoch": 0.1,
301
+ "learning_rate": 0.00039218106995884776,
302
+ "loss": 0.8082,
303
+ "step": 245
304
+ },
305
+ {
306
+ "epoch": 0.1,
307
+ "learning_rate": 0.0003917695473251029,
308
+ "loss": 0.8173,
309
+ "step": 250
310
+ },
311
+ {
312
+ "epoch": 0.1,
313
+ "learning_rate": 0.000391358024691358,
314
+ "loss": 0.8379,
315
+ "step": 255
316
+ },
317
+ {
318
+ "epoch": 0.1,
319
+ "learning_rate": 0.0003909465020576132,
320
+ "loss": 0.7962,
321
+ "step": 260
322
+ },
323
+ {
324
+ "epoch": 0.11,
325
+ "learning_rate": 0.00039053497942386834,
326
+ "loss": 0.8067,
327
+ "step": 265
328
+ },
329
+ {
330
+ "epoch": 0.11,
331
+ "learning_rate": 0.0003901234567901235,
332
+ "loss": 0.7915,
333
+ "step": 270
334
+ },
335
+ {
336
+ "epoch": 0.11,
337
+ "learning_rate": 0.00038971193415637866,
338
+ "loss": 0.7905,
339
+ "step": 275
340
+ },
341
+ {
342
+ "epoch": 0.11,
343
+ "learning_rate": 0.00038930041152263376,
344
+ "loss": 0.7862,
345
+ "step": 280
346
+ },
347
+ {
348
+ "epoch": 0.11,
349
+ "learning_rate": 0.0003888888888888889,
350
+ "loss": 0.7709,
351
+ "step": 285
352
+ },
353
+ {
354
+ "epoch": 0.12,
355
+ "learning_rate": 0.0003884773662551441,
356
+ "loss": 0.7773,
357
+ "step": 290
358
+ },
359
+ {
360
+ "epoch": 0.12,
361
+ "learning_rate": 0.00038806584362139924,
362
+ "loss": 0.8068,
363
+ "step": 295
364
+ },
365
+ {
366
+ "epoch": 0.12,
367
+ "learning_rate": 0.00038765432098765434,
368
+ "loss": 0.7962,
369
+ "step": 300
370
+ },
371
+ {
372
+ "epoch": 0.12,
373
+ "learning_rate": 0.0003872427983539095,
374
+ "loss": 0.7894,
375
+ "step": 305
376
+ },
377
+ {
378
+ "epoch": 0.12,
379
+ "learning_rate": 0.00038683127572016466,
380
+ "loss": 0.7705,
381
+ "step": 310
382
+ },
383
+ {
384
+ "epoch": 0.13,
385
+ "learning_rate": 0.00038641975308641976,
386
+ "loss": 0.7882,
387
+ "step": 315
388
+ },
389
+ {
390
+ "epoch": 0.13,
391
+ "learning_rate": 0.0003860082304526749,
392
+ "loss": 0.7865,
393
+ "step": 320
394
+ },
395
+ {
396
+ "epoch": 0.13,
397
+ "learning_rate": 0.0003855967078189301,
398
+ "loss": 0.7939,
399
+ "step": 325
400
+ },
401
+ {
402
+ "epoch": 0.13,
403
+ "learning_rate": 0.0003851851851851852,
404
+ "loss": 0.7724,
405
+ "step": 330
406
+ },
407
+ {
408
+ "epoch": 0.13,
409
+ "learning_rate": 0.00038477366255144034,
410
+ "loss": 0.7771,
411
+ "step": 335
412
+ },
413
+ {
414
+ "epoch": 0.14,
415
+ "learning_rate": 0.0003843621399176955,
416
+ "loss": 0.7941,
417
+ "step": 340
418
+ },
419
+ {
420
+ "epoch": 0.14,
421
+ "learning_rate": 0.00038395061728395066,
422
+ "loss": 0.7822,
423
+ "step": 345
424
+ },
425
+ {
426
+ "epoch": 0.14,
427
+ "learning_rate": 0.00038353909465020577,
428
+ "loss": 0.8143,
429
+ "step": 350
430
+ },
431
+ {
432
+ "epoch": 0.14,
433
+ "learning_rate": 0.0003831275720164609,
434
+ "loss": 0.795,
435
+ "step": 355
436
+ },
437
+ {
438
+ "epoch": 0.14,
439
+ "learning_rate": 0.0003827160493827161,
440
+ "loss": 0.8049,
441
+ "step": 360
442
+ },
443
+ {
444
+ "epoch": 0.15,
445
+ "learning_rate": 0.0003823045267489712,
446
+ "loss": 0.8309,
447
+ "step": 365
448
+ },
449
+ {
450
+ "epoch": 0.15,
451
+ "learning_rate": 0.00038189300411522635,
452
+ "loss": 0.8314,
453
+ "step": 370
454
+ },
455
+ {
456
+ "epoch": 0.15,
457
+ "learning_rate": 0.0003814814814814815,
458
+ "loss": 0.801,
459
+ "step": 375
460
+ },
461
+ {
462
+ "epoch": 0.15,
463
+ "learning_rate": 0.00038106995884773666,
464
+ "loss": 0.8084,
465
+ "step": 380
466
+ },
467
+ {
468
+ "epoch": 0.15,
469
+ "learning_rate": 0.00038065843621399177,
470
+ "loss": 0.8129,
471
+ "step": 385
472
+ },
473
+ {
474
+ "epoch": 0.16,
475
+ "learning_rate": 0.0003802469135802469,
476
+ "loss": 0.7859,
477
+ "step": 390
478
+ },
479
+ {
480
+ "epoch": 0.16,
481
+ "learning_rate": 0.0003798353909465021,
482
+ "loss": 0.7874,
483
+ "step": 395
484
+ },
485
+ {
486
+ "epoch": 0.16,
487
+ "learning_rate": 0.0003794238683127572,
488
+ "loss": 0.7548,
489
+ "step": 400
490
+ },
491
+ {
492
+ "epoch": 0.16,
493
+ "learning_rate": 0.00037901234567901235,
494
+ "loss": 0.8092,
495
+ "step": 405
496
+ },
497
+ {
498
+ "epoch": 0.16,
499
+ "learning_rate": 0.0003786008230452675,
500
+ "loss": 0.8041,
501
+ "step": 410
502
+ },
503
+ {
504
+ "epoch": 0.17,
505
+ "learning_rate": 0.00037818930041152266,
506
+ "loss": 0.777,
507
+ "step": 415
508
+ },
509
+ {
510
+ "epoch": 0.17,
511
+ "learning_rate": 0.00037777777777777777,
512
+ "loss": 0.7699,
513
+ "step": 420
514
+ },
515
+ {
516
+ "epoch": 0.17,
517
+ "learning_rate": 0.00037736625514403293,
518
+ "loss": 0.781,
519
+ "step": 425
520
+ },
521
+ {
522
+ "epoch": 0.17,
523
+ "learning_rate": 0.0003769547325102881,
524
+ "loss": 0.7504,
525
+ "step": 430
526
+ },
527
+ {
528
+ "epoch": 0.17,
529
+ "learning_rate": 0.0003765432098765432,
530
+ "loss": 0.7974,
531
+ "step": 435
532
+ },
533
+ {
534
+ "epoch": 0.18,
535
+ "learning_rate": 0.00037613168724279835,
536
+ "loss": 0.7663,
537
+ "step": 440
538
+ },
539
+ {
540
+ "epoch": 0.18,
541
+ "learning_rate": 0.0003757201646090535,
542
+ "loss": 0.8013,
543
+ "step": 445
544
+ },
545
+ {
546
+ "epoch": 0.18,
547
+ "learning_rate": 0.00037530864197530867,
548
+ "loss": 0.7453,
549
+ "step": 450
550
+ },
551
+ {
552
+ "epoch": 0.18,
553
+ "learning_rate": 0.00037489711934156377,
554
+ "loss": 0.7425,
555
+ "step": 455
556
+ },
557
+ {
558
+ "epoch": 0.18,
559
+ "learning_rate": 0.00037448559670781893,
560
+ "loss": 0.7582,
561
+ "step": 460
562
+ },
563
+ {
564
+ "epoch": 0.19,
565
+ "learning_rate": 0.0003740740740740741,
566
+ "loss": 0.7801,
567
+ "step": 465
568
+ },
569
+ {
570
+ "epoch": 0.19,
571
+ "learning_rate": 0.00037366255144032925,
572
+ "loss": 0.7809,
573
+ "step": 470
574
+ },
575
+ {
576
+ "epoch": 0.19,
577
+ "learning_rate": 0.0003732510288065844,
578
+ "loss": 0.7749,
579
+ "step": 475
580
+ },
581
+ {
582
+ "epoch": 0.19,
583
+ "learning_rate": 0.00037283950617283956,
584
+ "loss": 0.7807,
585
+ "step": 480
586
+ },
587
+ {
588
+ "epoch": 0.19,
589
+ "learning_rate": 0.00037242798353909467,
590
+ "loss": 0.7715,
591
+ "step": 485
592
+ },
593
+ {
594
+ "epoch": 0.2,
595
+ "learning_rate": 0.0003720164609053498,
596
+ "loss": 0.7356,
597
+ "step": 490
598
+ },
599
+ {
600
+ "epoch": 0.2,
601
+ "learning_rate": 0.000371604938271605,
602
+ "loss": 0.7674,
603
+ "step": 495
604
+ },
605
+ {
606
+ "epoch": 0.2,
607
+ "learning_rate": 0.00037119341563786014,
608
+ "loss": 0.7542,
609
+ "step": 500
610
+ },
611
+ {
612
+ "epoch": 0.2,
613
+ "learning_rate": 0.00037078189300411525,
614
+ "loss": 0.7583,
615
+ "step": 505
616
+ },
617
+ {
618
+ "epoch": 0.2,
619
+ "learning_rate": 0.0003703703703703704,
620
+ "loss": 0.7767,
621
+ "step": 510
622
+ },
623
+ {
624
+ "epoch": 0.21,
625
+ "learning_rate": 0.00036995884773662556,
626
+ "loss": 0.7853,
627
+ "step": 515
628
+ },
629
+ {
630
+ "epoch": 0.21,
631
+ "learning_rate": 0.00036954732510288067,
632
+ "loss": 0.7733,
633
+ "step": 520
634
+ },
635
+ {
636
+ "epoch": 0.21,
637
+ "learning_rate": 0.00036913580246913583,
638
+ "loss": 0.7758,
639
+ "step": 525
640
+ },
641
+ {
642
+ "epoch": 0.21,
643
+ "learning_rate": 0.000368724279835391,
644
+ "loss": 0.7698,
645
+ "step": 530
646
+ },
647
+ {
648
+ "epoch": 0.21,
649
+ "learning_rate": 0.00036831275720164614,
650
+ "loss": 0.7805,
651
+ "step": 535
652
+ },
653
+ {
654
+ "epoch": 0.22,
655
+ "learning_rate": 0.00036790123456790125,
656
+ "loss": 0.7573,
657
+ "step": 540
658
+ },
659
+ {
660
+ "epoch": 0.22,
661
+ "learning_rate": 0.0003674897119341564,
662
+ "loss": 0.7709,
663
+ "step": 545
664
+ },
665
+ {
666
+ "epoch": 0.22,
667
+ "learning_rate": 0.00036707818930041157,
668
+ "loss": 0.7994,
669
+ "step": 550
670
+ },
671
+ {
672
+ "epoch": 0.22,
673
+ "learning_rate": 0.00036666666666666667,
674
+ "loss": 0.7363,
675
+ "step": 555
676
+ },
677
+ {
678
+ "epoch": 0.22,
679
+ "learning_rate": 0.00036625514403292183,
680
+ "loss": 0.7478,
681
+ "step": 560
682
+ },
683
+ {
684
+ "epoch": 0.23,
685
+ "learning_rate": 0.000365843621399177,
686
+ "loss": 0.8188,
687
+ "step": 565
688
+ },
689
+ {
690
+ "epoch": 0.23,
691
+ "learning_rate": 0.0003654320987654321,
692
+ "loss": 0.7524,
693
+ "step": 570
694
+ },
695
+ {
696
+ "epoch": 0.23,
697
+ "learning_rate": 0.00036502057613168725,
698
+ "loss": 0.7319,
699
+ "step": 575
700
+ },
701
+ {
702
+ "epoch": 0.23,
703
+ "learning_rate": 0.0003646090534979424,
704
+ "loss": 0.7915,
705
+ "step": 580
706
+ },
707
+ {
708
+ "epoch": 0.23,
709
+ "learning_rate": 0.00036419753086419757,
710
+ "loss": 0.7722,
711
+ "step": 585
712
+ },
713
+ {
714
+ "epoch": 0.24,
715
+ "learning_rate": 0.00036378600823045267,
716
+ "loss": 0.7842,
717
+ "step": 590
718
+ },
719
+ {
720
+ "epoch": 0.24,
721
+ "learning_rate": 0.00036337448559670783,
722
+ "loss": 0.7591,
723
+ "step": 595
724
+ },
725
+ {
726
+ "epoch": 0.24,
727
+ "learning_rate": 0.000362962962962963,
728
+ "loss": 0.7653,
729
+ "step": 600
730
+ },
731
+ {
732
+ "epoch": 0.24,
733
+ "learning_rate": 0.0003625514403292181,
734
+ "loss": 0.7838,
735
+ "step": 605
736
+ },
737
+ {
738
+ "epoch": 0.24,
739
+ "learning_rate": 0.00036213991769547325,
740
+ "loss": 0.7937,
741
+ "step": 610
742
+ },
743
+ {
744
+ "epoch": 0.25,
745
+ "learning_rate": 0.0003617283950617284,
746
+ "loss": 0.77,
747
+ "step": 615
748
+ },
749
+ {
750
+ "epoch": 0.25,
751
+ "learning_rate": 0.00036131687242798357,
752
+ "loss": 0.7899,
753
+ "step": 620
754
+ },
755
+ {
756
+ "epoch": 0.25,
757
+ "learning_rate": 0.0003609053497942387,
758
+ "loss": 0.7815,
759
+ "step": 625
760
+ },
761
+ {
762
+ "epoch": 0.25,
763
+ "learning_rate": 0.00036049382716049383,
764
+ "loss": 0.7648,
765
+ "step": 630
766
+ },
767
+ {
768
+ "epoch": 0.25,
769
+ "learning_rate": 0.000360082304526749,
770
+ "loss": 0.7716,
771
+ "step": 635
772
+ },
773
+ {
774
+ "epoch": 0.26,
775
+ "learning_rate": 0.0003596707818930041,
776
+ "loss": 0.7708,
777
+ "step": 640
778
+ },
779
+ {
780
+ "epoch": 0.26,
781
+ "learning_rate": 0.00035925925925925925,
782
+ "loss": 0.7306,
783
+ "step": 645
784
+ },
785
+ {
786
+ "epoch": 0.26,
787
+ "learning_rate": 0.0003588477366255144,
788
+ "loss": 0.8007,
789
+ "step": 650
790
+ },
791
+ {
792
+ "epoch": 0.26,
793
+ "learning_rate": 0.0003584362139917695,
794
+ "loss": 0.7551,
795
+ "step": 655
796
+ },
797
+ {
798
+ "epoch": 0.26,
799
+ "learning_rate": 0.0003580246913580247,
800
+ "loss": 0.754,
801
+ "step": 660
802
+ },
803
+ {
804
+ "epoch": 0.27,
805
+ "learning_rate": 0.00035761316872427983,
806
+ "loss": 0.7599,
807
+ "step": 665
808
+ },
809
+ {
810
+ "epoch": 0.27,
811
+ "learning_rate": 0.000357201646090535,
812
+ "loss": 0.7637,
813
+ "step": 670
814
+ },
815
+ {
816
+ "epoch": 0.27,
817
+ "learning_rate": 0.00035679012345679015,
818
+ "loss": 0.7766,
819
+ "step": 675
820
+ },
821
+ {
822
+ "epoch": 0.27,
823
+ "learning_rate": 0.0003563786008230453,
824
+ "loss": 0.7727,
825
+ "step": 680
826
+ },
827
+ {
828
+ "epoch": 0.27,
829
+ "learning_rate": 0.0003559670781893004,
830
+ "loss": 0.7675,
831
+ "step": 685
832
+ },
833
+ {
834
+ "epoch": 0.28,
835
+ "learning_rate": 0.00035555555555555557,
836
+ "loss": 0.7707,
837
+ "step": 690
838
+ },
839
+ {
840
+ "epoch": 0.28,
841
+ "learning_rate": 0.00035514403292181073,
842
+ "loss": 0.7221,
843
+ "step": 695
844
+ },
845
+ {
846
+ "epoch": 0.28,
847
+ "learning_rate": 0.0003547325102880659,
848
+ "loss": 0.7335,
849
+ "step": 700
850
+ },
851
+ {
852
+ "epoch": 0.28,
853
+ "learning_rate": 0.00035432098765432105,
854
+ "loss": 0.781,
855
+ "step": 705
856
+ },
857
+ {
858
+ "epoch": 0.28,
859
+ "learning_rate": 0.00035390946502057615,
860
+ "loss": 0.7845,
861
+ "step": 710
862
+ },
863
+ {
864
+ "epoch": 0.29,
865
+ "learning_rate": 0.0003534979423868313,
866
+ "loss": 0.7467,
867
+ "step": 715
868
+ },
869
+ {
870
+ "epoch": 0.29,
871
+ "learning_rate": 0.00035308641975308647,
872
+ "loss": 0.7735,
873
+ "step": 720
874
+ },
875
+ {
876
+ "epoch": 0.29,
877
+ "learning_rate": 0.0003526748971193416,
878
+ "loss": 0.7368,
879
+ "step": 725
880
+ },
881
+ {
882
+ "epoch": 0.29,
883
+ "learning_rate": 0.00035226337448559673,
884
+ "loss": 0.7678,
885
+ "step": 730
886
+ },
887
+ {
888
+ "epoch": 0.29,
889
+ "learning_rate": 0.0003518518518518519,
890
+ "loss": 0.7756,
891
+ "step": 735
892
+ },
893
+ {
894
+ "epoch": 0.3,
895
+ "learning_rate": 0.00035144032921810705,
896
+ "loss": 0.7635,
897
+ "step": 740
898
+ },
899
+ {
900
+ "epoch": 0.3,
901
+ "learning_rate": 0.00035102880658436215,
902
+ "loss": 0.7757,
903
+ "step": 745
904
+ },
905
+ {
906
+ "epoch": 0.3,
907
+ "learning_rate": 0.0003506172839506173,
908
+ "loss": 0.7442,
909
+ "step": 750
910
+ },
911
+ {
912
+ "epoch": 0.3,
913
+ "learning_rate": 0.00035020576131687247,
914
+ "loss": 0.7584,
915
+ "step": 755
916
+ },
917
+ {
918
+ "epoch": 0.3,
919
+ "learning_rate": 0.0003497942386831276,
920
+ "loss": 0.8333,
921
+ "step": 760
922
+ },
923
+ {
924
+ "epoch": 0.31,
925
+ "learning_rate": 0.00034938271604938273,
926
+ "loss": 0.7459,
927
+ "step": 765
928
+ },
929
+ {
930
+ "epoch": 0.31,
931
+ "learning_rate": 0.0003489711934156379,
932
+ "loss": 0.7499,
933
+ "step": 770
934
+ },
935
+ {
936
+ "epoch": 0.31,
937
+ "learning_rate": 0.000348559670781893,
938
+ "loss": 0.7571,
939
+ "step": 775
940
+ },
941
+ {
942
+ "epoch": 0.31,
943
+ "learning_rate": 0.00034814814814814816,
944
+ "loss": 0.7243,
945
+ "step": 780
946
+ },
947
+ {
948
+ "epoch": 0.31,
949
+ "learning_rate": 0.0003477366255144033,
950
+ "loss": 0.7443,
951
+ "step": 785
952
+ },
953
+ {
954
+ "epoch": 0.32,
955
+ "learning_rate": 0.0003473251028806585,
956
+ "loss": 0.7759,
957
+ "step": 790
958
+ },
959
+ {
960
+ "epoch": 0.32,
961
+ "learning_rate": 0.0003469135802469136,
962
+ "loss": 0.7452,
963
+ "step": 795
964
+ },
965
+ {
966
+ "epoch": 0.32,
967
+ "learning_rate": 0.00034650205761316874,
968
+ "loss": 0.7578,
969
+ "step": 800
970
+ },
971
+ {
972
+ "epoch": 0.32,
973
+ "learning_rate": 0.0003460905349794239,
974
+ "loss": 0.7634,
975
+ "step": 805
976
+ },
977
+ {
978
+ "epoch": 0.32,
979
+ "learning_rate": 0.000345679012345679,
980
+ "loss": 0.7925,
981
+ "step": 810
982
+ },
983
+ {
984
+ "epoch": 0.33,
985
+ "learning_rate": 0.00034526748971193416,
986
+ "loss": 0.7966,
987
+ "step": 815
988
+ },
989
+ {
990
+ "epoch": 0.33,
991
+ "learning_rate": 0.0003448559670781893,
992
+ "loss": 0.7601,
993
+ "step": 820
994
+ },
995
+ {
996
+ "epoch": 0.33,
997
+ "learning_rate": 0.0003444444444444445,
998
+ "loss": 0.7617,
999
+ "step": 825
1000
+ },
1001
+ {
1002
+ "epoch": 0.33,
1003
+ "learning_rate": 0.0003440329218106996,
1004
+ "loss": 0.7526,
1005
+ "step": 830
1006
+ },
1007
+ {
1008
+ "epoch": 0.33,
1009
+ "learning_rate": 0.00034362139917695474,
1010
+ "loss": 0.7297,
1011
+ "step": 835
1012
+ },
1013
+ {
1014
+ "epoch": 0.34,
1015
+ "learning_rate": 0.0003432098765432099,
1016
+ "loss": 0.7549,
1017
+ "step": 840
1018
+ },
1019
+ {
1020
+ "epoch": 0.34,
1021
+ "learning_rate": 0.000342798353909465,
1022
+ "loss": 0.7517,
1023
+ "step": 845
1024
+ },
1025
+ {
1026
+ "epoch": 0.34,
1027
+ "learning_rate": 0.00034238683127572016,
1028
+ "loss": 0.7626,
1029
+ "step": 850
1030
+ },
1031
+ {
1032
+ "epoch": 0.34,
1033
+ "learning_rate": 0.0003419753086419753,
1034
+ "loss": 0.7987,
1035
+ "step": 855
1036
+ },
1037
+ {
1038
+ "epoch": 0.34,
1039
+ "learning_rate": 0.0003415637860082305,
1040
+ "loss": 0.7573,
1041
+ "step": 860
1042
+ },
1043
+ {
1044
+ "epoch": 0.35,
1045
+ "learning_rate": 0.0003411522633744856,
1046
+ "loss": 0.8367,
1047
+ "step": 865
1048
+ },
1049
+ {
1050
+ "epoch": 0.35,
1051
+ "learning_rate": 0.00034074074074074074,
1052
+ "loss": 0.7258,
1053
+ "step": 870
1054
+ },
1055
+ {
1056
+ "epoch": 0.35,
1057
+ "learning_rate": 0.0003403292181069959,
1058
+ "loss": 0.7632,
1059
+ "step": 875
1060
+ },
1061
+ {
1062
+ "epoch": 0.35,
1063
+ "learning_rate": 0.00033991769547325106,
1064
+ "loss": 0.7379,
1065
+ "step": 880
1066
+ },
1067
+ {
1068
+ "epoch": 0.35,
1069
+ "learning_rate": 0.00033950617283950616,
1070
+ "loss": 0.7529,
1071
+ "step": 885
1072
+ },
1073
+ {
1074
+ "epoch": 0.36,
1075
+ "learning_rate": 0.0003390946502057613,
1076
+ "loss": 0.7391,
1077
+ "step": 890
1078
+ },
1079
+ {
1080
+ "epoch": 0.36,
1081
+ "learning_rate": 0.0003386831275720165,
1082
+ "loss": 0.8061,
1083
+ "step": 895
1084
+ },
1085
+ {
1086
+ "epoch": 0.36,
1087
+ "learning_rate": 0.00033827160493827164,
1088
+ "loss": 0.7288,
1089
+ "step": 900
1090
+ },
1091
+ {
1092
+ "epoch": 0.36,
1093
+ "learning_rate": 0.0003378600823045268,
1094
+ "loss": 0.7493,
1095
+ "step": 905
1096
+ },
1097
+ {
1098
+ "epoch": 0.36,
1099
+ "learning_rate": 0.00033744855967078195,
1100
+ "loss": 0.7702,
1101
+ "step": 910
1102
+ },
1103
+ {
1104
+ "epoch": 0.37,
1105
+ "learning_rate": 0.00033703703703703706,
1106
+ "loss": 0.7538,
1107
+ "step": 915
1108
+ },
1109
+ {
1110
+ "epoch": 0.37,
1111
+ "learning_rate": 0.0003366255144032922,
1112
+ "loss": 0.728,
1113
+ "step": 920
1114
+ },
1115
+ {
1116
+ "epoch": 0.37,
1117
+ "learning_rate": 0.0003362139917695474,
1118
+ "loss": 0.7776,
1119
+ "step": 925
1120
+ },
1121
+ {
1122
+ "epoch": 0.37,
1123
+ "learning_rate": 0.0003358024691358025,
1124
+ "loss": 0.7883,
1125
+ "step": 930
1126
+ },
1127
+ {
1128
+ "epoch": 0.37,
1129
+ "learning_rate": 0.00033539094650205764,
1130
+ "loss": 0.7471,
1131
+ "step": 935
1132
+ },
1133
+ {
1134
+ "epoch": 0.38,
1135
+ "learning_rate": 0.0003349794238683128,
1136
+ "loss": 0.7464,
1137
+ "step": 940
1138
+ },
1139
+ {
1140
+ "epoch": 0.38,
1141
+ "learning_rate": 0.00033456790123456795,
1142
+ "loss": 0.7885,
1143
+ "step": 945
1144
+ },
1145
+ {
1146
+ "epoch": 0.38,
1147
+ "learning_rate": 0.00033415637860082306,
1148
+ "loss": 0.7509,
1149
+ "step": 950
1150
+ },
1151
+ {
1152
+ "epoch": 0.38,
1153
+ "learning_rate": 0.0003337448559670782,
1154
+ "loss": 0.7681,
1155
+ "step": 955
1156
+ },
1157
+ {
1158
+ "epoch": 0.38,
1159
+ "learning_rate": 0.0003333333333333334,
1160
+ "loss": 0.8246,
1161
+ "step": 960
1162
+ },
1163
+ {
1164
+ "epoch": 0.39,
1165
+ "learning_rate": 0.0003329218106995885,
1166
+ "loss": 0.7604,
1167
+ "step": 965
1168
+ },
1169
+ {
1170
+ "epoch": 0.39,
1171
+ "learning_rate": 0.00033251028806584364,
1172
+ "loss": 0.7755,
1173
+ "step": 970
1174
+ },
1175
+ {
1176
+ "epoch": 0.39,
1177
+ "learning_rate": 0.0003320987654320988,
1178
+ "loss": 0.7641,
1179
+ "step": 975
1180
+ },
1181
+ {
1182
+ "epoch": 0.39,
1183
+ "learning_rate": 0.0003316872427983539,
1184
+ "loss": 0.7708,
1185
+ "step": 980
1186
+ },
1187
+ {
1188
+ "epoch": 0.39,
1189
+ "learning_rate": 0.00033127572016460906,
1190
+ "loss": 0.7936,
1191
+ "step": 985
1192
+ },
1193
+ {
1194
+ "epoch": 0.4,
1195
+ "learning_rate": 0.0003308641975308642,
1196
+ "loss": 0.7641,
1197
+ "step": 990
1198
+ },
1199
+ {
1200
+ "epoch": 0.4,
1201
+ "learning_rate": 0.0003304526748971194,
1202
+ "loss": 0.7479,
1203
+ "step": 995
1204
+ },
1205
+ {
1206
+ "epoch": 0.4,
1207
+ "learning_rate": 0.0003300411522633745,
1208
+ "loss": 0.7547,
1209
+ "step": 1000
1210
+ },
1211
+ {
1212
+ "epoch": 0.4,
1213
+ "learning_rate": 0.00032962962962962964,
1214
+ "loss": 0.762,
1215
+ "step": 1005
1216
+ },
1217
+ {
1218
+ "epoch": 0.4,
1219
+ "learning_rate": 0.0003292181069958848,
1220
+ "loss": 0.7472,
1221
+ "step": 1010
1222
+ },
1223
+ {
1224
+ "epoch": 0.41,
1225
+ "learning_rate": 0.0003288065843621399,
1226
+ "loss": 0.7542,
1227
+ "step": 1015
1228
+ },
1229
+ {
1230
+ "epoch": 0.41,
1231
+ "learning_rate": 0.00032839506172839506,
1232
+ "loss": 0.7669,
1233
+ "step": 1020
1234
+ },
1235
+ {
1236
+ "epoch": 0.41,
1237
+ "learning_rate": 0.0003279835390946502,
1238
+ "loss": 0.7812,
1239
+ "step": 1025
1240
+ },
1241
+ {
1242
+ "epoch": 0.41,
1243
+ "learning_rate": 0.0003275720164609054,
1244
+ "loss": 0.7273,
1245
+ "step": 1030
1246
+ },
1247
+ {
1248
+ "epoch": 0.41,
1249
+ "learning_rate": 0.0003271604938271605,
1250
+ "loss": 0.7822,
1251
+ "step": 1035
1252
+ },
1253
+ {
1254
+ "epoch": 0.42,
1255
+ "learning_rate": 0.00032674897119341564,
1256
+ "loss": 0.7337,
1257
+ "step": 1040
1258
+ },
1259
+ {
1260
+ "epoch": 0.42,
1261
+ "learning_rate": 0.0003263374485596708,
1262
+ "loss": 0.7566,
1263
+ "step": 1045
1264
+ },
1265
+ {
1266
+ "epoch": 0.42,
1267
+ "learning_rate": 0.0003259259259259259,
1268
+ "loss": 0.7377,
1269
+ "step": 1050
1270
+ },
1271
+ {
1272
+ "epoch": 0.42,
1273
+ "learning_rate": 0.00032551440329218106,
1274
+ "loss": 0.7856,
1275
+ "step": 1055
1276
+ },
1277
+ {
1278
+ "epoch": 0.42,
1279
+ "learning_rate": 0.0003251028806584362,
1280
+ "loss": 0.7981,
1281
+ "step": 1060
1282
+ },
1283
+ {
1284
+ "epoch": 0.43,
1285
+ "learning_rate": 0.0003246913580246914,
1286
+ "loss": 0.7505,
1287
+ "step": 1065
1288
+ },
1289
+ {
1290
+ "epoch": 0.43,
1291
+ "learning_rate": 0.0003242798353909465,
1292
+ "loss": 0.7549,
1293
+ "step": 1070
1294
+ },
1295
+ {
1296
+ "epoch": 0.43,
1297
+ "learning_rate": 0.00032386831275720164,
1298
+ "loss": 0.7306,
1299
+ "step": 1075
1300
+ },
1301
+ {
1302
+ "epoch": 0.43,
1303
+ "learning_rate": 0.0003234567901234568,
1304
+ "loss": 0.7343,
1305
+ "step": 1080
1306
+ },
1307
+ {
1308
+ "epoch": 0.43,
1309
+ "learning_rate": 0.0003230452674897119,
1310
+ "loss": 0.738,
1311
+ "step": 1085
1312
+ },
1313
+ {
1314
+ "epoch": 0.44,
1315
+ "learning_rate": 0.00032263374485596707,
1316
+ "loss": 0.7655,
1317
+ "step": 1090
1318
+ },
1319
+ {
1320
+ "epoch": 0.44,
1321
+ "learning_rate": 0.0003222222222222222,
1322
+ "loss": 0.7706,
1323
+ "step": 1095
1324
+ },
1325
+ {
1326
+ "epoch": 0.44,
1327
+ "learning_rate": 0.0003218106995884774,
1328
+ "loss": 0.7512,
1329
+ "step": 1100
1330
+ },
1331
+ {
1332
+ "epoch": 0.44,
1333
+ "learning_rate": 0.00032139917695473254,
1334
+ "loss": 0.7549,
1335
+ "step": 1105
1336
+ },
1337
+ {
1338
+ "epoch": 0.44,
1339
+ "learning_rate": 0.0003209876543209877,
1340
+ "loss": 0.7839,
1341
+ "step": 1110
1342
+ },
1343
+ {
1344
+ "epoch": 0.45,
1345
+ "learning_rate": 0.0003205761316872428,
1346
+ "loss": 0.7511,
1347
+ "step": 1115
1348
+ },
1349
+ {
1350
+ "epoch": 0.45,
1351
+ "learning_rate": 0.00032016460905349796,
1352
+ "loss": 0.769,
1353
+ "step": 1120
1354
+ },
1355
+ {
1356
+ "epoch": 0.45,
1357
+ "learning_rate": 0.0003197530864197531,
1358
+ "loss": 0.7685,
1359
+ "step": 1125
1360
+ },
1361
+ {
1362
+ "epoch": 0.45,
1363
+ "learning_rate": 0.0003193415637860083,
1364
+ "loss": 0.7489,
1365
+ "step": 1130
1366
+ },
1367
+ {
1368
+ "epoch": 0.45,
1369
+ "learning_rate": 0.0003189300411522634,
1370
+ "loss": 0.808,
1371
+ "step": 1135
1372
+ },
1373
+ {
1374
+ "epoch": 0.46,
1375
+ "learning_rate": 0.00031851851851851854,
1376
+ "loss": 0.7654,
1377
+ "step": 1140
1378
+ },
1379
+ {
1380
+ "epoch": 0.46,
1381
+ "learning_rate": 0.0003181069958847737,
1382
+ "loss": 0.7845,
1383
+ "step": 1145
1384
+ },
1385
+ {
1386
+ "epoch": 0.46,
1387
+ "learning_rate": 0.00031769547325102886,
1388
+ "loss": 0.7886,
1389
+ "step": 1150
1390
+ },
1391
+ {
1392
+ "epoch": 0.46,
1393
+ "learning_rate": 0.00031728395061728396,
1394
+ "loss": 0.7318,
1395
+ "step": 1155
1396
+ },
1397
+ {
1398
+ "epoch": 0.46,
1399
+ "learning_rate": 0.0003168724279835391,
1400
+ "loss": 0.7231,
1401
+ "step": 1160
1402
+ },
1403
+ {
1404
+ "epoch": 0.47,
1405
+ "learning_rate": 0.0003164609053497943,
1406
+ "loss": 0.7471,
1407
+ "step": 1165
1408
+ },
1409
+ {
1410
+ "epoch": 0.47,
1411
+ "learning_rate": 0.0003160493827160494,
1412
+ "loss": 0.7424,
1413
+ "step": 1170
1414
+ },
1415
+ {
1416
+ "epoch": 0.47,
1417
+ "learning_rate": 0.00031563786008230454,
1418
+ "loss": 0.7249,
1419
+ "step": 1175
1420
+ },
1421
+ {
1422
+ "epoch": 0.47,
1423
+ "learning_rate": 0.0003152263374485597,
1424
+ "loss": 0.7419,
1425
+ "step": 1180
1426
+ },
1427
+ {
1428
+ "epoch": 0.47,
1429
+ "learning_rate": 0.00031481481481481486,
1430
+ "loss": 0.7567,
1431
+ "step": 1185
1432
+ },
1433
+ {
1434
+ "epoch": 0.48,
1435
+ "learning_rate": 0.00031440329218106997,
1436
+ "loss": 0.7707,
1437
+ "step": 1190
1438
+ },
1439
+ {
1440
+ "epoch": 0.48,
1441
+ "learning_rate": 0.0003139917695473251,
1442
+ "loss": 0.7473,
1443
+ "step": 1195
1444
+ },
1445
+ {
1446
+ "epoch": 0.48,
1447
+ "learning_rate": 0.0003135802469135803,
1448
+ "loss": 0.7222,
1449
+ "step": 1200
1450
+ },
1451
+ {
1452
+ "epoch": 0.48,
1453
+ "learning_rate": 0.0003131687242798354,
1454
+ "loss": 0.7383,
1455
+ "step": 1205
1456
+ },
1457
+ {
1458
+ "epoch": 0.48,
1459
+ "learning_rate": 0.00031275720164609055,
1460
+ "loss": 0.7712,
1461
+ "step": 1210
1462
+ },
1463
+ {
1464
+ "epoch": 0.48,
1465
+ "learning_rate": 0.0003123456790123457,
1466
+ "loss": 0.7602,
1467
+ "step": 1215
1468
+ },
1469
+ {
1470
+ "epoch": 0.49,
1471
+ "learning_rate": 0.0003119341563786008,
1472
+ "loss": 0.7741,
1473
+ "step": 1220
1474
+ },
1475
+ {
1476
+ "epoch": 0.49,
1477
+ "learning_rate": 0.00031152263374485597,
1478
+ "loss": 0.7428,
1479
+ "step": 1225
1480
+ },
1481
+ {
1482
+ "epoch": 0.49,
1483
+ "learning_rate": 0.0003111111111111111,
1484
+ "loss": 0.7605,
1485
+ "step": 1230
1486
+ },
1487
+ {
1488
+ "epoch": 0.49,
1489
+ "learning_rate": 0.0003106995884773663,
1490
+ "loss": 0.7255,
1491
+ "step": 1235
1492
+ },
1493
+ {
1494
+ "epoch": 0.49,
1495
+ "learning_rate": 0.0003102880658436214,
1496
+ "loss": 0.7468,
1497
+ "step": 1240
1498
+ },
1499
+ {
1500
+ "epoch": 0.5,
1501
+ "learning_rate": 0.00030987654320987655,
1502
+ "loss": 0.7961,
1503
+ "step": 1245
1504
+ },
1505
+ {
1506
+ "epoch": 0.5,
1507
+ "learning_rate": 0.0003094650205761317,
1508
+ "loss": 0.7208,
1509
+ "step": 1250
1510
+ },
1511
+ {
1512
+ "epoch": 0.5,
1513
+ "learning_rate": 0.0003090534979423868,
1514
+ "loss": 0.7331,
1515
+ "step": 1255
1516
+ },
1517
+ {
1518
+ "epoch": 0.5,
1519
+ "learning_rate": 0.00030864197530864197,
1520
+ "loss": 0.7371,
1521
+ "step": 1260
1522
+ },
1523
+ {
1524
+ "epoch": 0.5,
1525
+ "learning_rate": 0.00030823045267489713,
1526
+ "loss": 0.7206,
1527
+ "step": 1265
1528
+ },
1529
+ {
1530
+ "epoch": 0.51,
1531
+ "learning_rate": 0.0003078189300411523,
1532
+ "loss": 0.7617,
1533
+ "step": 1270
1534
+ },
1535
+ {
1536
+ "epoch": 0.51,
1537
+ "learning_rate": 0.0003074074074074074,
1538
+ "loss": 0.7652,
1539
+ "step": 1275
1540
+ },
1541
+ {
1542
+ "epoch": 0.51,
1543
+ "learning_rate": 0.00030699588477366255,
1544
+ "loss": 0.7635,
1545
+ "step": 1280
1546
+ },
1547
+ {
1548
+ "epoch": 0.51,
1549
+ "learning_rate": 0.0003065843621399177,
1550
+ "loss": 0.7445,
1551
+ "step": 1285
1552
+ },
1553
+ {
1554
+ "epoch": 0.51,
1555
+ "learning_rate": 0.0003061728395061728,
1556
+ "loss": 0.7717,
1557
+ "step": 1290
1558
+ },
1559
+ {
1560
+ "epoch": 0.52,
1561
+ "learning_rate": 0.00030576131687242797,
1562
+ "loss": 0.7535,
1563
+ "step": 1295
1564
+ },
1565
+ {
1566
+ "epoch": 0.52,
1567
+ "learning_rate": 0.00030534979423868313,
1568
+ "loss": 0.7677,
1569
+ "step": 1300
1570
+ },
1571
+ {
1572
+ "epoch": 0.52,
1573
+ "learning_rate": 0.0003049382716049383,
1574
+ "loss": 0.8131,
1575
+ "step": 1305
1576
+ },
1577
+ {
1578
+ "epoch": 0.52,
1579
+ "learning_rate": 0.00030452674897119345,
1580
+ "loss": 0.7754,
1581
+ "step": 1310
1582
+ },
1583
+ {
1584
+ "epoch": 0.52,
1585
+ "learning_rate": 0.00030411522633744855,
1586
+ "loss": 0.76,
1587
+ "step": 1315
1588
+ },
1589
+ {
1590
+ "epoch": 0.53,
1591
+ "learning_rate": 0.0003037037037037037,
1592
+ "loss": 0.7558,
1593
+ "step": 1320
1594
+ },
1595
+ {
1596
+ "epoch": 0.53,
1597
+ "learning_rate": 0.00030329218106995887,
1598
+ "loss": 0.7604,
1599
+ "step": 1325
1600
+ },
1601
+ {
1602
+ "epoch": 0.53,
1603
+ "learning_rate": 0.000302880658436214,
1604
+ "loss": 0.7716,
1605
+ "step": 1330
1606
+ },
1607
+ {
1608
+ "epoch": 0.53,
1609
+ "learning_rate": 0.0003024691358024692,
1610
+ "loss": 0.7669,
1611
+ "step": 1335
1612
+ },
1613
+ {
1614
+ "epoch": 0.53,
1615
+ "learning_rate": 0.0003020576131687243,
1616
+ "loss": 0.7469,
1617
+ "step": 1340
1618
+ },
1619
+ {
1620
+ "epoch": 0.54,
1621
+ "learning_rate": 0.00030164609053497945,
1622
+ "loss": 0.7511,
1623
+ "step": 1345
1624
+ },
1625
+ {
1626
+ "epoch": 0.54,
1627
+ "learning_rate": 0.0003012345679012346,
1628
+ "loss": 0.7483,
1629
+ "step": 1350
1630
+ },
1631
+ {
1632
+ "epoch": 0.54,
1633
+ "learning_rate": 0.00030082304526748976,
1634
+ "loss": 0.7509,
1635
+ "step": 1355
1636
+ },
1637
+ {
1638
+ "epoch": 0.54,
1639
+ "learning_rate": 0.00030041152263374487,
1640
+ "loss": 0.7249,
1641
+ "step": 1360
1642
+ },
1643
+ {
1644
+ "epoch": 0.54,
1645
+ "learning_rate": 0.00030000000000000003,
1646
+ "loss": 0.7289,
1647
+ "step": 1365
1648
+ },
1649
+ {
1650
+ "epoch": 0.55,
1651
+ "learning_rate": 0.0002995884773662552,
1652
+ "loss": 0.7605,
1653
+ "step": 1370
1654
+ },
1655
+ {
1656
+ "epoch": 0.55,
1657
+ "learning_rate": 0.0002991769547325103,
1658
+ "loss": 0.7185,
1659
+ "step": 1375
1660
+ },
1661
+ {
1662
+ "epoch": 0.55,
1663
+ "learning_rate": 0.00029876543209876545,
1664
+ "loss": 0.6974,
1665
+ "step": 1380
1666
+ },
1667
+ {
1668
+ "epoch": 0.55,
1669
+ "learning_rate": 0.0002983539094650206,
1670
+ "loss": 0.7234,
1671
+ "step": 1385
1672
+ },
1673
+ {
1674
+ "epoch": 0.55,
1675
+ "learning_rate": 0.00029794238683127577,
1676
+ "loss": 0.7506,
1677
+ "step": 1390
1678
+ },
1679
+ {
1680
+ "epoch": 0.56,
1681
+ "learning_rate": 0.00029753086419753087,
1682
+ "loss": 0.7524,
1683
+ "step": 1395
1684
+ },
1685
+ {
1686
+ "epoch": 0.56,
1687
+ "learning_rate": 0.00029711934156378603,
1688
+ "loss": 0.7641,
1689
+ "step": 1400
1690
+ },
1691
+ {
1692
+ "epoch": 0.56,
1693
+ "learning_rate": 0.0002967078189300412,
1694
+ "loss": 0.6967,
1695
+ "step": 1405
1696
+ },
1697
+ {
1698
+ "epoch": 0.56,
1699
+ "learning_rate": 0.0002962962962962963,
1700
+ "loss": 0.735,
1701
+ "step": 1410
1702
+ },
1703
+ {
1704
+ "epoch": 0.56,
1705
+ "learning_rate": 0.00029588477366255145,
1706
+ "loss": 0.7685,
1707
+ "step": 1415
1708
+ },
1709
+ {
1710
+ "epoch": 0.57,
1711
+ "learning_rate": 0.0002954732510288066,
1712
+ "loss": 0.758,
1713
+ "step": 1420
1714
+ },
1715
+ {
1716
+ "epoch": 0.57,
1717
+ "learning_rate": 0.0002950617283950617,
1718
+ "loss": 0.763,
1719
+ "step": 1425
1720
+ },
1721
+ {
1722
+ "epoch": 0.57,
1723
+ "learning_rate": 0.00029465020576131687,
1724
+ "loss": 0.712,
1725
+ "step": 1430
1726
+ },
1727
+ {
1728
+ "epoch": 0.57,
1729
+ "learning_rate": 0.00029423868312757203,
1730
+ "loss": 0.7236,
1731
+ "step": 1435
1732
+ },
1733
+ {
1734
+ "epoch": 0.57,
1735
+ "learning_rate": 0.0002938271604938272,
1736
+ "loss": 0.7732,
1737
+ "step": 1440
1738
+ },
1739
+ {
1740
+ "epoch": 0.58,
1741
+ "learning_rate": 0.0002934156378600823,
1742
+ "loss": 0.7689,
1743
+ "step": 1445
1744
+ },
1745
+ {
1746
+ "epoch": 0.58,
1747
+ "learning_rate": 0.00029300411522633745,
1748
+ "loss": 0.7352,
1749
+ "step": 1450
1750
+ },
1751
+ {
1752
+ "epoch": 0.58,
1753
+ "learning_rate": 0.0002925925925925926,
1754
+ "loss": 0.7711,
1755
+ "step": 1455
1756
+ },
1757
+ {
1758
+ "epoch": 0.58,
1759
+ "learning_rate": 0.0002921810699588477,
1760
+ "loss": 0.7549,
1761
+ "step": 1460
1762
+ },
1763
+ {
1764
+ "epoch": 0.58,
1765
+ "learning_rate": 0.0002917695473251029,
1766
+ "loss": 0.7804,
1767
+ "step": 1465
1768
+ },
1769
+ {
1770
+ "epoch": 0.59,
1771
+ "learning_rate": 0.00029135802469135803,
1772
+ "loss": 0.7478,
1773
+ "step": 1470
1774
+ },
1775
+ {
1776
+ "epoch": 0.59,
1777
+ "learning_rate": 0.0002909465020576132,
1778
+ "loss": 0.7801,
1779
+ "step": 1475
1780
+ },
1781
+ {
1782
+ "epoch": 0.59,
1783
+ "learning_rate": 0.0002905349794238683,
1784
+ "loss": 0.7544,
1785
+ "step": 1480
1786
+ },
1787
+ {
1788
+ "epoch": 0.59,
1789
+ "learning_rate": 0.00029012345679012345,
1790
+ "loss": 0.7546,
1791
+ "step": 1485
1792
+ },
1793
+ {
1794
+ "epoch": 0.59,
1795
+ "learning_rate": 0.0002897119341563786,
1796
+ "loss": 0.7648,
1797
+ "step": 1490
1798
+ },
1799
+ {
1800
+ "epoch": 0.6,
1801
+ "learning_rate": 0.0002893004115226337,
1802
+ "loss": 0.7468,
1803
+ "step": 1495
1804
+ },
1805
+ {
1806
+ "epoch": 0.6,
1807
+ "learning_rate": 0.0002888888888888889,
1808
+ "loss": 0.7434,
1809
+ "step": 1500
1810
+ },
1811
+ {
1812
+ "epoch": 0.6,
1813
+ "learning_rate": 0.00028847736625514403,
1814
+ "loss": 0.7348,
1815
+ "step": 1505
1816
+ },
1817
+ {
1818
+ "epoch": 0.6,
1819
+ "learning_rate": 0.0002880658436213992,
1820
+ "loss": 0.7515,
1821
+ "step": 1510
1822
+ },
1823
+ {
1824
+ "epoch": 0.6,
1825
+ "learning_rate": 0.00028765432098765435,
1826
+ "loss": 0.7345,
1827
+ "step": 1515
1828
+ },
1829
+ {
1830
+ "epoch": 0.61,
1831
+ "learning_rate": 0.00028724279835390946,
1832
+ "loss": 0.7701,
1833
+ "step": 1520
1834
+ },
1835
+ {
1836
+ "epoch": 0.61,
1837
+ "learning_rate": 0.0002868312757201646,
1838
+ "loss": 0.7472,
1839
+ "step": 1525
1840
+ },
1841
+ {
1842
+ "epoch": 0.61,
1843
+ "learning_rate": 0.00028641975308641977,
1844
+ "loss": 0.7075,
1845
+ "step": 1530
1846
+ },
1847
+ {
1848
+ "epoch": 0.61,
1849
+ "learning_rate": 0.00028600823045267493,
1850
+ "loss": 0.7483,
1851
+ "step": 1535
1852
+ },
1853
+ {
1854
+ "epoch": 0.61,
1855
+ "learning_rate": 0.0002855967078189301,
1856
+ "loss": 0.712,
1857
+ "step": 1540
1858
+ },
1859
+ {
1860
+ "epoch": 0.62,
1861
+ "learning_rate": 0.0002851851851851852,
1862
+ "loss": 0.7484,
1863
+ "step": 1545
1864
+ },
1865
+ {
1866
+ "epoch": 0.62,
1867
+ "learning_rate": 0.00028477366255144035,
1868
+ "loss": 0.7471,
1869
+ "step": 1550
1870
+ },
1871
+ {
1872
+ "epoch": 0.62,
1873
+ "learning_rate": 0.0002843621399176955,
1874
+ "loss": 0.7462,
1875
+ "step": 1555
1876
+ },
1877
+ {
1878
+ "epoch": 0.62,
1879
+ "learning_rate": 0.00028395061728395067,
1880
+ "loss": 0.7371,
1881
+ "step": 1560
1882
+ },
1883
+ {
1884
+ "epoch": 0.62,
1885
+ "learning_rate": 0.0002835390946502058,
1886
+ "loss": 0.7753,
1887
+ "step": 1565
1888
+ },
1889
+ {
1890
+ "epoch": 0.63,
1891
+ "learning_rate": 0.00028312757201646093,
1892
+ "loss": 0.7374,
1893
+ "step": 1570
1894
+ },
1895
+ {
1896
+ "epoch": 0.63,
1897
+ "learning_rate": 0.0002827160493827161,
1898
+ "loss": 0.7328,
1899
+ "step": 1575
1900
+ },
1901
+ {
1902
+ "epoch": 0.63,
1903
+ "learning_rate": 0.0002823045267489712,
1904
+ "loss": 0.7159,
1905
+ "step": 1580
1906
+ },
1907
+ {
1908
+ "epoch": 0.63,
1909
+ "learning_rate": 0.00028189300411522635,
1910
+ "loss": 0.7594,
1911
+ "step": 1585
1912
+ },
1913
+ {
1914
+ "epoch": 0.63,
1915
+ "learning_rate": 0.0002814814814814815,
1916
+ "loss": 0.7215,
1917
+ "step": 1590
1918
+ },
1919
+ {
1920
+ "epoch": 0.64,
1921
+ "learning_rate": 0.00028106995884773667,
1922
+ "loss": 0.7398,
1923
+ "step": 1595
1924
+ },
1925
+ {
1926
+ "epoch": 0.64,
1927
+ "learning_rate": 0.0002806584362139918,
1928
+ "loss": 0.773,
1929
+ "step": 1600
1930
+ },
1931
+ {
1932
+ "epoch": 0.64,
1933
+ "learning_rate": 0.00028024691358024693,
1934
+ "loss": 0.7584,
1935
+ "step": 1605
1936
+ },
1937
+ {
1938
+ "epoch": 0.64,
1939
+ "learning_rate": 0.0002798353909465021,
1940
+ "loss": 0.7117,
1941
+ "step": 1610
1942
+ },
1943
+ {
1944
+ "epoch": 0.64,
1945
+ "learning_rate": 0.0002794238683127572,
1946
+ "loss": 0.7471,
1947
+ "step": 1615
1948
+ },
1949
+ {
1950
+ "epoch": 0.65,
1951
+ "learning_rate": 0.00027901234567901236,
1952
+ "loss": 0.7443,
1953
+ "step": 1620
1954
+ },
1955
+ {
1956
+ "epoch": 0.65,
1957
+ "learning_rate": 0.0002786008230452675,
1958
+ "loss": 0.7292,
1959
+ "step": 1625
1960
+ },
1961
+ {
1962
+ "epoch": 0.65,
1963
+ "learning_rate": 0.0002781893004115227,
1964
+ "loss": 0.7716,
1965
+ "step": 1630
1966
+ },
1967
+ {
1968
+ "epoch": 0.65,
1969
+ "learning_rate": 0.0002777777777777778,
1970
+ "loss": 0.763,
1971
+ "step": 1635
1972
+ },
1973
+ {
1974
+ "epoch": 0.65,
1975
+ "learning_rate": 0.00027736625514403294,
1976
+ "loss": 0.7408,
1977
+ "step": 1640
1978
+ },
1979
+ {
1980
+ "epoch": 0.66,
1981
+ "learning_rate": 0.0002769547325102881,
1982
+ "loss": 0.7403,
1983
+ "step": 1645
1984
+ },
1985
+ {
1986
+ "epoch": 0.66,
1987
+ "learning_rate": 0.0002765432098765432,
1988
+ "loss": 0.7508,
1989
+ "step": 1650
1990
+ },
1991
+ {
1992
+ "epoch": 0.66,
1993
+ "learning_rate": 0.00027613168724279836,
1994
+ "loss": 0.7687,
1995
+ "step": 1655
1996
+ },
1997
+ {
1998
+ "epoch": 0.66,
1999
+ "learning_rate": 0.0002757201646090535,
2000
+ "loss": 0.7305,
2001
+ "step": 1660
2002
+ },
2003
+ {
2004
+ "epoch": 0.66,
2005
+ "learning_rate": 0.0002753086419753086,
2006
+ "loss": 0.7165,
2007
+ "step": 1665
2008
+ },
2009
+ {
2010
+ "epoch": 0.67,
2011
+ "learning_rate": 0.0002748971193415638,
2012
+ "loss": 0.8,
2013
+ "step": 1670
2014
+ },
2015
+ {
2016
+ "epoch": 0.67,
2017
+ "learning_rate": 0.00027448559670781894,
2018
+ "loss": 0.7357,
2019
+ "step": 1675
2020
+ },
2021
+ {
2022
+ "epoch": 0.67,
2023
+ "learning_rate": 0.0002740740740740741,
2024
+ "loss": 0.7988,
2025
+ "step": 1680
2026
+ },
2027
+ {
2028
+ "epoch": 0.67,
2029
+ "learning_rate": 0.0002736625514403292,
2030
+ "loss": 0.7559,
2031
+ "step": 1685
2032
+ },
2033
+ {
2034
+ "epoch": 0.67,
2035
+ "learning_rate": 0.00027325102880658436,
2036
+ "loss": 0.712,
2037
+ "step": 1690
2038
+ },
2039
+ {
2040
+ "epoch": 0.68,
2041
+ "learning_rate": 0.0002728395061728395,
2042
+ "loss": 0.7486,
2043
+ "step": 1695
2044
+ },
2045
+ {
2046
+ "epoch": 0.68,
2047
+ "learning_rate": 0.0002724279835390946,
2048
+ "loss": 0.7388,
2049
+ "step": 1700
2050
+ },
2051
+ {
2052
+ "epoch": 0.68,
2053
+ "learning_rate": 0.0002720164609053498,
2054
+ "loss": 0.7441,
2055
+ "step": 1705
2056
+ },
2057
+ {
2058
+ "epoch": 0.68,
2059
+ "learning_rate": 0.00027160493827160494,
2060
+ "loss": 0.7547,
2061
+ "step": 1710
2062
+ },
2063
+ {
2064
+ "epoch": 0.68,
2065
+ "learning_rate": 0.0002711934156378601,
2066
+ "loss": 0.7229,
2067
+ "step": 1715
2068
+ },
2069
+ {
2070
+ "epoch": 0.69,
2071
+ "learning_rate": 0.0002707818930041152,
2072
+ "loss": 0.7383,
2073
+ "step": 1720
2074
+ },
2075
+ {
2076
+ "epoch": 0.69,
2077
+ "learning_rate": 0.00027037037037037036,
2078
+ "loss": 0.7606,
2079
+ "step": 1725
2080
+ },
2081
+ {
2082
+ "epoch": 0.69,
2083
+ "learning_rate": 0.0002699588477366255,
2084
+ "loss": 0.7529,
2085
+ "step": 1730
2086
+ },
2087
+ {
2088
+ "epoch": 0.69,
2089
+ "learning_rate": 0.0002695473251028807,
2090
+ "loss": 0.752,
2091
+ "step": 1735
2092
+ },
2093
+ {
2094
+ "epoch": 0.69,
2095
+ "learning_rate": 0.00026913580246913584,
2096
+ "loss": 0.7342,
2097
+ "step": 1740
2098
+ },
2099
+ {
2100
+ "epoch": 0.7,
2101
+ "learning_rate": 0.000268724279835391,
2102
+ "loss": 0.7308,
2103
+ "step": 1745
2104
+ },
2105
+ {
2106
+ "epoch": 0.7,
2107
+ "learning_rate": 0.0002683127572016461,
2108
+ "loss": 0.6915,
2109
+ "step": 1750
2110
+ },
2111
+ {
2112
+ "epoch": 0.7,
2113
+ "learning_rate": 0.00026790123456790126,
2114
+ "loss": 0.7344,
2115
+ "step": 1755
2116
+ },
2117
+ {
2118
+ "epoch": 0.7,
2119
+ "learning_rate": 0.0002674897119341564,
2120
+ "loss": 0.7426,
2121
+ "step": 1760
2122
+ },
2123
+ {
2124
+ "epoch": 0.7,
2125
+ "learning_rate": 0.0002670781893004116,
2126
+ "loss": 0.7088,
2127
+ "step": 1765
2128
+ },
2129
+ {
2130
+ "epoch": 0.71,
2131
+ "learning_rate": 0.0002666666666666667,
2132
+ "loss": 0.7241,
2133
+ "step": 1770
2134
+ },
2135
+ {
2136
+ "epoch": 0.71,
2137
+ "learning_rate": 0.00026625514403292184,
2138
+ "loss": 0.7552,
2139
+ "step": 1775
2140
+ },
2141
+ {
2142
+ "epoch": 0.71,
2143
+ "learning_rate": 0.000265843621399177,
2144
+ "loss": 0.7477,
2145
+ "step": 1780
2146
+ },
2147
+ {
2148
+ "epoch": 0.71,
2149
+ "learning_rate": 0.0002654320987654321,
2150
+ "loss": 0.7115,
2151
+ "step": 1785
2152
+ },
2153
+ {
2154
+ "epoch": 0.71,
2155
+ "learning_rate": 0.00026502057613168726,
2156
+ "loss": 0.7538,
2157
+ "step": 1790
2158
+ },
2159
+ {
2160
+ "epoch": 0.72,
2161
+ "learning_rate": 0.0002646090534979424,
2162
+ "loss": 0.7321,
2163
+ "step": 1795
2164
+ },
2165
+ {
2166
+ "epoch": 0.72,
2167
+ "learning_rate": 0.0002641975308641976,
2168
+ "loss": 0.7212,
2169
+ "step": 1800
2170
+ },
2171
+ {
2172
+ "epoch": 0.72,
2173
+ "learning_rate": 0.0002637860082304527,
2174
+ "loss": 0.747,
2175
+ "step": 1805
2176
+ },
2177
+ {
2178
+ "epoch": 0.72,
2179
+ "learning_rate": 0.00026337448559670784,
2180
+ "loss": 0.7606,
2181
+ "step": 1810
2182
+ },
2183
+ {
2184
+ "epoch": 0.72,
2185
+ "learning_rate": 0.000262962962962963,
2186
+ "loss": 0.7344,
2187
+ "step": 1815
2188
+ },
2189
+ {
2190
+ "epoch": 0.73,
2191
+ "learning_rate": 0.0002625514403292181,
2192
+ "loss": 0.7783,
2193
+ "step": 1820
2194
+ },
2195
+ {
2196
+ "epoch": 0.73,
2197
+ "learning_rate": 0.00026213991769547326,
2198
+ "loss": 0.7556,
2199
+ "step": 1825
2200
+ },
2201
+ {
2202
+ "epoch": 0.73,
2203
+ "learning_rate": 0.0002617283950617284,
2204
+ "loss": 0.7585,
2205
+ "step": 1830
2206
+ },
2207
+ {
2208
+ "epoch": 0.73,
2209
+ "learning_rate": 0.0002613168724279836,
2210
+ "loss": 0.7359,
2211
+ "step": 1835
2212
+ },
2213
+ {
2214
+ "epoch": 0.73,
2215
+ "learning_rate": 0.0002609053497942387,
2216
+ "loss": 0.7185,
2217
+ "step": 1840
2218
+ },
2219
+ {
2220
+ "epoch": 0.74,
2221
+ "learning_rate": 0.00026049382716049384,
2222
+ "loss": 0.7573,
2223
+ "step": 1845
2224
+ },
2225
+ {
2226
+ "epoch": 0.74,
2227
+ "learning_rate": 0.000260082304526749,
2228
+ "loss": 0.7619,
2229
+ "step": 1850
2230
+ },
2231
+ {
2232
+ "epoch": 0.74,
2233
+ "learning_rate": 0.0002596707818930041,
2234
+ "loss": 0.7611,
2235
+ "step": 1855
2236
+ },
2237
+ {
2238
+ "epoch": 0.74,
2239
+ "learning_rate": 0.00025925925925925926,
2240
+ "loss": 0.7647,
2241
+ "step": 1860
2242
+ },
2243
+ {
2244
+ "epoch": 0.74,
2245
+ "learning_rate": 0.0002588477366255144,
2246
+ "loss": 0.7398,
2247
+ "step": 1865
2248
+ },
2249
+ {
2250
+ "epoch": 0.75,
2251
+ "learning_rate": 0.0002584362139917695,
2252
+ "loss": 0.7683,
2253
+ "step": 1870
2254
+ },
2255
+ {
2256
+ "epoch": 0.75,
2257
+ "learning_rate": 0.0002580246913580247,
2258
+ "loss": 0.7817,
2259
+ "step": 1875
2260
+ },
2261
+ {
2262
+ "epoch": 0.75,
2263
+ "learning_rate": 0.00025761316872427984,
2264
+ "loss": 0.742,
2265
+ "step": 1880
2266
+ },
2267
+ {
2268
+ "epoch": 0.75,
2269
+ "learning_rate": 0.000257201646090535,
2270
+ "loss": 0.7509,
2271
+ "step": 1885
2272
+ },
2273
+ {
2274
+ "epoch": 0.75,
2275
+ "learning_rate": 0.0002567901234567901,
2276
+ "loss": 0.7058,
2277
+ "step": 1890
2278
+ },
2279
+ {
2280
+ "epoch": 0.76,
2281
+ "learning_rate": 0.00025637860082304526,
2282
+ "loss": 0.7635,
2283
+ "step": 1895
2284
+ },
2285
+ {
2286
+ "epoch": 0.76,
2287
+ "learning_rate": 0.0002559670781893004,
2288
+ "loss": 0.734,
2289
+ "step": 1900
2290
+ },
2291
+ {
2292
+ "epoch": 0.76,
2293
+ "learning_rate": 0.00025555555555555553,
2294
+ "loss": 0.7416,
2295
+ "step": 1905
2296
+ },
2297
+ {
2298
+ "epoch": 0.76,
2299
+ "learning_rate": 0.0002551440329218107,
2300
+ "loss": 0.7071,
2301
+ "step": 1910
2302
+ },
2303
+ {
2304
+ "epoch": 0.76,
2305
+ "learning_rate": 0.00025473251028806584,
2306
+ "loss": 0.7275,
2307
+ "step": 1915
2308
+ },
2309
+ {
2310
+ "epoch": 0.77,
2311
+ "learning_rate": 0.000254320987654321,
2312
+ "loss": 0.7413,
2313
+ "step": 1920
2314
+ },
2315
+ {
2316
+ "epoch": 0.77,
2317
+ "learning_rate": 0.0002539094650205761,
2318
+ "loss": 0.7703,
2319
+ "step": 1925
2320
+ },
2321
+ {
2322
+ "epoch": 0.77,
2323
+ "learning_rate": 0.00025349794238683127,
2324
+ "loss": 0.7331,
2325
+ "step": 1930
2326
+ },
2327
+ {
2328
+ "epoch": 0.77,
2329
+ "learning_rate": 0.0002530864197530864,
2330
+ "loss": 0.7251,
2331
+ "step": 1935
2332
+ },
2333
+ {
2334
+ "epoch": 0.77,
2335
+ "learning_rate": 0.0002526748971193416,
2336
+ "loss": 0.7341,
2337
+ "step": 1940
2338
+ },
2339
+ {
2340
+ "epoch": 0.78,
2341
+ "learning_rate": 0.00025226337448559674,
2342
+ "loss": 0.7079,
2343
+ "step": 1945
2344
+ },
2345
+ {
2346
+ "epoch": 0.78,
2347
+ "learning_rate": 0.00025185185185185185,
2348
+ "loss": 0.7615,
2349
+ "step": 1950
2350
+ },
2351
+ {
2352
+ "epoch": 0.78,
2353
+ "learning_rate": 0.000251440329218107,
2354
+ "loss": 0.7144,
2355
+ "step": 1955
2356
+ },
2357
+ {
2358
+ "epoch": 0.78,
2359
+ "learning_rate": 0.00025102880658436216,
2360
+ "loss": 0.7527,
2361
+ "step": 1960
2362
+ },
2363
+ {
2364
+ "epoch": 0.78,
2365
+ "learning_rate": 0.0002506172839506173,
2366
+ "loss": 0.7327,
2367
+ "step": 1965
2368
+ },
2369
+ {
2370
+ "epoch": 0.79,
2371
+ "learning_rate": 0.0002502057613168725,
2372
+ "loss": 0.7173,
2373
+ "step": 1970
2374
+ },
2375
+ {
2376
+ "epoch": 0.79,
2377
+ "learning_rate": 0.0002497942386831276,
2378
+ "loss": 0.7239,
2379
+ "step": 1975
2380
+ },
2381
+ {
2382
+ "epoch": 0.79,
2383
+ "learning_rate": 0.00024938271604938274,
2384
+ "loss": 0.7442,
2385
+ "step": 1980
2386
+ },
2387
+ {
2388
+ "epoch": 0.79,
2389
+ "learning_rate": 0.0002489711934156379,
2390
+ "loss": 0.7396,
2391
+ "step": 1985
2392
+ },
2393
+ {
2394
+ "epoch": 0.79,
2395
+ "learning_rate": 0.000248559670781893,
2396
+ "loss": 0.7365,
2397
+ "step": 1990
2398
+ },
2399
+ {
2400
+ "epoch": 0.8,
2401
+ "learning_rate": 0.00024814814814814816,
2402
+ "loss": 0.7037,
2403
+ "step": 1995
2404
+ },
2405
+ {
2406
+ "epoch": 0.8,
2407
+ "learning_rate": 0.0002477366255144033,
2408
+ "loss": 0.721,
2409
+ "step": 2000
2410
+ }
2411
+ ],
2412
+ "logging_steps": 5,
2413
+ "max_steps": 5010,
2414
+ "num_input_tokens_seen": 0,
2415
+ "num_train_epochs": 2,
2416
+ "save_steps": 500,
2417
+ "total_flos": 8.056468541093708e+18,
2418
+ "train_batch_size": 1,
2419
+ "trial_name": null,
2420
+ "trial_params": null
2421
+ }
save_lora_instruct_r8_4e4_s11_1/checkpoint-2000/training_args.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:43458f4cf6aeb211c730b848f93ab15f483827c314fb4dc1e79dd1f658b7dbc8
3
+ size 5944
save_lora_instruct_r8_4e4_s11_1/checkpoint-2000/zero_to_fp32.py ADDED
@@ -0,0 +1,587 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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):
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
+ elif zero_stage == 3:
216
+ return _get_fp32_state_dict_from_zero3_checkpoint(world_size, fp32_flat_groups, zero_model_states)
217
+
218
+
219
+ def _zero2_merge_frozen_params(state_dict, zero_model_states):
220
+ if zero_model_states[0].frozen_param_shapes is None or len(zero_model_states[0].frozen_param_shapes) == 0:
221
+ return
222
+
223
+ frozen_param_shapes = zero_model_states[0].frozen_param_shapes
224
+ frozen_param_fragments = zero_model_states[0].frozen_param_fragments
225
+
226
+ if debug:
227
+ num_elem = sum(s.numel() for s in frozen_param_shapes.values())
228
+ print(f'rank 0: {FROZEN_PARAM_SHAPES}.numel = {num_elem}')
229
+
230
+ wanted_params = len(frozen_param_shapes)
231
+ wanted_numel = sum(s.numel() for s in frozen_param_shapes.values())
232
+ avail_numel = sum([p.numel() for p in frozen_param_fragments.values()])
233
+ print(f'Frozen params: Have {avail_numel} numels to process.')
234
+ print(f'Frozen params: Need {wanted_numel} numels in {wanted_params} params')
235
+
236
+ total_params = 0
237
+ total_numel = 0
238
+ for name, shape in frozen_param_shapes.items():
239
+ total_params += 1
240
+ unpartitioned_numel = shape.numel()
241
+ total_numel += unpartitioned_numel
242
+
243
+ state_dict[name] = frozen_param_fragments[name]
244
+
245
+ if debug:
246
+ print(f"{name} full shape: {shape} unpartitioned numel {unpartitioned_numel} ")
247
+
248
+ print(f"Reconstructed Frozen fp32 state dict with {total_params} params {total_numel} elements")
249
+
250
+
251
+ def _zero2_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states):
252
+ param_shapes = zero_model_states[0].param_shapes
253
+
254
+ # Reconstruction protocol:
255
+ #
256
+ # XXX: document this
257
+
258
+ if debug:
259
+ for i in range(world_size):
260
+ for j in range(len(fp32_flat_groups[0])):
261
+ print(f"{FP32_FLAT_GROUPS}[{i}][{j}].shape={fp32_flat_groups[i][j].shape}")
262
+
263
+ # XXX: memory usage doubles here (zero2)
264
+ num_param_groups = len(fp32_flat_groups[0])
265
+ merged_single_partition_of_fp32_groups = []
266
+ for i in range(num_param_groups):
267
+ merged_partitions = [sd[i] for sd in fp32_flat_groups]
268
+ full_single_fp32_vector = torch.cat(merged_partitions, 0)
269
+ merged_single_partition_of_fp32_groups.append(full_single_fp32_vector)
270
+ avail_numel = sum(
271
+ [full_single_fp32_vector.numel() for full_single_fp32_vector in merged_single_partition_of_fp32_groups])
272
+
273
+ if debug:
274
+ wanted_params = sum([len(shapes) for shapes in param_shapes])
275
+ wanted_numel = sum([sum(shape.numel() for shape in shapes.values()) for shapes in param_shapes])
276
+ # not asserting if there is a mismatch due to possible padding
277
+ print(f"Have {avail_numel} numels to process.")
278
+ print(f"Need {wanted_numel} numels in {wanted_params} params.")
279
+
280
+ # params
281
+ # XXX: for huge models that can't fit into the host's RAM we will have to recode this to support
282
+ # out-of-core computing solution
283
+ total_numel = 0
284
+ total_params = 0
285
+ for shapes, full_single_fp32_vector in zip(param_shapes, merged_single_partition_of_fp32_groups):
286
+ offset = 0
287
+ avail_numel = full_single_fp32_vector.numel()
288
+ for name, shape in shapes.items():
289
+
290
+ unpartitioned_numel = shape.numel()
291
+ total_numel += unpartitioned_numel
292
+ total_params += 1
293
+
294
+ if debug:
295
+ print(f"{name} full shape: {shape} unpartitioned numel {unpartitioned_numel} ")
296
+ state_dict[name] = full_single_fp32_vector.narrow(0, offset, unpartitioned_numel).view(shape)
297
+ offset += unpartitioned_numel
298
+
299
+ # Z2 started to align to 2*world_size to improve nccl performance. Therefore both offset and
300
+ # avail_numel can differ by anywhere between 0..2*world_size. Due to two unrelated complex
301
+ # paddings performed in the code it's almost impossible to predict the exact numbers w/o the
302
+ # live optimizer object, so we are checking that the numbers are within the right range
303
+ align_to = 2 * world_size
304
+
305
+ def zero2_align(x):
306
+ return align_to * math.ceil(x / align_to)
307
+
308
+ if debug:
309
+ print(f"original offset={offset}, avail_numel={avail_numel}")
310
+
311
+ offset = zero2_align(offset)
312
+ avail_numel = zero2_align(avail_numel)
313
+
314
+ if debug:
315
+ print(f"aligned offset={offset}, avail_numel={avail_numel}")
316
+
317
+ # Sanity check
318
+ if offset != avail_numel:
319
+ raise ValueError(f"consumed {offset} numels out of {avail_numel} - something is wrong")
320
+
321
+ print(f"Reconstructed fp32 state dict with {total_params} params {total_numel} elements")
322
+
323
+
324
+ def _get_fp32_state_dict_from_zero2_checkpoint(world_size, fp32_flat_groups, zero_model_states):
325
+ state_dict = OrderedDict()
326
+
327
+ # buffers
328
+ buffers = zero_model_states[0].buffers
329
+ state_dict.update(buffers)
330
+ if debug:
331
+ print(f"added {len(buffers)} buffers")
332
+
333
+ _zero2_merge_frozen_params(state_dict, zero_model_states)
334
+
335
+ _zero2_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states)
336
+
337
+ # recover shared parameters
338
+ for pair in zero_model_states[0].shared_params:
339
+ if pair[1] in state_dict:
340
+ state_dict[pair[0]] = state_dict[pair[1]]
341
+
342
+ return state_dict
343
+
344
+
345
+ def zero3_partitioned_param_info(unpartitioned_numel, world_size):
346
+ remainder = unpartitioned_numel % world_size
347
+ padding_numel = (world_size - remainder) if remainder else 0
348
+ partitioned_numel = math.ceil(unpartitioned_numel / world_size)
349
+ return partitioned_numel, padding_numel
350
+
351
+
352
+ def _zero3_merge_frozen_params(state_dict, world_size, zero_model_states):
353
+ if zero_model_states[0].frozen_param_shapes is None or len(zero_model_states[0].frozen_param_shapes) == 0:
354
+ return
355
+
356
+ if debug:
357
+ for i in range(world_size):
358
+ num_elem = sum(s.numel() for s in zero_model_states[i].frozen_param_fragments.values())
359
+ print(f'rank {i}: {FROZEN_PARAM_SHAPES}.numel = {num_elem}')
360
+
361
+ frozen_param_shapes = zero_model_states[0].frozen_param_shapes
362
+ wanted_params = len(frozen_param_shapes)
363
+ wanted_numel = sum(s.numel() for s in frozen_param_shapes.values())
364
+ avail_numel = sum([p.numel() for p in zero_model_states[0].frozen_param_fragments.values()]) * world_size
365
+ print(f'Frozen params: Have {avail_numel} numels to process.')
366
+ print(f'Frozen params: Need {wanted_numel} numels in {wanted_params} params')
367
+
368
+ total_params = 0
369
+ total_numel = 0
370
+ for name, shape in zero_model_states[0].frozen_param_shapes.items():
371
+ total_params += 1
372
+ unpartitioned_numel = shape.numel()
373
+ total_numel += unpartitioned_numel
374
+
375
+ param_frags = tuple(model_state.frozen_param_fragments[name] for model_state in zero_model_states)
376
+ state_dict[name] = torch.cat(param_frags, 0).narrow(0, 0, unpartitioned_numel).view(shape)
377
+
378
+ partitioned_numel, partitioned_padding_numel = zero3_partitioned_param_info(unpartitioned_numel, world_size)
379
+
380
+ if debug:
381
+ print(
382
+ f"Frozen params: {total_params} {name} full shape: {shape} partition0 numel={partitioned_numel} partitioned_padding_numel={partitioned_padding_numel}"
383
+ )
384
+
385
+ print(f"Reconstructed Frozen fp32 state dict with {total_params} params {total_numel} elements")
386
+
387
+
388
+ def _zero3_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states):
389
+ param_shapes = zero_model_states[0].param_shapes
390
+ avail_numel = fp32_flat_groups[0].numel() * world_size
391
+ # Reconstruction protocol: For zero3 we need to zip the partitions together at boundary of each
392
+ # param, re-consolidating each param, while dealing with padding if any
393
+
394
+ # merge list of dicts, preserving order
395
+ param_shapes = {k: v for d in param_shapes for k, v in d.items()}
396
+
397
+ if debug:
398
+ for i in range(world_size):
399
+ print(f"{FP32_FLAT_GROUPS}[{i}].shape={fp32_flat_groups[i].shape}")
400
+
401
+ wanted_params = len(param_shapes)
402
+ wanted_numel = sum(shape.numel() for shape in param_shapes.values())
403
+ # not asserting if there is a mismatch due to possible padding
404
+ avail_numel = fp32_flat_groups[0].numel() * world_size
405
+ print(f"Trainable params: Have {avail_numel} numels to process.")
406
+ print(f"Trainable params: Need {wanted_numel} numels in {wanted_params} params.")
407
+
408
+ # params
409
+ # XXX: for huge models that can't fit into the host's RAM we will have to recode this to support
410
+ # out-of-core computing solution
411
+ offset = 0
412
+ total_numel = 0
413
+ total_params = 0
414
+ for name, shape in param_shapes.items():
415
+
416
+ unpartitioned_numel = shape.numel()
417
+ total_numel += unpartitioned_numel
418
+ total_params += 1
419
+
420
+ partitioned_numel, partitioned_padding_numel = zero3_partitioned_param_info(unpartitioned_numel, world_size)
421
+
422
+ if debug:
423
+ print(
424
+ f"Trainable params: {total_params} {name} full shape: {shape} partition0 numel={partitioned_numel} partitioned_padding_numel={partitioned_padding_numel}"
425
+ )
426
+
427
+ # XXX: memory usage doubles here
428
+ state_dict[name] = torch.cat(
429
+ tuple(fp32_flat_groups[i].narrow(0, offset, partitioned_numel) for i in range(world_size)),
430
+ 0).narrow(0, 0, unpartitioned_numel).view(shape)
431
+ offset += partitioned_numel
432
+
433
+ offset *= world_size
434
+
435
+ # Sanity check
436
+ if offset != avail_numel:
437
+ raise ValueError(f"consumed {offset} numels out of {avail_numel} - something is wrong")
438
+
439
+ print(f"Reconstructed Trainable fp32 state dict with {total_params} params {total_numel} elements")
440
+
441
+
442
+ def _get_fp32_state_dict_from_zero3_checkpoint(world_size, fp32_flat_groups, zero_model_states):
443
+ state_dict = OrderedDict()
444
+
445
+ # buffers
446
+ buffers = zero_model_states[0].buffers
447
+ state_dict.update(buffers)
448
+ if debug:
449
+ print(f"added {len(buffers)} buffers")
450
+
451
+ _zero3_merge_frozen_params(state_dict, world_size, zero_model_states)
452
+
453
+ _zero3_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states)
454
+
455
+ # recover shared parameters
456
+ for pair in zero_model_states[0].shared_params:
457
+ if pair[1] in state_dict:
458
+ state_dict[pair[0]] = state_dict[pair[1]]
459
+
460
+ return state_dict
461
+
462
+
463
+ def get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir, tag=None):
464
+ """
465
+ Convert ZeRO 2 or 3 checkpoint into a single fp32 consolidated state_dict that can be loaded with
466
+ ``load_state_dict()`` and used for training without DeepSpeed or shared with others, for example
467
+ via a model hub.
468
+
469
+ Args:
470
+ - ``checkpoint_dir``: path to the desired checkpoint folder
471
+ - ``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``
472
+
473
+ Returns:
474
+ - pytorch ``state_dict``
475
+
476
+ Note: this approach may not work if your application doesn't have sufficient free CPU memory and
477
+ you may need to use the offline approach using the ``zero_to_fp32.py`` script that is saved with
478
+ the checkpoint.
479
+
480
+ A typical usage might be ::
481
+
482
+ from deepspeed.utils.zero_to_fp32 import get_fp32_state_dict_from_zero_checkpoint
483
+ # do the training and checkpoint saving
484
+ state_dict = get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir) # already on cpu
485
+ model = model.cpu() # move to cpu
486
+ model.load_state_dict(state_dict)
487
+ # submit to model hub or save the model to share with others
488
+
489
+ In this example the ``model`` will no longer be usable in the deepspeed context of the same
490
+ application. i.e. you will need to re-initialize the deepspeed engine, since
491
+ ``model.load_state_dict(state_dict)`` will remove all the deepspeed magic from it.
492
+
493
+ If you want it all done for you, use ``load_state_dict_from_zero_checkpoint`` instead.
494
+
495
+ """
496
+ if tag is None:
497
+ latest_path = os.path.join(checkpoint_dir, 'latest')
498
+ if os.path.isfile(latest_path):
499
+ with open(latest_path, 'r') as fd:
500
+ tag = fd.read().strip()
501
+ else:
502
+ raise ValueError(f"Unable to find 'latest' file at {latest_path}")
503
+
504
+ ds_checkpoint_dir = os.path.join(checkpoint_dir, tag)
505
+
506
+ if not os.path.isdir(ds_checkpoint_dir):
507
+ raise FileNotFoundError(f"Directory '{ds_checkpoint_dir}' doesn't exist")
508
+
509
+ return _get_fp32_state_dict_from_zero_checkpoint(ds_checkpoint_dir)
510
+
511
+
512
+ def convert_zero_checkpoint_to_fp32_state_dict(checkpoint_dir, output_file, tag=None):
513
+ """
514
+ Convert ZeRO 2 or 3 checkpoint into a single fp32 consolidated ``state_dict`` file that can be
515
+ loaded with ``torch.load(file)`` + ``load_state_dict()`` and used for training without DeepSpeed.
516
+
517
+ Args:
518
+ - ``checkpoint_dir``: path to the desired checkpoint folder. (one that contains the tag-folder, like ``global_step14``)
519
+ - ``output_file``: path to the pytorch fp32 state_dict output file (e.g. path/pytorch_model.bin)
520
+ - ``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``
521
+ """
522
+
523
+ state_dict = get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir, tag)
524
+ print(f"Saving fp32 state dict to {output_file}")
525
+ torch.save(state_dict, output_file)
526
+
527
+
528
+ def load_state_dict_from_zero_checkpoint(model, checkpoint_dir, tag=None):
529
+ """
530
+ 1. Put the provided model to cpu
531
+ 2. Convert ZeRO 2 or 3 checkpoint into a single fp32 consolidated ``state_dict``
532
+ 3. Load it into the provided model
533
+
534
+ Args:
535
+ - ``model``: the model object to update
536
+ - ``checkpoint_dir``: path to the desired checkpoint folder. (one that contains the tag-folder, like ``global_step14``)
537
+ - ``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``
538
+
539
+ Returns:
540
+ - ``model`: modified model
541
+
542
+ Make sure you have plenty of CPU memory available before you call this function. If you don't
543
+ have enough use the ``zero_to_fp32.py`` utility to do the conversion. You will find it
544
+ conveniently placed for you in the checkpoint folder.
545
+
546
+ A typical usage might be ::
547
+
548
+ from deepspeed.utils.zero_to_fp32 import load_state_dict_from_zero_checkpoint
549
+ model = load_state_dict_from_zero_checkpoint(trainer.model, checkpoint_dir)
550
+ # submit to model hub or save the model to share with others
551
+
552
+ Note, that once this was run, the ``model`` will no longer be usable in the deepspeed context
553
+ of the same application. i.e. you will need to re-initialize the deepspeed engine, since
554
+ ``model.load_state_dict(state_dict)`` will remove all the deepspeed magic from it.
555
+
556
+ """
557
+ logger.info(f"Extracting fp32 weights")
558
+ state_dict = get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir, tag)
559
+
560
+ logger.info(f"Overwriting model with fp32 weights")
561
+ model = model.cpu()
562
+ model.load_state_dict(state_dict, strict=False)
563
+
564
+ return model
565
+
566
+
567
+ if __name__ == "__main__":
568
+
569
+ parser = argparse.ArgumentParser()
570
+ parser.add_argument("checkpoint_dir",
571
+ type=str,
572
+ help="path to the desired checkpoint folder, e.g., path/checkpoint-12")
573
+ parser.add_argument(
574
+ "output_file",
575
+ type=str,
576
+ help="path to the pytorch fp32 state_dict output file (e.g. path/checkpoint-12/pytorch_model.bin)")
577
+ parser.add_argument("-t",
578
+ "--tag",
579
+ type=str,
580
+ default=None,
581
+ help="checkpoint tag used as a unique identifier for checkpoint. e.g., global_step1")
582
+ parser.add_argument("-d", "--debug", action='store_true', help="enable debug")
583
+ args = parser.parse_args()
584
+
585
+ debug = args.debug
586
+
587
+ convert_zero_checkpoint_to_fp32_state_dict(args.checkpoint_dir, args.output_file, tag=args.tag)
save_lora_instruct_r8_4e4_s11_1/checkpoint-2500/README.md ADDED
@@ -0,0 +1,202 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ base_model: meta-llama/Llama-2-7b-hf
3
+ library_name: peft
4
+ ---
5
+
6
+ # Model Card for Model ID
7
+
8
+ <!-- Provide a quick summary of what the model is/does. -->
9
+
10
+
11
+
12
+ ## Model Details
13
+
14
+ ### Model Description
15
+
16
+ <!-- Provide a longer summary of what this model is. -->
17
+
18
+
19
+
20
+ - **Developed by:** [More Information Needed]
21
+ - **Funded by [optional]:** [More Information Needed]
22
+ - **Shared by [optional]:** [More Information Needed]
23
+ - **Model type:** [More Information Needed]
24
+ - **Language(s) (NLP):** [More Information Needed]
25
+ - **License:** [More Information Needed]
26
+ - **Finetuned from model [optional]:** [More Information Needed]
27
+
28
+ ### Model Sources [optional]
29
+
30
+ <!-- Provide the basic links for the model. -->
31
+
32
+ - **Repository:** [More Information Needed]
33
+ - **Paper [optional]:** [More Information Needed]
34
+ - **Demo [optional]:** [More Information Needed]
35
+
36
+ ## Uses
37
+
38
+ <!-- Address questions around how the model is intended to be used, including the foreseeable users of the model and those affected by the model. -->
39
+
40
+ ### Direct Use
41
+
42
+ <!-- This section is for the model use without fine-tuning or plugging into a larger ecosystem/app. -->
43
+
44
+ [More Information Needed]
45
+
46
+ ### Downstream Use [optional]
47
+
48
+ <!-- This section is for the model use when fine-tuned for a task, or when plugged into a larger ecosystem/app -->
49
+
50
+ [More Information Needed]
51
+
52
+ ### Out-of-Scope Use
53
+
54
+ <!-- This section addresses misuse, malicious use, and uses that the model will not work well for. -->
55
+
56
+ [More Information Needed]
57
+
58
+ ## Bias, Risks, and Limitations
59
+
60
+ <!-- This section is meant to convey both technical and sociotechnical limitations. -->
61
+
62
+ [More Information Needed]
63
+
64
+ ### Recommendations
65
+
66
+ <!-- This section is meant to convey recommendations with respect to the bias, risk, and technical limitations. -->
67
+
68
+ Users (both direct and downstream) should be made aware of the risks, biases and limitations of the model. More information needed for further recommendations.
69
+
70
+ ## How to Get Started with the Model
71
+
72
+ Use the code below to get started with the model.
73
+
74
+ [More Information Needed]
75
+
76
+ ## Training Details
77
+
78
+ ### Training Data
79
+
80
+ <!-- This should link to a Dataset Card, perhaps with a short stub of information on what the training data is all about as well as documentation related to data pre-processing or additional filtering. -->
81
+
82
+ [More Information Needed]
83
+
84
+ ### Training Procedure
85
+
86
+ <!-- This relates heavily to the Technical Specifications. Content here should link to that section when it is relevant to the training procedure. -->
87
+
88
+ #### Preprocessing [optional]
89
+
90
+ [More Information Needed]
91
+
92
+
93
+ #### Training Hyperparameters
94
+
95
+ - **Training regime:** [More Information Needed] <!--fp32, fp16 mixed precision, bf16 mixed precision, bf16 non-mixed precision, fp16 non-mixed precision, fp8 mixed precision -->
96
+
97
+ #### Speeds, Sizes, Times [optional]
98
+
99
+ <!-- This section provides information about throughput, start/end time, checkpoint size if relevant, etc. -->
100
+
101
+ [More Information Needed]
102
+
103
+ ## Evaluation
104
+
105
+ <!-- This section describes the evaluation protocols and provides the results. -->
106
+
107
+ ### Testing Data, Factors & Metrics
108
+
109
+ #### Testing Data
110
+
111
+ <!-- This should link to a Dataset Card if possible. -->
112
+
113
+ [More Information Needed]
114
+
115
+ #### Factors
116
+
117
+ <!-- These are the things the evaluation is disaggregating by, e.g., subpopulations or domains. -->
118
+
119
+ [More Information Needed]
120
+
121
+ #### Metrics
122
+
123
+ <!-- These are the evaluation metrics being used, ideally with a description of why. -->
124
+
125
+ [More Information Needed]
126
+
127
+ ### Results
128
+
129
+ [More Information Needed]
130
+
131
+ #### Summary
132
+
133
+
134
+
135
+ ## Model Examination [optional]
136
+
137
+ <!-- Relevant interpretability work for the model goes here -->
138
+
139
+ [More Information Needed]
140
+
141
+ ## Environmental Impact
142
+
143
+ <!-- Total emissions (in grams of CO2eq) and additional considerations, such as electricity usage, go here. Edit the suggested text below accordingly -->
144
+
145
+ Carbon emissions can be estimated using the [Machine Learning Impact calculator](https://mlco2.github.io/impact#compute) presented in [Lacoste et al. (2019)](https://arxiv.org/abs/1910.09700).
146
+
147
+ - **Hardware Type:** [More Information Needed]
148
+ - **Hours used:** [More Information Needed]
149
+ - **Cloud Provider:** [More Information Needed]
150
+ - **Compute Region:** [More Information Needed]
151
+ - **Carbon Emitted:** [More Information Needed]
152
+
153
+ ## Technical Specifications [optional]
154
+
155
+ ### Model Architecture and Objective
156
+
157
+ [More Information Needed]
158
+
159
+ ### Compute Infrastructure
160
+
161
+ [More Information Needed]
162
+
163
+ #### Hardware
164
+
165
+ [More Information Needed]
166
+
167
+ #### Software
168
+
169
+ [More Information Needed]
170
+
171
+ ## Citation [optional]
172
+
173
+ <!-- If there is a paper or blog post introducing the model, the APA and Bibtex information for that should go in this section. -->
174
+
175
+ **BibTeX:**
176
+
177
+ [More Information Needed]
178
+
179
+ **APA:**
180
+
181
+ [More Information Needed]
182
+
183
+ ## Glossary [optional]
184
+
185
+ <!-- If relevant, include terms and calculations in this section that can help readers understand the model or model card. -->
186
+
187
+ [More Information Needed]
188
+
189
+ ## More Information [optional]
190
+
191
+ [More Information Needed]
192
+
193
+ ## Model Card Authors [optional]
194
+
195
+ [More Information Needed]
196
+
197
+ ## Model Card Contact
198
+
199
+ [More Information Needed]
200
+ ### Framework versions
201
+
202
+ - PEFT 0.9.0
save_lora_instruct_r8_4e4_s11_1/checkpoint-2500/adapter_config.json ADDED
@@ -0,0 +1,35 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "alpha_pattern": {},
3
+ "auto_mapping": null,
4
+ "base_model_name_or_path": "meta-llama/Llama-2-7b-hf",
5
+ "bias": "none",
6
+ "fan_in_fan_out": false,
7
+ "inference_mode": true,
8
+ "init_lora_weights": true,
9
+ "layers_pattern": null,
10
+ "layers_to_transform": null,
11
+ "loftq_config": {},
12
+ "lora_alpha": 16,
13
+ "lora_dropout": 0.05,
14
+ "megatron_config": null,
15
+ "megatron_core": "megatron.core",
16
+ "modules_to_save": null,
17
+ "mora_type": 1,
18
+ "peft_type": "LORA",
19
+ "r": 8,
20
+ "rank_pattern": {},
21
+ "revision": null,
22
+ "target_modules": [
23
+ "q_proj",
24
+ "k_proj",
25
+ "v_proj",
26
+ "o_proj",
27
+ "gate_proj",
28
+ "down_proj",
29
+ "up_proj"
30
+ ],
31
+ "task_type": "CAUSAL_LM",
32
+ "use_dora": false,
33
+ "use_mora": false,
34
+ "use_rslora": false
35
+ }
save_lora_instruct_r8_4e4_s11_1/checkpoint-2500/adapter_model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:6b416d3e258a582396075c05428bff40bfdfca1eb90c49c8d3772f778275bc31
3
+ size 564342240
save_lora_instruct_r8_4e4_s11_1/checkpoint-2500/global_step2500/bf16_zero_pp_rank_0_mp_rank_00_optim_states.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:dcdc9e140d08d1a6a769adf0c31faed7eb8110dc4b7f6518a08d49a23e02294f
3
+ size 239914224
save_lora_instruct_r8_4e4_s11_1/checkpoint-2500/global_step2500/mp_rank_00_model_states.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:f60f73c4622f20dc7ff3cfbb9b219fee35bf8134a14b777c6845e321c049fb20
3
+ size 40303404
save_lora_instruct_r8_4e4_s11_1/checkpoint-2500/latest ADDED
@@ -0,0 +1 @@
 
 
1
+ global_step2500
save_lora_instruct_r8_4e4_s11_1/checkpoint-2500/rng_state.pth ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:9f825f29d46d68de12985e875822b27efaac55bdba6c419fb26c2f1eb068aef1
3
+ size 14244
save_lora_instruct_r8_4e4_s11_1/checkpoint-2500/scheduler.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:a13f4f8ba2e5988cc6fd82905cf4ea363a21a822e658eabdc1f337bcaed20957
3
+ size 1064
save_lora_instruct_r8_4e4_s11_1/checkpoint-2500/trainer_state.json ADDED
@@ -0,0 +1,3021 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "best_metric": null,
3
+ "best_model_checkpoint": null,
4
+ "epoch": 0.9979106246296816,
5
+ "eval_steps": 500,
6
+ "global_step": 2500,
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.0,
13
+ "learning_rate": 1.3333333333333333e-05,
14
+ "loss": 1.3798,
15
+ "step": 5
16
+ },
17
+ {
18
+ "epoch": 0.0,
19
+ "learning_rate": 2.6666666666666667e-05,
20
+ "loss": 1.3917,
21
+ "step": 10
22
+ },
23
+ {
24
+ "epoch": 0.01,
25
+ "learning_rate": 4e-05,
26
+ "loss": 1.2862,
27
+ "step": 15
28
+ },
29
+ {
30
+ "epoch": 0.01,
31
+ "learning_rate": 5.333333333333333e-05,
32
+ "loss": 1.2046,
33
+ "step": 20
34
+ },
35
+ {
36
+ "epoch": 0.01,
37
+ "learning_rate": 6.666666666666667e-05,
38
+ "loss": 1.0634,
39
+ "step": 25
40
+ },
41
+ {
42
+ "epoch": 0.01,
43
+ "learning_rate": 8e-05,
44
+ "loss": 1.0273,
45
+ "step": 30
46
+ },
47
+ {
48
+ "epoch": 0.01,
49
+ "learning_rate": 9.333333333333334e-05,
50
+ "loss": 1.0472,
51
+ "step": 35
52
+ },
53
+ {
54
+ "epoch": 0.02,
55
+ "learning_rate": 0.00010666666666666667,
56
+ "loss": 1.0301,
57
+ "step": 40
58
+ },
59
+ {
60
+ "epoch": 0.02,
61
+ "learning_rate": 0.00012,
62
+ "loss": 0.9335,
63
+ "step": 45
64
+ },
65
+ {
66
+ "epoch": 0.02,
67
+ "learning_rate": 0.00013333333333333334,
68
+ "loss": 0.921,
69
+ "step": 50
70
+ },
71
+ {
72
+ "epoch": 0.02,
73
+ "learning_rate": 0.00014666666666666666,
74
+ "loss": 0.9506,
75
+ "step": 55
76
+ },
77
+ {
78
+ "epoch": 0.02,
79
+ "learning_rate": 0.00016,
80
+ "loss": 0.8876,
81
+ "step": 60
82
+ },
83
+ {
84
+ "epoch": 0.03,
85
+ "learning_rate": 0.00017333333333333334,
86
+ "loss": 0.9335,
87
+ "step": 65
88
+ },
89
+ {
90
+ "epoch": 0.03,
91
+ "learning_rate": 0.0001866666666666667,
92
+ "loss": 0.8554,
93
+ "step": 70
94
+ },
95
+ {
96
+ "epoch": 0.03,
97
+ "learning_rate": 0.0002,
98
+ "loss": 0.8537,
99
+ "step": 75
100
+ },
101
+ {
102
+ "epoch": 0.03,
103
+ "learning_rate": 0.00021333333333333333,
104
+ "loss": 0.9033,
105
+ "step": 80
106
+ },
107
+ {
108
+ "epoch": 0.03,
109
+ "learning_rate": 0.00022666666666666668,
110
+ "loss": 0.8203,
111
+ "step": 85
112
+ },
113
+ {
114
+ "epoch": 0.04,
115
+ "learning_rate": 0.00024,
116
+ "loss": 0.8611,
117
+ "step": 90
118
+ },
119
+ {
120
+ "epoch": 0.04,
121
+ "learning_rate": 0.00025333333333333333,
122
+ "loss": 0.8303,
123
+ "step": 95
124
+ },
125
+ {
126
+ "epoch": 0.04,
127
+ "learning_rate": 0.0002666666666666667,
128
+ "loss": 0.8528,
129
+ "step": 100
130
+ },
131
+ {
132
+ "epoch": 0.04,
133
+ "learning_rate": 0.00028,
134
+ "loss": 0.8537,
135
+ "step": 105
136
+ },
137
+ {
138
+ "epoch": 0.04,
139
+ "learning_rate": 0.0002933333333333333,
140
+ "loss": 0.8286,
141
+ "step": 110
142
+ },
143
+ {
144
+ "epoch": 0.05,
145
+ "learning_rate": 0.0003066666666666667,
146
+ "loss": 0.8449,
147
+ "step": 115
148
+ },
149
+ {
150
+ "epoch": 0.05,
151
+ "learning_rate": 0.00032,
152
+ "loss": 0.8377,
153
+ "step": 120
154
+ },
155
+ {
156
+ "epoch": 0.05,
157
+ "learning_rate": 0.0003333333333333334,
158
+ "loss": 0.8419,
159
+ "step": 125
160
+ },
161
+ {
162
+ "epoch": 0.05,
163
+ "learning_rate": 0.00034666666666666667,
164
+ "loss": 0.8265,
165
+ "step": 130
166
+ },
167
+ {
168
+ "epoch": 0.05,
169
+ "learning_rate": 0.00036,
170
+ "loss": 0.8037,
171
+ "step": 135
172
+ },
173
+ {
174
+ "epoch": 0.06,
175
+ "learning_rate": 0.0003733333333333334,
176
+ "loss": 0.7924,
177
+ "step": 140
178
+ },
179
+ {
180
+ "epoch": 0.06,
181
+ "learning_rate": 0.00038666666666666667,
182
+ "loss": 0.8245,
183
+ "step": 145
184
+ },
185
+ {
186
+ "epoch": 0.06,
187
+ "learning_rate": 0.0004,
188
+ "loss": 0.8388,
189
+ "step": 150
190
+ },
191
+ {
192
+ "epoch": 0.06,
193
+ "learning_rate": 0.0003995884773662552,
194
+ "loss": 0.8066,
195
+ "step": 155
196
+ },
197
+ {
198
+ "epoch": 0.06,
199
+ "learning_rate": 0.0003991769547325103,
200
+ "loss": 0.8107,
201
+ "step": 160
202
+ },
203
+ {
204
+ "epoch": 0.07,
205
+ "learning_rate": 0.00039876543209876544,
206
+ "loss": 0.8005,
207
+ "step": 165
208
+ },
209
+ {
210
+ "epoch": 0.07,
211
+ "learning_rate": 0.0003983539094650206,
212
+ "loss": 0.7727,
213
+ "step": 170
214
+ },
215
+ {
216
+ "epoch": 0.07,
217
+ "learning_rate": 0.00039794238683127576,
218
+ "loss": 0.8276,
219
+ "step": 175
220
+ },
221
+ {
222
+ "epoch": 0.07,
223
+ "learning_rate": 0.00039753086419753086,
224
+ "loss": 0.8464,
225
+ "step": 180
226
+ },
227
+ {
228
+ "epoch": 0.07,
229
+ "learning_rate": 0.000397119341563786,
230
+ "loss": 0.8348,
231
+ "step": 185
232
+ },
233
+ {
234
+ "epoch": 0.08,
235
+ "learning_rate": 0.0003967078189300412,
236
+ "loss": 0.8228,
237
+ "step": 190
238
+ },
239
+ {
240
+ "epoch": 0.08,
241
+ "learning_rate": 0.0003962962962962963,
242
+ "loss": 0.8254,
243
+ "step": 195
244
+ },
245
+ {
246
+ "epoch": 0.08,
247
+ "learning_rate": 0.00039588477366255144,
248
+ "loss": 0.817,
249
+ "step": 200
250
+ },
251
+ {
252
+ "epoch": 0.08,
253
+ "learning_rate": 0.0003954732510288066,
254
+ "loss": 0.8365,
255
+ "step": 205
256
+ },
257
+ {
258
+ "epoch": 0.08,
259
+ "learning_rate": 0.0003950617283950617,
260
+ "loss": 0.793,
261
+ "step": 210
262
+ },
263
+ {
264
+ "epoch": 0.09,
265
+ "learning_rate": 0.00039465020576131686,
266
+ "loss": 0.8014,
267
+ "step": 215
268
+ },
269
+ {
270
+ "epoch": 0.09,
271
+ "learning_rate": 0.000394238683127572,
272
+ "loss": 0.8049,
273
+ "step": 220
274
+ },
275
+ {
276
+ "epoch": 0.09,
277
+ "learning_rate": 0.0003938271604938272,
278
+ "loss": 0.7841,
279
+ "step": 225
280
+ },
281
+ {
282
+ "epoch": 0.09,
283
+ "learning_rate": 0.0003934156378600823,
284
+ "loss": 0.7977,
285
+ "step": 230
286
+ },
287
+ {
288
+ "epoch": 0.09,
289
+ "learning_rate": 0.00039300411522633744,
290
+ "loss": 0.8299,
291
+ "step": 235
292
+ },
293
+ {
294
+ "epoch": 0.1,
295
+ "learning_rate": 0.0003925925925925926,
296
+ "loss": 0.7729,
297
+ "step": 240
298
+ },
299
+ {
300
+ "epoch": 0.1,
301
+ "learning_rate": 0.00039218106995884776,
302
+ "loss": 0.8082,
303
+ "step": 245
304
+ },
305
+ {
306
+ "epoch": 0.1,
307
+ "learning_rate": 0.0003917695473251029,
308
+ "loss": 0.8173,
309
+ "step": 250
310
+ },
311
+ {
312
+ "epoch": 0.1,
313
+ "learning_rate": 0.000391358024691358,
314
+ "loss": 0.8379,
315
+ "step": 255
316
+ },
317
+ {
318
+ "epoch": 0.1,
319
+ "learning_rate": 0.0003909465020576132,
320
+ "loss": 0.7962,
321
+ "step": 260
322
+ },
323
+ {
324
+ "epoch": 0.11,
325
+ "learning_rate": 0.00039053497942386834,
326
+ "loss": 0.8067,
327
+ "step": 265
328
+ },
329
+ {
330
+ "epoch": 0.11,
331
+ "learning_rate": 0.0003901234567901235,
332
+ "loss": 0.7915,
333
+ "step": 270
334
+ },
335
+ {
336
+ "epoch": 0.11,
337
+ "learning_rate": 0.00038971193415637866,
338
+ "loss": 0.7905,
339
+ "step": 275
340
+ },
341
+ {
342
+ "epoch": 0.11,
343
+ "learning_rate": 0.00038930041152263376,
344
+ "loss": 0.7862,
345
+ "step": 280
346
+ },
347
+ {
348
+ "epoch": 0.11,
349
+ "learning_rate": 0.0003888888888888889,
350
+ "loss": 0.7709,
351
+ "step": 285
352
+ },
353
+ {
354
+ "epoch": 0.12,
355
+ "learning_rate": 0.0003884773662551441,
356
+ "loss": 0.7773,
357
+ "step": 290
358
+ },
359
+ {
360
+ "epoch": 0.12,
361
+ "learning_rate": 0.00038806584362139924,
362
+ "loss": 0.8068,
363
+ "step": 295
364
+ },
365
+ {
366
+ "epoch": 0.12,
367
+ "learning_rate": 0.00038765432098765434,
368
+ "loss": 0.7962,
369
+ "step": 300
370
+ },
371
+ {
372
+ "epoch": 0.12,
373
+ "learning_rate": 0.0003872427983539095,
374
+ "loss": 0.7894,
375
+ "step": 305
376
+ },
377
+ {
378
+ "epoch": 0.12,
379
+ "learning_rate": 0.00038683127572016466,
380
+ "loss": 0.7705,
381
+ "step": 310
382
+ },
383
+ {
384
+ "epoch": 0.13,
385
+ "learning_rate": 0.00038641975308641976,
386
+ "loss": 0.7882,
387
+ "step": 315
388
+ },
389
+ {
390
+ "epoch": 0.13,
391
+ "learning_rate": 0.0003860082304526749,
392
+ "loss": 0.7865,
393
+ "step": 320
394
+ },
395
+ {
396
+ "epoch": 0.13,
397
+ "learning_rate": 0.0003855967078189301,
398
+ "loss": 0.7939,
399
+ "step": 325
400
+ },
401
+ {
402
+ "epoch": 0.13,
403
+ "learning_rate": 0.0003851851851851852,
404
+ "loss": 0.7724,
405
+ "step": 330
406
+ },
407
+ {
408
+ "epoch": 0.13,
409
+ "learning_rate": 0.00038477366255144034,
410
+ "loss": 0.7771,
411
+ "step": 335
412
+ },
413
+ {
414
+ "epoch": 0.14,
415
+ "learning_rate": 0.0003843621399176955,
416
+ "loss": 0.7941,
417
+ "step": 340
418
+ },
419
+ {
420
+ "epoch": 0.14,
421
+ "learning_rate": 0.00038395061728395066,
422
+ "loss": 0.7822,
423
+ "step": 345
424
+ },
425
+ {
426
+ "epoch": 0.14,
427
+ "learning_rate": 0.00038353909465020577,
428
+ "loss": 0.8143,
429
+ "step": 350
430
+ },
431
+ {
432
+ "epoch": 0.14,
433
+ "learning_rate": 0.0003831275720164609,
434
+ "loss": 0.795,
435
+ "step": 355
436
+ },
437
+ {
438
+ "epoch": 0.14,
439
+ "learning_rate": 0.0003827160493827161,
440
+ "loss": 0.8049,
441
+ "step": 360
442
+ },
443
+ {
444
+ "epoch": 0.15,
445
+ "learning_rate": 0.0003823045267489712,
446
+ "loss": 0.8309,
447
+ "step": 365
448
+ },
449
+ {
450
+ "epoch": 0.15,
451
+ "learning_rate": 0.00038189300411522635,
452
+ "loss": 0.8314,
453
+ "step": 370
454
+ },
455
+ {
456
+ "epoch": 0.15,
457
+ "learning_rate": 0.0003814814814814815,
458
+ "loss": 0.801,
459
+ "step": 375
460
+ },
461
+ {
462
+ "epoch": 0.15,
463
+ "learning_rate": 0.00038106995884773666,
464
+ "loss": 0.8084,
465
+ "step": 380
466
+ },
467
+ {
468
+ "epoch": 0.15,
469
+ "learning_rate": 0.00038065843621399177,
470
+ "loss": 0.8129,
471
+ "step": 385
472
+ },
473
+ {
474
+ "epoch": 0.16,
475
+ "learning_rate": 0.0003802469135802469,
476
+ "loss": 0.7859,
477
+ "step": 390
478
+ },
479
+ {
480
+ "epoch": 0.16,
481
+ "learning_rate": 0.0003798353909465021,
482
+ "loss": 0.7874,
483
+ "step": 395
484
+ },
485
+ {
486
+ "epoch": 0.16,
487
+ "learning_rate": 0.0003794238683127572,
488
+ "loss": 0.7548,
489
+ "step": 400
490
+ },
491
+ {
492
+ "epoch": 0.16,
493
+ "learning_rate": 0.00037901234567901235,
494
+ "loss": 0.8092,
495
+ "step": 405
496
+ },
497
+ {
498
+ "epoch": 0.16,
499
+ "learning_rate": 0.0003786008230452675,
500
+ "loss": 0.8041,
501
+ "step": 410
502
+ },
503
+ {
504
+ "epoch": 0.17,
505
+ "learning_rate": 0.00037818930041152266,
506
+ "loss": 0.777,
507
+ "step": 415
508
+ },
509
+ {
510
+ "epoch": 0.17,
511
+ "learning_rate": 0.00037777777777777777,
512
+ "loss": 0.7699,
513
+ "step": 420
514
+ },
515
+ {
516
+ "epoch": 0.17,
517
+ "learning_rate": 0.00037736625514403293,
518
+ "loss": 0.781,
519
+ "step": 425
520
+ },
521
+ {
522
+ "epoch": 0.17,
523
+ "learning_rate": 0.0003769547325102881,
524
+ "loss": 0.7504,
525
+ "step": 430
526
+ },
527
+ {
528
+ "epoch": 0.17,
529
+ "learning_rate": 0.0003765432098765432,
530
+ "loss": 0.7974,
531
+ "step": 435
532
+ },
533
+ {
534
+ "epoch": 0.18,
535
+ "learning_rate": 0.00037613168724279835,
536
+ "loss": 0.7663,
537
+ "step": 440
538
+ },
539
+ {
540
+ "epoch": 0.18,
541
+ "learning_rate": 0.0003757201646090535,
542
+ "loss": 0.8013,
543
+ "step": 445
544
+ },
545
+ {
546
+ "epoch": 0.18,
547
+ "learning_rate": 0.00037530864197530867,
548
+ "loss": 0.7453,
549
+ "step": 450
550
+ },
551
+ {
552
+ "epoch": 0.18,
553
+ "learning_rate": 0.00037489711934156377,
554
+ "loss": 0.7425,
555
+ "step": 455
556
+ },
557
+ {
558
+ "epoch": 0.18,
559
+ "learning_rate": 0.00037448559670781893,
560
+ "loss": 0.7582,
561
+ "step": 460
562
+ },
563
+ {
564
+ "epoch": 0.19,
565
+ "learning_rate": 0.0003740740740740741,
566
+ "loss": 0.7801,
567
+ "step": 465
568
+ },
569
+ {
570
+ "epoch": 0.19,
571
+ "learning_rate": 0.00037366255144032925,
572
+ "loss": 0.7809,
573
+ "step": 470
574
+ },
575
+ {
576
+ "epoch": 0.19,
577
+ "learning_rate": 0.0003732510288065844,
578
+ "loss": 0.7749,
579
+ "step": 475
580
+ },
581
+ {
582
+ "epoch": 0.19,
583
+ "learning_rate": 0.00037283950617283956,
584
+ "loss": 0.7807,
585
+ "step": 480
586
+ },
587
+ {
588
+ "epoch": 0.19,
589
+ "learning_rate": 0.00037242798353909467,
590
+ "loss": 0.7715,
591
+ "step": 485
592
+ },
593
+ {
594
+ "epoch": 0.2,
595
+ "learning_rate": 0.0003720164609053498,
596
+ "loss": 0.7356,
597
+ "step": 490
598
+ },
599
+ {
600
+ "epoch": 0.2,
601
+ "learning_rate": 0.000371604938271605,
602
+ "loss": 0.7674,
603
+ "step": 495
604
+ },
605
+ {
606
+ "epoch": 0.2,
607
+ "learning_rate": 0.00037119341563786014,
608
+ "loss": 0.7542,
609
+ "step": 500
610
+ },
611
+ {
612
+ "epoch": 0.2,
613
+ "learning_rate": 0.00037078189300411525,
614
+ "loss": 0.7583,
615
+ "step": 505
616
+ },
617
+ {
618
+ "epoch": 0.2,
619
+ "learning_rate": 0.0003703703703703704,
620
+ "loss": 0.7767,
621
+ "step": 510
622
+ },
623
+ {
624
+ "epoch": 0.21,
625
+ "learning_rate": 0.00036995884773662556,
626
+ "loss": 0.7853,
627
+ "step": 515
628
+ },
629
+ {
630
+ "epoch": 0.21,
631
+ "learning_rate": 0.00036954732510288067,
632
+ "loss": 0.7733,
633
+ "step": 520
634
+ },
635
+ {
636
+ "epoch": 0.21,
637
+ "learning_rate": 0.00036913580246913583,
638
+ "loss": 0.7758,
639
+ "step": 525
640
+ },
641
+ {
642
+ "epoch": 0.21,
643
+ "learning_rate": 0.000368724279835391,
644
+ "loss": 0.7698,
645
+ "step": 530
646
+ },
647
+ {
648
+ "epoch": 0.21,
649
+ "learning_rate": 0.00036831275720164614,
650
+ "loss": 0.7805,
651
+ "step": 535
652
+ },
653
+ {
654
+ "epoch": 0.22,
655
+ "learning_rate": 0.00036790123456790125,
656
+ "loss": 0.7573,
657
+ "step": 540
658
+ },
659
+ {
660
+ "epoch": 0.22,
661
+ "learning_rate": 0.0003674897119341564,
662
+ "loss": 0.7709,
663
+ "step": 545
664
+ },
665
+ {
666
+ "epoch": 0.22,
667
+ "learning_rate": 0.00036707818930041157,
668
+ "loss": 0.7994,
669
+ "step": 550
670
+ },
671
+ {
672
+ "epoch": 0.22,
673
+ "learning_rate": 0.00036666666666666667,
674
+ "loss": 0.7363,
675
+ "step": 555
676
+ },
677
+ {
678
+ "epoch": 0.22,
679
+ "learning_rate": 0.00036625514403292183,
680
+ "loss": 0.7478,
681
+ "step": 560
682
+ },
683
+ {
684
+ "epoch": 0.23,
685
+ "learning_rate": 0.000365843621399177,
686
+ "loss": 0.8188,
687
+ "step": 565
688
+ },
689
+ {
690
+ "epoch": 0.23,
691
+ "learning_rate": 0.0003654320987654321,
692
+ "loss": 0.7524,
693
+ "step": 570
694
+ },
695
+ {
696
+ "epoch": 0.23,
697
+ "learning_rate": 0.00036502057613168725,
698
+ "loss": 0.7319,
699
+ "step": 575
700
+ },
701
+ {
702
+ "epoch": 0.23,
703
+ "learning_rate": 0.0003646090534979424,
704
+ "loss": 0.7915,
705
+ "step": 580
706
+ },
707
+ {
708
+ "epoch": 0.23,
709
+ "learning_rate": 0.00036419753086419757,
710
+ "loss": 0.7722,
711
+ "step": 585
712
+ },
713
+ {
714
+ "epoch": 0.24,
715
+ "learning_rate": 0.00036378600823045267,
716
+ "loss": 0.7842,
717
+ "step": 590
718
+ },
719
+ {
720
+ "epoch": 0.24,
721
+ "learning_rate": 0.00036337448559670783,
722
+ "loss": 0.7591,
723
+ "step": 595
724
+ },
725
+ {
726
+ "epoch": 0.24,
727
+ "learning_rate": 0.000362962962962963,
728
+ "loss": 0.7653,
729
+ "step": 600
730
+ },
731
+ {
732
+ "epoch": 0.24,
733
+ "learning_rate": 0.0003625514403292181,
734
+ "loss": 0.7838,
735
+ "step": 605
736
+ },
737
+ {
738
+ "epoch": 0.24,
739
+ "learning_rate": 0.00036213991769547325,
740
+ "loss": 0.7937,
741
+ "step": 610
742
+ },
743
+ {
744
+ "epoch": 0.25,
745
+ "learning_rate": 0.0003617283950617284,
746
+ "loss": 0.77,
747
+ "step": 615
748
+ },
749
+ {
750
+ "epoch": 0.25,
751
+ "learning_rate": 0.00036131687242798357,
752
+ "loss": 0.7899,
753
+ "step": 620
754
+ },
755
+ {
756
+ "epoch": 0.25,
757
+ "learning_rate": 0.0003609053497942387,
758
+ "loss": 0.7815,
759
+ "step": 625
760
+ },
761
+ {
762
+ "epoch": 0.25,
763
+ "learning_rate": 0.00036049382716049383,
764
+ "loss": 0.7648,
765
+ "step": 630
766
+ },
767
+ {
768
+ "epoch": 0.25,
769
+ "learning_rate": 0.000360082304526749,
770
+ "loss": 0.7716,
771
+ "step": 635
772
+ },
773
+ {
774
+ "epoch": 0.26,
775
+ "learning_rate": 0.0003596707818930041,
776
+ "loss": 0.7708,
777
+ "step": 640
778
+ },
779
+ {
780
+ "epoch": 0.26,
781
+ "learning_rate": 0.00035925925925925925,
782
+ "loss": 0.7306,
783
+ "step": 645
784
+ },
785
+ {
786
+ "epoch": 0.26,
787
+ "learning_rate": 0.0003588477366255144,
788
+ "loss": 0.8007,
789
+ "step": 650
790
+ },
791
+ {
792
+ "epoch": 0.26,
793
+ "learning_rate": 0.0003584362139917695,
794
+ "loss": 0.7551,
795
+ "step": 655
796
+ },
797
+ {
798
+ "epoch": 0.26,
799
+ "learning_rate": 0.0003580246913580247,
800
+ "loss": 0.754,
801
+ "step": 660
802
+ },
803
+ {
804
+ "epoch": 0.27,
805
+ "learning_rate": 0.00035761316872427983,
806
+ "loss": 0.7599,
807
+ "step": 665
808
+ },
809
+ {
810
+ "epoch": 0.27,
811
+ "learning_rate": 0.000357201646090535,
812
+ "loss": 0.7637,
813
+ "step": 670
814
+ },
815
+ {
816
+ "epoch": 0.27,
817
+ "learning_rate": 0.00035679012345679015,
818
+ "loss": 0.7766,
819
+ "step": 675
820
+ },
821
+ {
822
+ "epoch": 0.27,
823
+ "learning_rate": 0.0003563786008230453,
824
+ "loss": 0.7727,
825
+ "step": 680
826
+ },
827
+ {
828
+ "epoch": 0.27,
829
+ "learning_rate": 0.0003559670781893004,
830
+ "loss": 0.7675,
831
+ "step": 685
832
+ },
833
+ {
834
+ "epoch": 0.28,
835
+ "learning_rate": 0.00035555555555555557,
836
+ "loss": 0.7707,
837
+ "step": 690
838
+ },
839
+ {
840
+ "epoch": 0.28,
841
+ "learning_rate": 0.00035514403292181073,
842
+ "loss": 0.7221,
843
+ "step": 695
844
+ },
845
+ {
846
+ "epoch": 0.28,
847
+ "learning_rate": 0.0003547325102880659,
848
+ "loss": 0.7335,
849
+ "step": 700
850
+ },
851
+ {
852
+ "epoch": 0.28,
853
+ "learning_rate": 0.00035432098765432105,
854
+ "loss": 0.781,
855
+ "step": 705
856
+ },
857
+ {
858
+ "epoch": 0.28,
859
+ "learning_rate": 0.00035390946502057615,
860
+ "loss": 0.7845,
861
+ "step": 710
862
+ },
863
+ {
864
+ "epoch": 0.29,
865
+ "learning_rate": 0.0003534979423868313,
866
+ "loss": 0.7467,
867
+ "step": 715
868
+ },
869
+ {
870
+ "epoch": 0.29,
871
+ "learning_rate": 0.00035308641975308647,
872
+ "loss": 0.7735,
873
+ "step": 720
874
+ },
875
+ {
876
+ "epoch": 0.29,
877
+ "learning_rate": 0.0003526748971193416,
878
+ "loss": 0.7368,
879
+ "step": 725
880
+ },
881
+ {
882
+ "epoch": 0.29,
883
+ "learning_rate": 0.00035226337448559673,
884
+ "loss": 0.7678,
885
+ "step": 730
886
+ },
887
+ {
888
+ "epoch": 0.29,
889
+ "learning_rate": 0.0003518518518518519,
890
+ "loss": 0.7756,
891
+ "step": 735
892
+ },
893
+ {
894
+ "epoch": 0.3,
895
+ "learning_rate": 0.00035144032921810705,
896
+ "loss": 0.7635,
897
+ "step": 740
898
+ },
899
+ {
900
+ "epoch": 0.3,
901
+ "learning_rate": 0.00035102880658436215,
902
+ "loss": 0.7757,
903
+ "step": 745
904
+ },
905
+ {
906
+ "epoch": 0.3,
907
+ "learning_rate": 0.0003506172839506173,
908
+ "loss": 0.7442,
909
+ "step": 750
910
+ },
911
+ {
912
+ "epoch": 0.3,
913
+ "learning_rate": 0.00035020576131687247,
914
+ "loss": 0.7584,
915
+ "step": 755
916
+ },
917
+ {
918
+ "epoch": 0.3,
919
+ "learning_rate": 0.0003497942386831276,
920
+ "loss": 0.8333,
921
+ "step": 760
922
+ },
923
+ {
924
+ "epoch": 0.31,
925
+ "learning_rate": 0.00034938271604938273,
926
+ "loss": 0.7459,
927
+ "step": 765
928
+ },
929
+ {
930
+ "epoch": 0.31,
931
+ "learning_rate": 0.0003489711934156379,
932
+ "loss": 0.7499,
933
+ "step": 770
934
+ },
935
+ {
936
+ "epoch": 0.31,
937
+ "learning_rate": 0.000348559670781893,
938
+ "loss": 0.7571,
939
+ "step": 775
940
+ },
941
+ {
942
+ "epoch": 0.31,
943
+ "learning_rate": 0.00034814814814814816,
944
+ "loss": 0.7243,
945
+ "step": 780
946
+ },
947
+ {
948
+ "epoch": 0.31,
949
+ "learning_rate": 0.0003477366255144033,
950
+ "loss": 0.7443,
951
+ "step": 785
952
+ },
953
+ {
954
+ "epoch": 0.32,
955
+ "learning_rate": 0.0003473251028806585,
956
+ "loss": 0.7759,
957
+ "step": 790
958
+ },
959
+ {
960
+ "epoch": 0.32,
961
+ "learning_rate": 0.0003469135802469136,
962
+ "loss": 0.7452,
963
+ "step": 795
964
+ },
965
+ {
966
+ "epoch": 0.32,
967
+ "learning_rate": 0.00034650205761316874,
968
+ "loss": 0.7578,
969
+ "step": 800
970
+ },
971
+ {
972
+ "epoch": 0.32,
973
+ "learning_rate": 0.0003460905349794239,
974
+ "loss": 0.7634,
975
+ "step": 805
976
+ },
977
+ {
978
+ "epoch": 0.32,
979
+ "learning_rate": 0.000345679012345679,
980
+ "loss": 0.7925,
981
+ "step": 810
982
+ },
983
+ {
984
+ "epoch": 0.33,
985
+ "learning_rate": 0.00034526748971193416,
986
+ "loss": 0.7966,
987
+ "step": 815
988
+ },
989
+ {
990
+ "epoch": 0.33,
991
+ "learning_rate": 0.0003448559670781893,
992
+ "loss": 0.7601,
993
+ "step": 820
994
+ },
995
+ {
996
+ "epoch": 0.33,
997
+ "learning_rate": 0.0003444444444444445,
998
+ "loss": 0.7617,
999
+ "step": 825
1000
+ },
1001
+ {
1002
+ "epoch": 0.33,
1003
+ "learning_rate": 0.0003440329218106996,
1004
+ "loss": 0.7526,
1005
+ "step": 830
1006
+ },
1007
+ {
1008
+ "epoch": 0.33,
1009
+ "learning_rate": 0.00034362139917695474,
1010
+ "loss": 0.7297,
1011
+ "step": 835
1012
+ },
1013
+ {
1014
+ "epoch": 0.34,
1015
+ "learning_rate": 0.0003432098765432099,
1016
+ "loss": 0.7549,
1017
+ "step": 840
1018
+ },
1019
+ {
1020
+ "epoch": 0.34,
1021
+ "learning_rate": 0.000342798353909465,
1022
+ "loss": 0.7517,
1023
+ "step": 845
1024
+ },
1025
+ {
1026
+ "epoch": 0.34,
1027
+ "learning_rate": 0.00034238683127572016,
1028
+ "loss": 0.7626,
1029
+ "step": 850
1030
+ },
1031
+ {
1032
+ "epoch": 0.34,
1033
+ "learning_rate": 0.0003419753086419753,
1034
+ "loss": 0.7987,
1035
+ "step": 855
1036
+ },
1037
+ {
1038
+ "epoch": 0.34,
1039
+ "learning_rate": 0.0003415637860082305,
1040
+ "loss": 0.7573,
1041
+ "step": 860
1042
+ },
1043
+ {
1044
+ "epoch": 0.35,
1045
+ "learning_rate": 0.0003411522633744856,
1046
+ "loss": 0.8367,
1047
+ "step": 865
1048
+ },
1049
+ {
1050
+ "epoch": 0.35,
1051
+ "learning_rate": 0.00034074074074074074,
1052
+ "loss": 0.7258,
1053
+ "step": 870
1054
+ },
1055
+ {
1056
+ "epoch": 0.35,
1057
+ "learning_rate": 0.0003403292181069959,
1058
+ "loss": 0.7632,
1059
+ "step": 875
1060
+ },
1061
+ {
1062
+ "epoch": 0.35,
1063
+ "learning_rate": 0.00033991769547325106,
1064
+ "loss": 0.7379,
1065
+ "step": 880
1066
+ },
1067
+ {
1068
+ "epoch": 0.35,
1069
+ "learning_rate": 0.00033950617283950616,
1070
+ "loss": 0.7529,
1071
+ "step": 885
1072
+ },
1073
+ {
1074
+ "epoch": 0.36,
1075
+ "learning_rate": 0.0003390946502057613,
1076
+ "loss": 0.7391,
1077
+ "step": 890
1078
+ },
1079
+ {
1080
+ "epoch": 0.36,
1081
+ "learning_rate": 0.0003386831275720165,
1082
+ "loss": 0.8061,
1083
+ "step": 895
1084
+ },
1085
+ {
1086
+ "epoch": 0.36,
1087
+ "learning_rate": 0.00033827160493827164,
1088
+ "loss": 0.7288,
1089
+ "step": 900
1090
+ },
1091
+ {
1092
+ "epoch": 0.36,
1093
+ "learning_rate": 0.0003378600823045268,
1094
+ "loss": 0.7493,
1095
+ "step": 905
1096
+ },
1097
+ {
1098
+ "epoch": 0.36,
1099
+ "learning_rate": 0.00033744855967078195,
1100
+ "loss": 0.7702,
1101
+ "step": 910
1102
+ },
1103
+ {
1104
+ "epoch": 0.37,
1105
+ "learning_rate": 0.00033703703703703706,
1106
+ "loss": 0.7538,
1107
+ "step": 915
1108
+ },
1109
+ {
1110
+ "epoch": 0.37,
1111
+ "learning_rate": 0.0003366255144032922,
1112
+ "loss": 0.728,
1113
+ "step": 920
1114
+ },
1115
+ {
1116
+ "epoch": 0.37,
1117
+ "learning_rate": 0.0003362139917695474,
1118
+ "loss": 0.7776,
1119
+ "step": 925
1120
+ },
1121
+ {
1122
+ "epoch": 0.37,
1123
+ "learning_rate": 0.0003358024691358025,
1124
+ "loss": 0.7883,
1125
+ "step": 930
1126
+ },
1127
+ {
1128
+ "epoch": 0.37,
1129
+ "learning_rate": 0.00033539094650205764,
1130
+ "loss": 0.7471,
1131
+ "step": 935
1132
+ },
1133
+ {
1134
+ "epoch": 0.38,
1135
+ "learning_rate": 0.0003349794238683128,
1136
+ "loss": 0.7464,
1137
+ "step": 940
1138
+ },
1139
+ {
1140
+ "epoch": 0.38,
1141
+ "learning_rate": 0.00033456790123456795,
1142
+ "loss": 0.7885,
1143
+ "step": 945
1144
+ },
1145
+ {
1146
+ "epoch": 0.38,
1147
+ "learning_rate": 0.00033415637860082306,
1148
+ "loss": 0.7509,
1149
+ "step": 950
1150
+ },
1151
+ {
1152
+ "epoch": 0.38,
1153
+ "learning_rate": 0.0003337448559670782,
1154
+ "loss": 0.7681,
1155
+ "step": 955
1156
+ },
1157
+ {
1158
+ "epoch": 0.38,
1159
+ "learning_rate": 0.0003333333333333334,
1160
+ "loss": 0.8246,
1161
+ "step": 960
1162
+ },
1163
+ {
1164
+ "epoch": 0.39,
1165
+ "learning_rate": 0.0003329218106995885,
1166
+ "loss": 0.7604,
1167
+ "step": 965
1168
+ },
1169
+ {
1170
+ "epoch": 0.39,
1171
+ "learning_rate": 0.00033251028806584364,
1172
+ "loss": 0.7755,
1173
+ "step": 970
1174
+ },
1175
+ {
1176
+ "epoch": 0.39,
1177
+ "learning_rate": 0.0003320987654320988,
1178
+ "loss": 0.7641,
1179
+ "step": 975
1180
+ },
1181
+ {
1182
+ "epoch": 0.39,
1183
+ "learning_rate": 0.0003316872427983539,
1184
+ "loss": 0.7708,
1185
+ "step": 980
1186
+ },
1187
+ {
1188
+ "epoch": 0.39,
1189
+ "learning_rate": 0.00033127572016460906,
1190
+ "loss": 0.7936,
1191
+ "step": 985
1192
+ },
1193
+ {
1194
+ "epoch": 0.4,
1195
+ "learning_rate": 0.0003308641975308642,
1196
+ "loss": 0.7641,
1197
+ "step": 990
1198
+ },
1199
+ {
1200
+ "epoch": 0.4,
1201
+ "learning_rate": 0.0003304526748971194,
1202
+ "loss": 0.7479,
1203
+ "step": 995
1204
+ },
1205
+ {
1206
+ "epoch": 0.4,
1207
+ "learning_rate": 0.0003300411522633745,
1208
+ "loss": 0.7547,
1209
+ "step": 1000
1210
+ },
1211
+ {
1212
+ "epoch": 0.4,
1213
+ "learning_rate": 0.00032962962962962964,
1214
+ "loss": 0.762,
1215
+ "step": 1005
1216
+ },
1217
+ {
1218
+ "epoch": 0.4,
1219
+ "learning_rate": 0.0003292181069958848,
1220
+ "loss": 0.7472,
1221
+ "step": 1010
1222
+ },
1223
+ {
1224
+ "epoch": 0.41,
1225
+ "learning_rate": 0.0003288065843621399,
1226
+ "loss": 0.7542,
1227
+ "step": 1015
1228
+ },
1229
+ {
1230
+ "epoch": 0.41,
1231
+ "learning_rate": 0.00032839506172839506,
1232
+ "loss": 0.7669,
1233
+ "step": 1020
1234
+ },
1235
+ {
1236
+ "epoch": 0.41,
1237
+ "learning_rate": 0.0003279835390946502,
1238
+ "loss": 0.7812,
1239
+ "step": 1025
1240
+ },
1241
+ {
1242
+ "epoch": 0.41,
1243
+ "learning_rate": 0.0003275720164609054,
1244
+ "loss": 0.7273,
1245
+ "step": 1030
1246
+ },
1247
+ {
1248
+ "epoch": 0.41,
1249
+ "learning_rate": 0.0003271604938271605,
1250
+ "loss": 0.7822,
1251
+ "step": 1035
1252
+ },
1253
+ {
1254
+ "epoch": 0.42,
1255
+ "learning_rate": 0.00032674897119341564,
1256
+ "loss": 0.7337,
1257
+ "step": 1040
1258
+ },
1259
+ {
1260
+ "epoch": 0.42,
1261
+ "learning_rate": 0.0003263374485596708,
1262
+ "loss": 0.7566,
1263
+ "step": 1045
1264
+ },
1265
+ {
1266
+ "epoch": 0.42,
1267
+ "learning_rate": 0.0003259259259259259,
1268
+ "loss": 0.7377,
1269
+ "step": 1050
1270
+ },
1271
+ {
1272
+ "epoch": 0.42,
1273
+ "learning_rate": 0.00032551440329218106,
1274
+ "loss": 0.7856,
1275
+ "step": 1055
1276
+ },
1277
+ {
1278
+ "epoch": 0.42,
1279
+ "learning_rate": 0.0003251028806584362,
1280
+ "loss": 0.7981,
1281
+ "step": 1060
1282
+ },
1283
+ {
1284
+ "epoch": 0.43,
1285
+ "learning_rate": 0.0003246913580246914,
1286
+ "loss": 0.7505,
1287
+ "step": 1065
1288
+ },
1289
+ {
1290
+ "epoch": 0.43,
1291
+ "learning_rate": 0.0003242798353909465,
1292
+ "loss": 0.7549,
1293
+ "step": 1070
1294
+ },
1295
+ {
1296
+ "epoch": 0.43,
1297
+ "learning_rate": 0.00032386831275720164,
1298
+ "loss": 0.7306,
1299
+ "step": 1075
1300
+ },
1301
+ {
1302
+ "epoch": 0.43,
1303
+ "learning_rate": 0.0003234567901234568,
1304
+ "loss": 0.7343,
1305
+ "step": 1080
1306
+ },
1307
+ {
1308
+ "epoch": 0.43,
1309
+ "learning_rate": 0.0003230452674897119,
1310
+ "loss": 0.738,
1311
+ "step": 1085
1312
+ },
1313
+ {
1314
+ "epoch": 0.44,
1315
+ "learning_rate": 0.00032263374485596707,
1316
+ "loss": 0.7655,
1317
+ "step": 1090
1318
+ },
1319
+ {
1320
+ "epoch": 0.44,
1321
+ "learning_rate": 0.0003222222222222222,
1322
+ "loss": 0.7706,
1323
+ "step": 1095
1324
+ },
1325
+ {
1326
+ "epoch": 0.44,
1327
+ "learning_rate": 0.0003218106995884774,
1328
+ "loss": 0.7512,
1329
+ "step": 1100
1330
+ },
1331
+ {
1332
+ "epoch": 0.44,
1333
+ "learning_rate": 0.00032139917695473254,
1334
+ "loss": 0.7549,
1335
+ "step": 1105
1336
+ },
1337
+ {
1338
+ "epoch": 0.44,
1339
+ "learning_rate": 0.0003209876543209877,
1340
+ "loss": 0.7839,
1341
+ "step": 1110
1342
+ },
1343
+ {
1344
+ "epoch": 0.45,
1345
+ "learning_rate": 0.0003205761316872428,
1346
+ "loss": 0.7511,
1347
+ "step": 1115
1348
+ },
1349
+ {
1350
+ "epoch": 0.45,
1351
+ "learning_rate": 0.00032016460905349796,
1352
+ "loss": 0.769,
1353
+ "step": 1120
1354
+ },
1355
+ {
1356
+ "epoch": 0.45,
1357
+ "learning_rate": 0.0003197530864197531,
1358
+ "loss": 0.7685,
1359
+ "step": 1125
1360
+ },
1361
+ {
1362
+ "epoch": 0.45,
1363
+ "learning_rate": 0.0003193415637860083,
1364
+ "loss": 0.7489,
1365
+ "step": 1130
1366
+ },
1367
+ {
1368
+ "epoch": 0.45,
1369
+ "learning_rate": 0.0003189300411522634,
1370
+ "loss": 0.808,
1371
+ "step": 1135
1372
+ },
1373
+ {
1374
+ "epoch": 0.46,
1375
+ "learning_rate": 0.00031851851851851854,
1376
+ "loss": 0.7654,
1377
+ "step": 1140
1378
+ },
1379
+ {
1380
+ "epoch": 0.46,
1381
+ "learning_rate": 0.0003181069958847737,
1382
+ "loss": 0.7845,
1383
+ "step": 1145
1384
+ },
1385
+ {
1386
+ "epoch": 0.46,
1387
+ "learning_rate": 0.00031769547325102886,
1388
+ "loss": 0.7886,
1389
+ "step": 1150
1390
+ },
1391
+ {
1392
+ "epoch": 0.46,
1393
+ "learning_rate": 0.00031728395061728396,
1394
+ "loss": 0.7318,
1395
+ "step": 1155
1396
+ },
1397
+ {
1398
+ "epoch": 0.46,
1399
+ "learning_rate": 0.0003168724279835391,
1400
+ "loss": 0.7231,
1401
+ "step": 1160
1402
+ },
1403
+ {
1404
+ "epoch": 0.47,
1405
+ "learning_rate": 0.0003164609053497943,
1406
+ "loss": 0.7471,
1407
+ "step": 1165
1408
+ },
1409
+ {
1410
+ "epoch": 0.47,
1411
+ "learning_rate": 0.0003160493827160494,
1412
+ "loss": 0.7424,
1413
+ "step": 1170
1414
+ },
1415
+ {
1416
+ "epoch": 0.47,
1417
+ "learning_rate": 0.00031563786008230454,
1418
+ "loss": 0.7249,
1419
+ "step": 1175
1420
+ },
1421
+ {
1422
+ "epoch": 0.47,
1423
+ "learning_rate": 0.0003152263374485597,
1424
+ "loss": 0.7419,
1425
+ "step": 1180
1426
+ },
1427
+ {
1428
+ "epoch": 0.47,
1429
+ "learning_rate": 0.00031481481481481486,
1430
+ "loss": 0.7567,
1431
+ "step": 1185
1432
+ },
1433
+ {
1434
+ "epoch": 0.48,
1435
+ "learning_rate": 0.00031440329218106997,
1436
+ "loss": 0.7707,
1437
+ "step": 1190
1438
+ },
1439
+ {
1440
+ "epoch": 0.48,
1441
+ "learning_rate": 0.0003139917695473251,
1442
+ "loss": 0.7473,
1443
+ "step": 1195
1444
+ },
1445
+ {
1446
+ "epoch": 0.48,
1447
+ "learning_rate": 0.0003135802469135803,
1448
+ "loss": 0.7222,
1449
+ "step": 1200
1450
+ },
1451
+ {
1452
+ "epoch": 0.48,
1453
+ "learning_rate": 0.0003131687242798354,
1454
+ "loss": 0.7383,
1455
+ "step": 1205
1456
+ },
1457
+ {
1458
+ "epoch": 0.48,
1459
+ "learning_rate": 0.00031275720164609055,
1460
+ "loss": 0.7712,
1461
+ "step": 1210
1462
+ },
1463
+ {
1464
+ "epoch": 0.48,
1465
+ "learning_rate": 0.0003123456790123457,
1466
+ "loss": 0.7602,
1467
+ "step": 1215
1468
+ },
1469
+ {
1470
+ "epoch": 0.49,
1471
+ "learning_rate": 0.0003119341563786008,
1472
+ "loss": 0.7741,
1473
+ "step": 1220
1474
+ },
1475
+ {
1476
+ "epoch": 0.49,
1477
+ "learning_rate": 0.00031152263374485597,
1478
+ "loss": 0.7428,
1479
+ "step": 1225
1480
+ },
1481
+ {
1482
+ "epoch": 0.49,
1483
+ "learning_rate": 0.0003111111111111111,
1484
+ "loss": 0.7605,
1485
+ "step": 1230
1486
+ },
1487
+ {
1488
+ "epoch": 0.49,
1489
+ "learning_rate": 0.0003106995884773663,
1490
+ "loss": 0.7255,
1491
+ "step": 1235
1492
+ },
1493
+ {
1494
+ "epoch": 0.49,
1495
+ "learning_rate": 0.0003102880658436214,
1496
+ "loss": 0.7468,
1497
+ "step": 1240
1498
+ },
1499
+ {
1500
+ "epoch": 0.5,
1501
+ "learning_rate": 0.00030987654320987655,
1502
+ "loss": 0.7961,
1503
+ "step": 1245
1504
+ },
1505
+ {
1506
+ "epoch": 0.5,
1507
+ "learning_rate": 0.0003094650205761317,
1508
+ "loss": 0.7208,
1509
+ "step": 1250
1510
+ },
1511
+ {
1512
+ "epoch": 0.5,
1513
+ "learning_rate": 0.0003090534979423868,
1514
+ "loss": 0.7331,
1515
+ "step": 1255
1516
+ },
1517
+ {
1518
+ "epoch": 0.5,
1519
+ "learning_rate": 0.00030864197530864197,
1520
+ "loss": 0.7371,
1521
+ "step": 1260
1522
+ },
1523
+ {
1524
+ "epoch": 0.5,
1525
+ "learning_rate": 0.00030823045267489713,
1526
+ "loss": 0.7206,
1527
+ "step": 1265
1528
+ },
1529
+ {
1530
+ "epoch": 0.51,
1531
+ "learning_rate": 0.0003078189300411523,
1532
+ "loss": 0.7617,
1533
+ "step": 1270
1534
+ },
1535
+ {
1536
+ "epoch": 0.51,
1537
+ "learning_rate": 0.0003074074074074074,
1538
+ "loss": 0.7652,
1539
+ "step": 1275
1540
+ },
1541
+ {
1542
+ "epoch": 0.51,
1543
+ "learning_rate": 0.00030699588477366255,
1544
+ "loss": 0.7635,
1545
+ "step": 1280
1546
+ },
1547
+ {
1548
+ "epoch": 0.51,
1549
+ "learning_rate": 0.0003065843621399177,
1550
+ "loss": 0.7445,
1551
+ "step": 1285
1552
+ },
1553
+ {
1554
+ "epoch": 0.51,
1555
+ "learning_rate": 0.0003061728395061728,
1556
+ "loss": 0.7717,
1557
+ "step": 1290
1558
+ },
1559
+ {
1560
+ "epoch": 0.52,
1561
+ "learning_rate": 0.00030576131687242797,
1562
+ "loss": 0.7535,
1563
+ "step": 1295
1564
+ },
1565
+ {
1566
+ "epoch": 0.52,
1567
+ "learning_rate": 0.00030534979423868313,
1568
+ "loss": 0.7677,
1569
+ "step": 1300
1570
+ },
1571
+ {
1572
+ "epoch": 0.52,
1573
+ "learning_rate": 0.0003049382716049383,
1574
+ "loss": 0.8131,
1575
+ "step": 1305
1576
+ },
1577
+ {
1578
+ "epoch": 0.52,
1579
+ "learning_rate": 0.00030452674897119345,
1580
+ "loss": 0.7754,
1581
+ "step": 1310
1582
+ },
1583
+ {
1584
+ "epoch": 0.52,
1585
+ "learning_rate": 0.00030411522633744855,
1586
+ "loss": 0.76,
1587
+ "step": 1315
1588
+ },
1589
+ {
1590
+ "epoch": 0.53,
1591
+ "learning_rate": 0.0003037037037037037,
1592
+ "loss": 0.7558,
1593
+ "step": 1320
1594
+ },
1595
+ {
1596
+ "epoch": 0.53,
1597
+ "learning_rate": 0.00030329218106995887,
1598
+ "loss": 0.7604,
1599
+ "step": 1325
1600
+ },
1601
+ {
1602
+ "epoch": 0.53,
1603
+ "learning_rate": 0.000302880658436214,
1604
+ "loss": 0.7716,
1605
+ "step": 1330
1606
+ },
1607
+ {
1608
+ "epoch": 0.53,
1609
+ "learning_rate": 0.0003024691358024692,
1610
+ "loss": 0.7669,
1611
+ "step": 1335
1612
+ },
1613
+ {
1614
+ "epoch": 0.53,
1615
+ "learning_rate": 0.0003020576131687243,
1616
+ "loss": 0.7469,
1617
+ "step": 1340
1618
+ },
1619
+ {
1620
+ "epoch": 0.54,
1621
+ "learning_rate": 0.00030164609053497945,
1622
+ "loss": 0.7511,
1623
+ "step": 1345
1624
+ },
1625
+ {
1626
+ "epoch": 0.54,
1627
+ "learning_rate": 0.0003012345679012346,
1628
+ "loss": 0.7483,
1629
+ "step": 1350
1630
+ },
1631
+ {
1632
+ "epoch": 0.54,
1633
+ "learning_rate": 0.00030082304526748976,
1634
+ "loss": 0.7509,
1635
+ "step": 1355
1636
+ },
1637
+ {
1638
+ "epoch": 0.54,
1639
+ "learning_rate": 0.00030041152263374487,
1640
+ "loss": 0.7249,
1641
+ "step": 1360
1642
+ },
1643
+ {
1644
+ "epoch": 0.54,
1645
+ "learning_rate": 0.00030000000000000003,
1646
+ "loss": 0.7289,
1647
+ "step": 1365
1648
+ },
1649
+ {
1650
+ "epoch": 0.55,
1651
+ "learning_rate": 0.0002995884773662552,
1652
+ "loss": 0.7605,
1653
+ "step": 1370
1654
+ },
1655
+ {
1656
+ "epoch": 0.55,
1657
+ "learning_rate": 0.0002991769547325103,
1658
+ "loss": 0.7185,
1659
+ "step": 1375
1660
+ },
1661
+ {
1662
+ "epoch": 0.55,
1663
+ "learning_rate": 0.00029876543209876545,
1664
+ "loss": 0.6974,
1665
+ "step": 1380
1666
+ },
1667
+ {
1668
+ "epoch": 0.55,
1669
+ "learning_rate": 0.0002983539094650206,
1670
+ "loss": 0.7234,
1671
+ "step": 1385
1672
+ },
1673
+ {
1674
+ "epoch": 0.55,
1675
+ "learning_rate": 0.00029794238683127577,
1676
+ "loss": 0.7506,
1677
+ "step": 1390
1678
+ },
1679
+ {
1680
+ "epoch": 0.56,
1681
+ "learning_rate": 0.00029753086419753087,
1682
+ "loss": 0.7524,
1683
+ "step": 1395
1684
+ },
1685
+ {
1686
+ "epoch": 0.56,
1687
+ "learning_rate": 0.00029711934156378603,
1688
+ "loss": 0.7641,
1689
+ "step": 1400
1690
+ },
1691
+ {
1692
+ "epoch": 0.56,
1693
+ "learning_rate": 0.0002967078189300412,
1694
+ "loss": 0.6967,
1695
+ "step": 1405
1696
+ },
1697
+ {
1698
+ "epoch": 0.56,
1699
+ "learning_rate": 0.0002962962962962963,
1700
+ "loss": 0.735,
1701
+ "step": 1410
1702
+ },
1703
+ {
1704
+ "epoch": 0.56,
1705
+ "learning_rate": 0.00029588477366255145,
1706
+ "loss": 0.7685,
1707
+ "step": 1415
1708
+ },
1709
+ {
1710
+ "epoch": 0.57,
1711
+ "learning_rate": 0.0002954732510288066,
1712
+ "loss": 0.758,
1713
+ "step": 1420
1714
+ },
1715
+ {
1716
+ "epoch": 0.57,
1717
+ "learning_rate": 0.0002950617283950617,
1718
+ "loss": 0.763,
1719
+ "step": 1425
1720
+ },
1721
+ {
1722
+ "epoch": 0.57,
1723
+ "learning_rate": 0.00029465020576131687,
1724
+ "loss": 0.712,
1725
+ "step": 1430
1726
+ },
1727
+ {
1728
+ "epoch": 0.57,
1729
+ "learning_rate": 0.00029423868312757203,
1730
+ "loss": 0.7236,
1731
+ "step": 1435
1732
+ },
1733
+ {
1734
+ "epoch": 0.57,
1735
+ "learning_rate": 0.0002938271604938272,
1736
+ "loss": 0.7732,
1737
+ "step": 1440
1738
+ },
1739
+ {
1740
+ "epoch": 0.58,
1741
+ "learning_rate": 0.0002934156378600823,
1742
+ "loss": 0.7689,
1743
+ "step": 1445
1744
+ },
1745
+ {
1746
+ "epoch": 0.58,
1747
+ "learning_rate": 0.00029300411522633745,
1748
+ "loss": 0.7352,
1749
+ "step": 1450
1750
+ },
1751
+ {
1752
+ "epoch": 0.58,
1753
+ "learning_rate": 0.0002925925925925926,
1754
+ "loss": 0.7711,
1755
+ "step": 1455
1756
+ },
1757
+ {
1758
+ "epoch": 0.58,
1759
+ "learning_rate": 0.0002921810699588477,
1760
+ "loss": 0.7549,
1761
+ "step": 1460
1762
+ },
1763
+ {
1764
+ "epoch": 0.58,
1765
+ "learning_rate": 0.0002917695473251029,
1766
+ "loss": 0.7804,
1767
+ "step": 1465
1768
+ },
1769
+ {
1770
+ "epoch": 0.59,
1771
+ "learning_rate": 0.00029135802469135803,
1772
+ "loss": 0.7478,
1773
+ "step": 1470
1774
+ },
1775
+ {
1776
+ "epoch": 0.59,
1777
+ "learning_rate": 0.0002909465020576132,
1778
+ "loss": 0.7801,
1779
+ "step": 1475
1780
+ },
1781
+ {
1782
+ "epoch": 0.59,
1783
+ "learning_rate": 0.0002905349794238683,
1784
+ "loss": 0.7544,
1785
+ "step": 1480
1786
+ },
1787
+ {
1788
+ "epoch": 0.59,
1789
+ "learning_rate": 0.00029012345679012345,
1790
+ "loss": 0.7546,
1791
+ "step": 1485
1792
+ },
1793
+ {
1794
+ "epoch": 0.59,
1795
+ "learning_rate": 0.0002897119341563786,
1796
+ "loss": 0.7648,
1797
+ "step": 1490
1798
+ },
1799
+ {
1800
+ "epoch": 0.6,
1801
+ "learning_rate": 0.0002893004115226337,
1802
+ "loss": 0.7468,
1803
+ "step": 1495
1804
+ },
1805
+ {
1806
+ "epoch": 0.6,
1807
+ "learning_rate": 0.0002888888888888889,
1808
+ "loss": 0.7434,
1809
+ "step": 1500
1810
+ },
1811
+ {
1812
+ "epoch": 0.6,
1813
+ "learning_rate": 0.00028847736625514403,
1814
+ "loss": 0.7348,
1815
+ "step": 1505
1816
+ },
1817
+ {
1818
+ "epoch": 0.6,
1819
+ "learning_rate": 0.0002880658436213992,
1820
+ "loss": 0.7515,
1821
+ "step": 1510
1822
+ },
1823
+ {
1824
+ "epoch": 0.6,
1825
+ "learning_rate": 0.00028765432098765435,
1826
+ "loss": 0.7345,
1827
+ "step": 1515
1828
+ },
1829
+ {
1830
+ "epoch": 0.61,
1831
+ "learning_rate": 0.00028724279835390946,
1832
+ "loss": 0.7701,
1833
+ "step": 1520
1834
+ },
1835
+ {
1836
+ "epoch": 0.61,
1837
+ "learning_rate": 0.0002868312757201646,
1838
+ "loss": 0.7472,
1839
+ "step": 1525
1840
+ },
1841
+ {
1842
+ "epoch": 0.61,
1843
+ "learning_rate": 0.00028641975308641977,
1844
+ "loss": 0.7075,
1845
+ "step": 1530
1846
+ },
1847
+ {
1848
+ "epoch": 0.61,
1849
+ "learning_rate": 0.00028600823045267493,
1850
+ "loss": 0.7483,
1851
+ "step": 1535
1852
+ },
1853
+ {
1854
+ "epoch": 0.61,
1855
+ "learning_rate": 0.0002855967078189301,
1856
+ "loss": 0.712,
1857
+ "step": 1540
1858
+ },
1859
+ {
1860
+ "epoch": 0.62,
1861
+ "learning_rate": 0.0002851851851851852,
1862
+ "loss": 0.7484,
1863
+ "step": 1545
1864
+ },
1865
+ {
1866
+ "epoch": 0.62,
1867
+ "learning_rate": 0.00028477366255144035,
1868
+ "loss": 0.7471,
1869
+ "step": 1550
1870
+ },
1871
+ {
1872
+ "epoch": 0.62,
1873
+ "learning_rate": 0.0002843621399176955,
1874
+ "loss": 0.7462,
1875
+ "step": 1555
1876
+ },
1877
+ {
1878
+ "epoch": 0.62,
1879
+ "learning_rate": 0.00028395061728395067,
1880
+ "loss": 0.7371,
1881
+ "step": 1560
1882
+ },
1883
+ {
1884
+ "epoch": 0.62,
1885
+ "learning_rate": 0.0002835390946502058,
1886
+ "loss": 0.7753,
1887
+ "step": 1565
1888
+ },
1889
+ {
1890
+ "epoch": 0.63,
1891
+ "learning_rate": 0.00028312757201646093,
1892
+ "loss": 0.7374,
1893
+ "step": 1570
1894
+ },
1895
+ {
1896
+ "epoch": 0.63,
1897
+ "learning_rate": 0.0002827160493827161,
1898
+ "loss": 0.7328,
1899
+ "step": 1575
1900
+ },
1901
+ {
1902
+ "epoch": 0.63,
1903
+ "learning_rate": 0.0002823045267489712,
1904
+ "loss": 0.7159,
1905
+ "step": 1580
1906
+ },
1907
+ {
1908
+ "epoch": 0.63,
1909
+ "learning_rate": 0.00028189300411522635,
1910
+ "loss": 0.7594,
1911
+ "step": 1585
1912
+ },
1913
+ {
1914
+ "epoch": 0.63,
1915
+ "learning_rate": 0.0002814814814814815,
1916
+ "loss": 0.7215,
1917
+ "step": 1590
1918
+ },
1919
+ {
1920
+ "epoch": 0.64,
1921
+ "learning_rate": 0.00028106995884773667,
1922
+ "loss": 0.7398,
1923
+ "step": 1595
1924
+ },
1925
+ {
1926
+ "epoch": 0.64,
1927
+ "learning_rate": 0.0002806584362139918,
1928
+ "loss": 0.773,
1929
+ "step": 1600
1930
+ },
1931
+ {
1932
+ "epoch": 0.64,
1933
+ "learning_rate": 0.00028024691358024693,
1934
+ "loss": 0.7584,
1935
+ "step": 1605
1936
+ },
1937
+ {
1938
+ "epoch": 0.64,
1939
+ "learning_rate": 0.0002798353909465021,
1940
+ "loss": 0.7117,
1941
+ "step": 1610
1942
+ },
1943
+ {
1944
+ "epoch": 0.64,
1945
+ "learning_rate": 0.0002794238683127572,
1946
+ "loss": 0.7471,
1947
+ "step": 1615
1948
+ },
1949
+ {
1950
+ "epoch": 0.65,
1951
+ "learning_rate": 0.00027901234567901236,
1952
+ "loss": 0.7443,
1953
+ "step": 1620
1954
+ },
1955
+ {
1956
+ "epoch": 0.65,
1957
+ "learning_rate": 0.0002786008230452675,
1958
+ "loss": 0.7292,
1959
+ "step": 1625
1960
+ },
1961
+ {
1962
+ "epoch": 0.65,
1963
+ "learning_rate": 0.0002781893004115227,
1964
+ "loss": 0.7716,
1965
+ "step": 1630
1966
+ },
1967
+ {
1968
+ "epoch": 0.65,
1969
+ "learning_rate": 0.0002777777777777778,
1970
+ "loss": 0.763,
1971
+ "step": 1635
1972
+ },
1973
+ {
1974
+ "epoch": 0.65,
1975
+ "learning_rate": 0.00027736625514403294,
1976
+ "loss": 0.7408,
1977
+ "step": 1640
1978
+ },
1979
+ {
1980
+ "epoch": 0.66,
1981
+ "learning_rate": 0.0002769547325102881,
1982
+ "loss": 0.7403,
1983
+ "step": 1645
1984
+ },
1985
+ {
1986
+ "epoch": 0.66,
1987
+ "learning_rate": 0.0002765432098765432,
1988
+ "loss": 0.7508,
1989
+ "step": 1650
1990
+ },
1991
+ {
1992
+ "epoch": 0.66,
1993
+ "learning_rate": 0.00027613168724279836,
1994
+ "loss": 0.7687,
1995
+ "step": 1655
1996
+ },
1997
+ {
1998
+ "epoch": 0.66,
1999
+ "learning_rate": 0.0002757201646090535,
2000
+ "loss": 0.7305,
2001
+ "step": 1660
2002
+ },
2003
+ {
2004
+ "epoch": 0.66,
2005
+ "learning_rate": 0.0002753086419753086,
2006
+ "loss": 0.7165,
2007
+ "step": 1665
2008
+ },
2009
+ {
2010
+ "epoch": 0.67,
2011
+ "learning_rate": 0.0002748971193415638,
2012
+ "loss": 0.8,
2013
+ "step": 1670
2014
+ },
2015
+ {
2016
+ "epoch": 0.67,
2017
+ "learning_rate": 0.00027448559670781894,
2018
+ "loss": 0.7357,
2019
+ "step": 1675
2020
+ },
2021
+ {
2022
+ "epoch": 0.67,
2023
+ "learning_rate": 0.0002740740740740741,
2024
+ "loss": 0.7988,
2025
+ "step": 1680
2026
+ },
2027
+ {
2028
+ "epoch": 0.67,
2029
+ "learning_rate": 0.0002736625514403292,
2030
+ "loss": 0.7559,
2031
+ "step": 1685
2032
+ },
2033
+ {
2034
+ "epoch": 0.67,
2035
+ "learning_rate": 0.00027325102880658436,
2036
+ "loss": 0.712,
2037
+ "step": 1690
2038
+ },
2039
+ {
2040
+ "epoch": 0.68,
2041
+ "learning_rate": 0.0002728395061728395,
2042
+ "loss": 0.7486,
2043
+ "step": 1695
2044
+ },
2045
+ {
2046
+ "epoch": 0.68,
2047
+ "learning_rate": 0.0002724279835390946,
2048
+ "loss": 0.7388,
2049
+ "step": 1700
2050
+ },
2051
+ {
2052
+ "epoch": 0.68,
2053
+ "learning_rate": 0.0002720164609053498,
2054
+ "loss": 0.7441,
2055
+ "step": 1705
2056
+ },
2057
+ {
2058
+ "epoch": 0.68,
2059
+ "learning_rate": 0.00027160493827160494,
2060
+ "loss": 0.7547,
2061
+ "step": 1710
2062
+ },
2063
+ {
2064
+ "epoch": 0.68,
2065
+ "learning_rate": 0.0002711934156378601,
2066
+ "loss": 0.7229,
2067
+ "step": 1715
2068
+ },
2069
+ {
2070
+ "epoch": 0.69,
2071
+ "learning_rate": 0.0002707818930041152,
2072
+ "loss": 0.7383,
2073
+ "step": 1720
2074
+ },
2075
+ {
2076
+ "epoch": 0.69,
2077
+ "learning_rate": 0.00027037037037037036,
2078
+ "loss": 0.7606,
2079
+ "step": 1725
2080
+ },
2081
+ {
2082
+ "epoch": 0.69,
2083
+ "learning_rate": 0.0002699588477366255,
2084
+ "loss": 0.7529,
2085
+ "step": 1730
2086
+ },
2087
+ {
2088
+ "epoch": 0.69,
2089
+ "learning_rate": 0.0002695473251028807,
2090
+ "loss": 0.752,
2091
+ "step": 1735
2092
+ },
2093
+ {
2094
+ "epoch": 0.69,
2095
+ "learning_rate": 0.00026913580246913584,
2096
+ "loss": 0.7342,
2097
+ "step": 1740
2098
+ },
2099
+ {
2100
+ "epoch": 0.7,
2101
+ "learning_rate": 0.000268724279835391,
2102
+ "loss": 0.7308,
2103
+ "step": 1745
2104
+ },
2105
+ {
2106
+ "epoch": 0.7,
2107
+ "learning_rate": 0.0002683127572016461,
2108
+ "loss": 0.6915,
2109
+ "step": 1750
2110
+ },
2111
+ {
2112
+ "epoch": 0.7,
2113
+ "learning_rate": 0.00026790123456790126,
2114
+ "loss": 0.7344,
2115
+ "step": 1755
2116
+ },
2117
+ {
2118
+ "epoch": 0.7,
2119
+ "learning_rate": 0.0002674897119341564,
2120
+ "loss": 0.7426,
2121
+ "step": 1760
2122
+ },
2123
+ {
2124
+ "epoch": 0.7,
2125
+ "learning_rate": 0.0002670781893004116,
2126
+ "loss": 0.7088,
2127
+ "step": 1765
2128
+ },
2129
+ {
2130
+ "epoch": 0.71,
2131
+ "learning_rate": 0.0002666666666666667,
2132
+ "loss": 0.7241,
2133
+ "step": 1770
2134
+ },
2135
+ {
2136
+ "epoch": 0.71,
2137
+ "learning_rate": 0.00026625514403292184,
2138
+ "loss": 0.7552,
2139
+ "step": 1775
2140
+ },
2141
+ {
2142
+ "epoch": 0.71,
2143
+ "learning_rate": 0.000265843621399177,
2144
+ "loss": 0.7477,
2145
+ "step": 1780
2146
+ },
2147
+ {
2148
+ "epoch": 0.71,
2149
+ "learning_rate": 0.0002654320987654321,
2150
+ "loss": 0.7115,
2151
+ "step": 1785
2152
+ },
2153
+ {
2154
+ "epoch": 0.71,
2155
+ "learning_rate": 0.00026502057613168726,
2156
+ "loss": 0.7538,
2157
+ "step": 1790
2158
+ },
2159
+ {
2160
+ "epoch": 0.72,
2161
+ "learning_rate": 0.0002646090534979424,
2162
+ "loss": 0.7321,
2163
+ "step": 1795
2164
+ },
2165
+ {
2166
+ "epoch": 0.72,
2167
+ "learning_rate": 0.0002641975308641976,
2168
+ "loss": 0.7212,
2169
+ "step": 1800
2170
+ },
2171
+ {
2172
+ "epoch": 0.72,
2173
+ "learning_rate": 0.0002637860082304527,
2174
+ "loss": 0.747,
2175
+ "step": 1805
2176
+ },
2177
+ {
2178
+ "epoch": 0.72,
2179
+ "learning_rate": 0.00026337448559670784,
2180
+ "loss": 0.7606,
2181
+ "step": 1810
2182
+ },
2183
+ {
2184
+ "epoch": 0.72,
2185
+ "learning_rate": 0.000262962962962963,
2186
+ "loss": 0.7344,
2187
+ "step": 1815
2188
+ },
2189
+ {
2190
+ "epoch": 0.73,
2191
+ "learning_rate": 0.0002625514403292181,
2192
+ "loss": 0.7783,
2193
+ "step": 1820
2194
+ },
2195
+ {
2196
+ "epoch": 0.73,
2197
+ "learning_rate": 0.00026213991769547326,
2198
+ "loss": 0.7556,
2199
+ "step": 1825
2200
+ },
2201
+ {
2202
+ "epoch": 0.73,
2203
+ "learning_rate": 0.0002617283950617284,
2204
+ "loss": 0.7585,
2205
+ "step": 1830
2206
+ },
2207
+ {
2208
+ "epoch": 0.73,
2209
+ "learning_rate": 0.0002613168724279836,
2210
+ "loss": 0.7359,
2211
+ "step": 1835
2212
+ },
2213
+ {
2214
+ "epoch": 0.73,
2215
+ "learning_rate": 0.0002609053497942387,
2216
+ "loss": 0.7185,
2217
+ "step": 1840
2218
+ },
2219
+ {
2220
+ "epoch": 0.74,
2221
+ "learning_rate": 0.00026049382716049384,
2222
+ "loss": 0.7573,
2223
+ "step": 1845
2224
+ },
2225
+ {
2226
+ "epoch": 0.74,
2227
+ "learning_rate": 0.000260082304526749,
2228
+ "loss": 0.7619,
2229
+ "step": 1850
2230
+ },
2231
+ {
2232
+ "epoch": 0.74,
2233
+ "learning_rate": 0.0002596707818930041,
2234
+ "loss": 0.7611,
2235
+ "step": 1855
2236
+ },
2237
+ {
2238
+ "epoch": 0.74,
2239
+ "learning_rate": 0.00025925925925925926,
2240
+ "loss": 0.7647,
2241
+ "step": 1860
2242
+ },
2243
+ {
2244
+ "epoch": 0.74,
2245
+ "learning_rate": 0.0002588477366255144,
2246
+ "loss": 0.7398,
2247
+ "step": 1865
2248
+ },
2249
+ {
2250
+ "epoch": 0.75,
2251
+ "learning_rate": 0.0002584362139917695,
2252
+ "loss": 0.7683,
2253
+ "step": 1870
2254
+ },
2255
+ {
2256
+ "epoch": 0.75,
2257
+ "learning_rate": 0.0002580246913580247,
2258
+ "loss": 0.7817,
2259
+ "step": 1875
2260
+ },
2261
+ {
2262
+ "epoch": 0.75,
2263
+ "learning_rate": 0.00025761316872427984,
2264
+ "loss": 0.742,
2265
+ "step": 1880
2266
+ },
2267
+ {
2268
+ "epoch": 0.75,
2269
+ "learning_rate": 0.000257201646090535,
2270
+ "loss": 0.7509,
2271
+ "step": 1885
2272
+ },
2273
+ {
2274
+ "epoch": 0.75,
2275
+ "learning_rate": 0.0002567901234567901,
2276
+ "loss": 0.7058,
2277
+ "step": 1890
2278
+ },
2279
+ {
2280
+ "epoch": 0.76,
2281
+ "learning_rate": 0.00025637860082304526,
2282
+ "loss": 0.7635,
2283
+ "step": 1895
2284
+ },
2285
+ {
2286
+ "epoch": 0.76,
2287
+ "learning_rate": 0.0002559670781893004,
2288
+ "loss": 0.734,
2289
+ "step": 1900
2290
+ },
2291
+ {
2292
+ "epoch": 0.76,
2293
+ "learning_rate": 0.00025555555555555553,
2294
+ "loss": 0.7416,
2295
+ "step": 1905
2296
+ },
2297
+ {
2298
+ "epoch": 0.76,
2299
+ "learning_rate": 0.0002551440329218107,
2300
+ "loss": 0.7071,
2301
+ "step": 1910
2302
+ },
2303
+ {
2304
+ "epoch": 0.76,
2305
+ "learning_rate": 0.00025473251028806584,
2306
+ "loss": 0.7275,
2307
+ "step": 1915
2308
+ },
2309
+ {
2310
+ "epoch": 0.77,
2311
+ "learning_rate": 0.000254320987654321,
2312
+ "loss": 0.7413,
2313
+ "step": 1920
2314
+ },
2315
+ {
2316
+ "epoch": 0.77,
2317
+ "learning_rate": 0.0002539094650205761,
2318
+ "loss": 0.7703,
2319
+ "step": 1925
2320
+ },
2321
+ {
2322
+ "epoch": 0.77,
2323
+ "learning_rate": 0.00025349794238683127,
2324
+ "loss": 0.7331,
2325
+ "step": 1930
2326
+ },
2327
+ {
2328
+ "epoch": 0.77,
2329
+ "learning_rate": 0.0002530864197530864,
2330
+ "loss": 0.7251,
2331
+ "step": 1935
2332
+ },
2333
+ {
2334
+ "epoch": 0.77,
2335
+ "learning_rate": 0.0002526748971193416,
2336
+ "loss": 0.7341,
2337
+ "step": 1940
2338
+ },
2339
+ {
2340
+ "epoch": 0.78,
2341
+ "learning_rate": 0.00025226337448559674,
2342
+ "loss": 0.7079,
2343
+ "step": 1945
2344
+ },
2345
+ {
2346
+ "epoch": 0.78,
2347
+ "learning_rate": 0.00025185185185185185,
2348
+ "loss": 0.7615,
2349
+ "step": 1950
2350
+ },
2351
+ {
2352
+ "epoch": 0.78,
2353
+ "learning_rate": 0.000251440329218107,
2354
+ "loss": 0.7144,
2355
+ "step": 1955
2356
+ },
2357
+ {
2358
+ "epoch": 0.78,
2359
+ "learning_rate": 0.00025102880658436216,
2360
+ "loss": 0.7527,
2361
+ "step": 1960
2362
+ },
2363
+ {
2364
+ "epoch": 0.78,
2365
+ "learning_rate": 0.0002506172839506173,
2366
+ "loss": 0.7327,
2367
+ "step": 1965
2368
+ },
2369
+ {
2370
+ "epoch": 0.79,
2371
+ "learning_rate": 0.0002502057613168725,
2372
+ "loss": 0.7173,
2373
+ "step": 1970
2374
+ },
2375
+ {
2376
+ "epoch": 0.79,
2377
+ "learning_rate": 0.0002497942386831276,
2378
+ "loss": 0.7239,
2379
+ "step": 1975
2380
+ },
2381
+ {
2382
+ "epoch": 0.79,
2383
+ "learning_rate": 0.00024938271604938274,
2384
+ "loss": 0.7442,
2385
+ "step": 1980
2386
+ },
2387
+ {
2388
+ "epoch": 0.79,
2389
+ "learning_rate": 0.0002489711934156379,
2390
+ "loss": 0.7396,
2391
+ "step": 1985
2392
+ },
2393
+ {
2394
+ "epoch": 0.79,
2395
+ "learning_rate": 0.000248559670781893,
2396
+ "loss": 0.7365,
2397
+ "step": 1990
2398
+ },
2399
+ {
2400
+ "epoch": 0.8,
2401
+ "learning_rate": 0.00024814814814814816,
2402
+ "loss": 0.7037,
2403
+ "step": 1995
2404
+ },
2405
+ {
2406
+ "epoch": 0.8,
2407
+ "learning_rate": 0.0002477366255144033,
2408
+ "loss": 0.721,
2409
+ "step": 2000
2410
+ },
2411
+ {
2412
+ "epoch": 0.8,
2413
+ "learning_rate": 0.0002473251028806585,
2414
+ "loss": 0.7353,
2415
+ "step": 2005
2416
+ },
2417
+ {
2418
+ "epoch": 0.8,
2419
+ "learning_rate": 0.0002469135802469136,
2420
+ "loss": 0.7648,
2421
+ "step": 2010
2422
+ },
2423
+ {
2424
+ "epoch": 0.8,
2425
+ "learning_rate": 0.00024650205761316874,
2426
+ "loss": 0.7445,
2427
+ "step": 2015
2428
+ },
2429
+ {
2430
+ "epoch": 0.81,
2431
+ "learning_rate": 0.0002460905349794239,
2432
+ "loss": 0.7664,
2433
+ "step": 2020
2434
+ },
2435
+ {
2436
+ "epoch": 0.81,
2437
+ "learning_rate": 0.000245679012345679,
2438
+ "loss": 0.7202,
2439
+ "step": 2025
2440
+ },
2441
+ {
2442
+ "epoch": 0.81,
2443
+ "learning_rate": 0.00024526748971193417,
2444
+ "loss": 0.7147,
2445
+ "step": 2030
2446
+ },
2447
+ {
2448
+ "epoch": 0.81,
2449
+ "learning_rate": 0.0002448559670781893,
2450
+ "loss": 0.722,
2451
+ "step": 2035
2452
+ },
2453
+ {
2454
+ "epoch": 0.81,
2455
+ "learning_rate": 0.0002444444444444445,
2456
+ "loss": 0.7539,
2457
+ "step": 2040
2458
+ },
2459
+ {
2460
+ "epoch": 0.82,
2461
+ "learning_rate": 0.0002440329218106996,
2462
+ "loss": 0.7681,
2463
+ "step": 2045
2464
+ },
2465
+ {
2466
+ "epoch": 0.82,
2467
+ "learning_rate": 0.00024362139917695475,
2468
+ "loss": 0.7304,
2469
+ "step": 2050
2470
+ },
2471
+ {
2472
+ "epoch": 0.82,
2473
+ "learning_rate": 0.0002432098765432099,
2474
+ "loss": 0.7432,
2475
+ "step": 2055
2476
+ },
2477
+ {
2478
+ "epoch": 0.82,
2479
+ "learning_rate": 0.000242798353909465,
2480
+ "loss": 0.6945,
2481
+ "step": 2060
2482
+ },
2483
+ {
2484
+ "epoch": 0.82,
2485
+ "learning_rate": 0.00024238683127572017,
2486
+ "loss": 0.7426,
2487
+ "step": 2065
2488
+ },
2489
+ {
2490
+ "epoch": 0.83,
2491
+ "learning_rate": 0.00024197530864197533,
2492
+ "loss": 0.7144,
2493
+ "step": 2070
2494
+ },
2495
+ {
2496
+ "epoch": 0.83,
2497
+ "learning_rate": 0.00024156378600823048,
2498
+ "loss": 0.7761,
2499
+ "step": 2075
2500
+ },
2501
+ {
2502
+ "epoch": 0.83,
2503
+ "learning_rate": 0.0002411522633744856,
2504
+ "loss": 0.7402,
2505
+ "step": 2080
2506
+ },
2507
+ {
2508
+ "epoch": 0.83,
2509
+ "learning_rate": 0.00024074074074074075,
2510
+ "loss": 0.7376,
2511
+ "step": 2085
2512
+ },
2513
+ {
2514
+ "epoch": 0.83,
2515
+ "learning_rate": 0.0002403292181069959,
2516
+ "loss": 0.7231,
2517
+ "step": 2090
2518
+ },
2519
+ {
2520
+ "epoch": 0.84,
2521
+ "learning_rate": 0.00023991769547325104,
2522
+ "loss": 0.7461,
2523
+ "step": 2095
2524
+ },
2525
+ {
2526
+ "epoch": 0.84,
2527
+ "learning_rate": 0.00023950617283950617,
2528
+ "loss": 0.7215,
2529
+ "step": 2100
2530
+ },
2531
+ {
2532
+ "epoch": 0.84,
2533
+ "learning_rate": 0.00023909465020576133,
2534
+ "loss": 0.7419,
2535
+ "step": 2105
2536
+ },
2537
+ {
2538
+ "epoch": 0.84,
2539
+ "learning_rate": 0.00023868312757201646,
2540
+ "loss": 0.7502,
2541
+ "step": 2110
2542
+ },
2543
+ {
2544
+ "epoch": 0.84,
2545
+ "learning_rate": 0.00023827160493827162,
2546
+ "loss": 0.7294,
2547
+ "step": 2115
2548
+ },
2549
+ {
2550
+ "epoch": 0.85,
2551
+ "learning_rate": 0.00023786008230452678,
2552
+ "loss": 0.7904,
2553
+ "step": 2120
2554
+ },
2555
+ {
2556
+ "epoch": 0.85,
2557
+ "learning_rate": 0.00023744855967078194,
2558
+ "loss": 0.7418,
2559
+ "step": 2125
2560
+ },
2561
+ {
2562
+ "epoch": 0.85,
2563
+ "learning_rate": 0.00023703703703703704,
2564
+ "loss": 0.7371,
2565
+ "step": 2130
2566
+ },
2567
+ {
2568
+ "epoch": 0.85,
2569
+ "learning_rate": 0.0002366255144032922,
2570
+ "loss": 0.7384,
2571
+ "step": 2135
2572
+ },
2573
+ {
2574
+ "epoch": 0.85,
2575
+ "learning_rate": 0.00023621399176954736,
2576
+ "loss": 0.7552,
2577
+ "step": 2140
2578
+ },
2579
+ {
2580
+ "epoch": 0.86,
2581
+ "learning_rate": 0.00023580246913580246,
2582
+ "loss": 0.7516,
2583
+ "step": 2145
2584
+ },
2585
+ {
2586
+ "epoch": 0.86,
2587
+ "learning_rate": 0.00023539094650205762,
2588
+ "loss": 0.7303,
2589
+ "step": 2150
2590
+ },
2591
+ {
2592
+ "epoch": 0.86,
2593
+ "learning_rate": 0.00023497942386831278,
2594
+ "loss": 0.7496,
2595
+ "step": 2155
2596
+ },
2597
+ {
2598
+ "epoch": 0.86,
2599
+ "learning_rate": 0.00023456790123456794,
2600
+ "loss": 0.7135,
2601
+ "step": 2160
2602
+ },
2603
+ {
2604
+ "epoch": 0.86,
2605
+ "learning_rate": 0.00023415637860082304,
2606
+ "loss": 0.7283,
2607
+ "step": 2165
2608
+ },
2609
+ {
2610
+ "epoch": 0.87,
2611
+ "learning_rate": 0.0002337448559670782,
2612
+ "loss": 0.751,
2613
+ "step": 2170
2614
+ },
2615
+ {
2616
+ "epoch": 0.87,
2617
+ "learning_rate": 0.00023333333333333336,
2618
+ "loss": 0.7183,
2619
+ "step": 2175
2620
+ },
2621
+ {
2622
+ "epoch": 0.87,
2623
+ "learning_rate": 0.00023292181069958846,
2624
+ "loss": 0.7242,
2625
+ "step": 2180
2626
+ },
2627
+ {
2628
+ "epoch": 0.87,
2629
+ "learning_rate": 0.00023251028806584362,
2630
+ "loss": 0.725,
2631
+ "step": 2185
2632
+ },
2633
+ {
2634
+ "epoch": 0.87,
2635
+ "learning_rate": 0.00023209876543209878,
2636
+ "loss": 0.753,
2637
+ "step": 2190
2638
+ },
2639
+ {
2640
+ "epoch": 0.88,
2641
+ "learning_rate": 0.0002316872427983539,
2642
+ "loss": 0.7664,
2643
+ "step": 2195
2644
+ },
2645
+ {
2646
+ "epoch": 0.88,
2647
+ "learning_rate": 0.00023127572016460904,
2648
+ "loss": 0.7444,
2649
+ "step": 2200
2650
+ },
2651
+ {
2652
+ "epoch": 0.88,
2653
+ "learning_rate": 0.0002308641975308642,
2654
+ "loss": 0.7226,
2655
+ "step": 2205
2656
+ },
2657
+ {
2658
+ "epoch": 0.88,
2659
+ "learning_rate": 0.00023045267489711936,
2660
+ "loss": 0.7653,
2661
+ "step": 2210
2662
+ },
2663
+ {
2664
+ "epoch": 0.88,
2665
+ "learning_rate": 0.0002300411522633745,
2666
+ "loss": 0.7382,
2667
+ "step": 2215
2668
+ },
2669
+ {
2670
+ "epoch": 0.89,
2671
+ "learning_rate": 0.00022962962962962965,
2672
+ "loss": 0.7242,
2673
+ "step": 2220
2674
+ },
2675
+ {
2676
+ "epoch": 0.89,
2677
+ "learning_rate": 0.0002292181069958848,
2678
+ "loss": 0.7215,
2679
+ "step": 2225
2680
+ },
2681
+ {
2682
+ "epoch": 0.89,
2683
+ "learning_rate": 0.0002288065843621399,
2684
+ "loss": 0.724,
2685
+ "step": 2230
2686
+ },
2687
+ {
2688
+ "epoch": 0.89,
2689
+ "learning_rate": 0.00022839506172839507,
2690
+ "loss": 0.7439,
2691
+ "step": 2235
2692
+ },
2693
+ {
2694
+ "epoch": 0.89,
2695
+ "learning_rate": 0.00022798353909465023,
2696
+ "loss": 0.699,
2697
+ "step": 2240
2698
+ },
2699
+ {
2700
+ "epoch": 0.9,
2701
+ "learning_rate": 0.0002275720164609054,
2702
+ "loss": 0.7602,
2703
+ "step": 2245
2704
+ },
2705
+ {
2706
+ "epoch": 0.9,
2707
+ "learning_rate": 0.0002271604938271605,
2708
+ "loss": 0.7103,
2709
+ "step": 2250
2710
+ },
2711
+ {
2712
+ "epoch": 0.9,
2713
+ "learning_rate": 0.00022674897119341565,
2714
+ "loss": 0.7015,
2715
+ "step": 2255
2716
+ },
2717
+ {
2718
+ "epoch": 0.9,
2719
+ "learning_rate": 0.0002263374485596708,
2720
+ "loss": 0.7404,
2721
+ "step": 2260
2722
+ },
2723
+ {
2724
+ "epoch": 0.9,
2725
+ "learning_rate": 0.00022592592592592591,
2726
+ "loss": 0.7127,
2727
+ "step": 2265
2728
+ },
2729
+ {
2730
+ "epoch": 0.91,
2731
+ "learning_rate": 0.00022551440329218107,
2732
+ "loss": 0.7299,
2733
+ "step": 2270
2734
+ },
2735
+ {
2736
+ "epoch": 0.91,
2737
+ "learning_rate": 0.00022510288065843623,
2738
+ "loss": 0.7174,
2739
+ "step": 2275
2740
+ },
2741
+ {
2742
+ "epoch": 0.91,
2743
+ "learning_rate": 0.0002246913580246914,
2744
+ "loss": 0.7454,
2745
+ "step": 2280
2746
+ },
2747
+ {
2748
+ "epoch": 0.91,
2749
+ "learning_rate": 0.0002242798353909465,
2750
+ "loss": 0.7159,
2751
+ "step": 2285
2752
+ },
2753
+ {
2754
+ "epoch": 0.91,
2755
+ "learning_rate": 0.00022386831275720165,
2756
+ "loss": 0.7263,
2757
+ "step": 2290
2758
+ },
2759
+ {
2760
+ "epoch": 0.92,
2761
+ "learning_rate": 0.0002234567901234568,
2762
+ "loss": 0.7148,
2763
+ "step": 2295
2764
+ },
2765
+ {
2766
+ "epoch": 0.92,
2767
+ "learning_rate": 0.00022304526748971192,
2768
+ "loss": 0.7447,
2769
+ "step": 2300
2770
+ },
2771
+ {
2772
+ "epoch": 0.92,
2773
+ "learning_rate": 0.00022263374485596707,
2774
+ "loss": 0.7326,
2775
+ "step": 2305
2776
+ },
2777
+ {
2778
+ "epoch": 0.92,
2779
+ "learning_rate": 0.00022222222222222223,
2780
+ "loss": 0.7428,
2781
+ "step": 2310
2782
+ },
2783
+ {
2784
+ "epoch": 0.92,
2785
+ "learning_rate": 0.00022181069958847736,
2786
+ "loss": 0.7587,
2787
+ "step": 2315
2788
+ },
2789
+ {
2790
+ "epoch": 0.93,
2791
+ "learning_rate": 0.00022139917695473252,
2792
+ "loss": 0.759,
2793
+ "step": 2320
2794
+ },
2795
+ {
2796
+ "epoch": 0.93,
2797
+ "learning_rate": 0.00022098765432098768,
2798
+ "loss": 0.7716,
2799
+ "step": 2325
2800
+ },
2801
+ {
2802
+ "epoch": 0.93,
2803
+ "learning_rate": 0.0002205761316872428,
2804
+ "loss": 0.74,
2805
+ "step": 2330
2806
+ },
2807
+ {
2808
+ "epoch": 0.93,
2809
+ "learning_rate": 0.00022016460905349794,
2810
+ "loss": 0.7255,
2811
+ "step": 2335
2812
+ },
2813
+ {
2814
+ "epoch": 0.93,
2815
+ "learning_rate": 0.0002197530864197531,
2816
+ "loss": 0.7547,
2817
+ "step": 2340
2818
+ },
2819
+ {
2820
+ "epoch": 0.94,
2821
+ "learning_rate": 0.00021934156378600826,
2822
+ "loss": 0.7359,
2823
+ "step": 2345
2824
+ },
2825
+ {
2826
+ "epoch": 0.94,
2827
+ "learning_rate": 0.00021893004115226337,
2828
+ "loss": 0.6987,
2829
+ "step": 2350
2830
+ },
2831
+ {
2832
+ "epoch": 0.94,
2833
+ "learning_rate": 0.00021851851851851852,
2834
+ "loss": 0.7233,
2835
+ "step": 2355
2836
+ },
2837
+ {
2838
+ "epoch": 0.94,
2839
+ "learning_rate": 0.00021810699588477368,
2840
+ "loss": 0.6945,
2841
+ "step": 2360
2842
+ },
2843
+ {
2844
+ "epoch": 0.94,
2845
+ "learning_rate": 0.00021769547325102884,
2846
+ "loss": 0.7566,
2847
+ "step": 2365
2848
+ },
2849
+ {
2850
+ "epoch": 0.95,
2851
+ "learning_rate": 0.00021728395061728395,
2852
+ "loss": 0.728,
2853
+ "step": 2370
2854
+ },
2855
+ {
2856
+ "epoch": 0.95,
2857
+ "learning_rate": 0.0002168724279835391,
2858
+ "loss": 0.7167,
2859
+ "step": 2375
2860
+ },
2861
+ {
2862
+ "epoch": 0.95,
2863
+ "learning_rate": 0.00021646090534979426,
2864
+ "loss": 0.7576,
2865
+ "step": 2380
2866
+ },
2867
+ {
2868
+ "epoch": 0.95,
2869
+ "learning_rate": 0.00021604938271604937,
2870
+ "loss": 0.7246,
2871
+ "step": 2385
2872
+ },
2873
+ {
2874
+ "epoch": 0.95,
2875
+ "learning_rate": 0.00021563786008230453,
2876
+ "loss": 0.755,
2877
+ "step": 2390
2878
+ },
2879
+ {
2880
+ "epoch": 0.96,
2881
+ "learning_rate": 0.00021522633744855968,
2882
+ "loss": 0.6983,
2883
+ "step": 2395
2884
+ },
2885
+ {
2886
+ "epoch": 0.96,
2887
+ "learning_rate": 0.00021481481481481484,
2888
+ "loss": 0.7369,
2889
+ "step": 2400
2890
+ },
2891
+ {
2892
+ "epoch": 0.96,
2893
+ "learning_rate": 0.00021440329218106995,
2894
+ "loss": 0.7074,
2895
+ "step": 2405
2896
+ },
2897
+ {
2898
+ "epoch": 0.96,
2899
+ "learning_rate": 0.0002139917695473251,
2900
+ "loss": 0.7317,
2901
+ "step": 2410
2902
+ },
2903
+ {
2904
+ "epoch": 0.96,
2905
+ "learning_rate": 0.00021358024691358026,
2906
+ "loss": 0.7086,
2907
+ "step": 2415
2908
+ },
2909
+ {
2910
+ "epoch": 0.97,
2911
+ "learning_rate": 0.0002131687242798354,
2912
+ "loss": 0.7356,
2913
+ "step": 2420
2914
+ },
2915
+ {
2916
+ "epoch": 0.97,
2917
+ "learning_rate": 0.00021275720164609055,
2918
+ "loss": 0.7652,
2919
+ "step": 2425
2920
+ },
2921
+ {
2922
+ "epoch": 0.97,
2923
+ "learning_rate": 0.00021234567901234569,
2924
+ "loss": 0.7488,
2925
+ "step": 2430
2926
+ },
2927
+ {
2928
+ "epoch": 0.97,
2929
+ "learning_rate": 0.00021193415637860082,
2930
+ "loss": 0.746,
2931
+ "step": 2435
2932
+ },
2933
+ {
2934
+ "epoch": 0.97,
2935
+ "learning_rate": 0.00021152263374485598,
2936
+ "loss": 0.7454,
2937
+ "step": 2440
2938
+ },
2939
+ {
2940
+ "epoch": 0.98,
2941
+ "learning_rate": 0.00021111111111111113,
2942
+ "loss": 0.72,
2943
+ "step": 2445
2944
+ },
2945
+ {
2946
+ "epoch": 0.98,
2947
+ "learning_rate": 0.0002106995884773663,
2948
+ "loss": 0.7299,
2949
+ "step": 2450
2950
+ },
2951
+ {
2952
+ "epoch": 0.98,
2953
+ "learning_rate": 0.0002102880658436214,
2954
+ "loss": 0.7436,
2955
+ "step": 2455
2956
+ },
2957
+ {
2958
+ "epoch": 0.98,
2959
+ "learning_rate": 0.00020987654320987656,
2960
+ "loss": 0.7068,
2961
+ "step": 2460
2962
+ },
2963
+ {
2964
+ "epoch": 0.98,
2965
+ "learning_rate": 0.00020946502057613171,
2966
+ "loss": 0.711,
2967
+ "step": 2465
2968
+ },
2969
+ {
2970
+ "epoch": 0.99,
2971
+ "learning_rate": 0.00020905349794238682,
2972
+ "loss": 0.7473,
2973
+ "step": 2470
2974
+ },
2975
+ {
2976
+ "epoch": 0.99,
2977
+ "learning_rate": 0.00020864197530864198,
2978
+ "loss": 0.7016,
2979
+ "step": 2475
2980
+ },
2981
+ {
2982
+ "epoch": 0.99,
2983
+ "learning_rate": 0.00020823045267489714,
2984
+ "loss": 0.7049,
2985
+ "step": 2480
2986
+ },
2987
+ {
2988
+ "epoch": 0.99,
2989
+ "learning_rate": 0.0002078189300411523,
2990
+ "loss": 0.7268,
2991
+ "step": 2485
2992
+ },
2993
+ {
2994
+ "epoch": 0.99,
2995
+ "learning_rate": 0.0002074074074074074,
2996
+ "loss": 0.7239,
2997
+ "step": 2490
2998
+ },
2999
+ {
3000
+ "epoch": 1.0,
3001
+ "learning_rate": 0.00020699588477366256,
3002
+ "loss": 0.698,
3003
+ "step": 2495
3004
+ },
3005
+ {
3006
+ "epoch": 1.0,
3007
+ "learning_rate": 0.00020658436213991772,
3008
+ "loss": 0.7573,
3009
+ "step": 2500
3010
+ }
3011
+ ],
3012
+ "logging_steps": 5,
3013
+ "max_steps": 5010,
3014
+ "num_input_tokens_seen": 0,
3015
+ "num_train_epochs": 2,
3016
+ "save_steps": 500,
3017
+ "total_flos": 1.006726589213311e+19,
3018
+ "train_batch_size": 1,
3019
+ "trial_name": null,
3020
+ "trial_params": null
3021
+ }
save_lora_instruct_r8_4e4_s11_1/checkpoint-2500/training_args.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:43458f4cf6aeb211c730b848f93ab15f483827c314fb4dc1e79dd1f658b7dbc8
3
+ size 5944
save_lora_instruct_r8_4e4_s11_1/checkpoint-2500/zero_to_fp32.py ADDED
@@ -0,0 +1,587 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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):
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
+ elif zero_stage == 3:
216
+ return _get_fp32_state_dict_from_zero3_checkpoint(world_size, fp32_flat_groups, zero_model_states)
217
+
218
+
219
+ def _zero2_merge_frozen_params(state_dict, zero_model_states):
220
+ if zero_model_states[0].frozen_param_shapes is None or len(zero_model_states[0].frozen_param_shapes) == 0:
221
+ return
222
+
223
+ frozen_param_shapes = zero_model_states[0].frozen_param_shapes
224
+ frozen_param_fragments = zero_model_states[0].frozen_param_fragments
225
+
226
+ if debug:
227
+ num_elem = sum(s.numel() for s in frozen_param_shapes.values())
228
+ print(f'rank 0: {FROZEN_PARAM_SHAPES}.numel = {num_elem}')
229
+
230
+ wanted_params = len(frozen_param_shapes)
231
+ wanted_numel = sum(s.numel() for s in frozen_param_shapes.values())
232
+ avail_numel = sum([p.numel() for p in frozen_param_fragments.values()])
233
+ print(f'Frozen params: Have {avail_numel} numels to process.')
234
+ print(f'Frozen params: Need {wanted_numel} numels in {wanted_params} params')
235
+
236
+ total_params = 0
237
+ total_numel = 0
238
+ for name, shape in frozen_param_shapes.items():
239
+ total_params += 1
240
+ unpartitioned_numel = shape.numel()
241
+ total_numel += unpartitioned_numel
242
+
243
+ state_dict[name] = frozen_param_fragments[name]
244
+
245
+ if debug:
246
+ print(f"{name} full shape: {shape} unpartitioned numel {unpartitioned_numel} ")
247
+
248
+ print(f"Reconstructed Frozen fp32 state dict with {total_params} params {total_numel} elements")
249
+
250
+
251
+ def _zero2_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states):
252
+ param_shapes = zero_model_states[0].param_shapes
253
+
254
+ # Reconstruction protocol:
255
+ #
256
+ # XXX: document this
257
+
258
+ if debug:
259
+ for i in range(world_size):
260
+ for j in range(len(fp32_flat_groups[0])):
261
+ print(f"{FP32_FLAT_GROUPS}[{i}][{j}].shape={fp32_flat_groups[i][j].shape}")
262
+
263
+ # XXX: memory usage doubles here (zero2)
264
+ num_param_groups = len(fp32_flat_groups[0])
265
+ merged_single_partition_of_fp32_groups = []
266
+ for i in range(num_param_groups):
267
+ merged_partitions = [sd[i] for sd in fp32_flat_groups]
268
+ full_single_fp32_vector = torch.cat(merged_partitions, 0)
269
+ merged_single_partition_of_fp32_groups.append(full_single_fp32_vector)
270
+ avail_numel = sum(
271
+ [full_single_fp32_vector.numel() for full_single_fp32_vector in merged_single_partition_of_fp32_groups])
272
+
273
+ if debug:
274
+ wanted_params = sum([len(shapes) for shapes in param_shapes])
275
+ wanted_numel = sum([sum(shape.numel() for shape in shapes.values()) for shapes in param_shapes])
276
+ # not asserting if there is a mismatch due to possible padding
277
+ print(f"Have {avail_numel} numels to process.")
278
+ print(f"Need {wanted_numel} numels in {wanted_params} params.")
279
+
280
+ # params
281
+ # XXX: for huge models that can't fit into the host's RAM we will have to recode this to support
282
+ # out-of-core computing solution
283
+ total_numel = 0
284
+ total_params = 0
285
+ for shapes, full_single_fp32_vector in zip(param_shapes, merged_single_partition_of_fp32_groups):
286
+ offset = 0
287
+ avail_numel = full_single_fp32_vector.numel()
288
+ for name, shape in shapes.items():
289
+
290
+ unpartitioned_numel = shape.numel()
291
+ total_numel += unpartitioned_numel
292
+ total_params += 1
293
+
294
+ if debug:
295
+ print(f"{name} full shape: {shape} unpartitioned numel {unpartitioned_numel} ")
296
+ state_dict[name] = full_single_fp32_vector.narrow(0, offset, unpartitioned_numel).view(shape)
297
+ offset += unpartitioned_numel
298
+
299
+ # Z2 started to align to 2*world_size to improve nccl performance. Therefore both offset and
300
+ # avail_numel can differ by anywhere between 0..2*world_size. Due to two unrelated complex
301
+ # paddings performed in the code it's almost impossible to predict the exact numbers w/o the
302
+ # live optimizer object, so we are checking that the numbers are within the right range
303
+ align_to = 2 * world_size
304
+
305
+ def zero2_align(x):
306
+ return align_to * math.ceil(x / align_to)
307
+
308
+ if debug:
309
+ print(f"original offset={offset}, avail_numel={avail_numel}")
310
+
311
+ offset = zero2_align(offset)
312
+ avail_numel = zero2_align(avail_numel)
313
+
314
+ if debug:
315
+ print(f"aligned offset={offset}, avail_numel={avail_numel}")
316
+
317
+ # Sanity check
318
+ if offset != avail_numel:
319
+ raise ValueError(f"consumed {offset} numels out of {avail_numel} - something is wrong")
320
+
321
+ print(f"Reconstructed fp32 state dict with {total_params} params {total_numel} elements")
322
+
323
+
324
+ def _get_fp32_state_dict_from_zero2_checkpoint(world_size, fp32_flat_groups, zero_model_states):
325
+ state_dict = OrderedDict()
326
+
327
+ # buffers
328
+ buffers = zero_model_states[0].buffers
329
+ state_dict.update(buffers)
330
+ if debug:
331
+ print(f"added {len(buffers)} buffers")
332
+
333
+ _zero2_merge_frozen_params(state_dict, zero_model_states)
334
+
335
+ _zero2_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states)
336
+
337
+ # recover shared parameters
338
+ for pair in zero_model_states[0].shared_params:
339
+ if pair[1] in state_dict:
340
+ state_dict[pair[0]] = state_dict[pair[1]]
341
+
342
+ return state_dict
343
+
344
+
345
+ def zero3_partitioned_param_info(unpartitioned_numel, world_size):
346
+ remainder = unpartitioned_numel % world_size
347
+ padding_numel = (world_size - remainder) if remainder else 0
348
+ partitioned_numel = math.ceil(unpartitioned_numel / world_size)
349
+ return partitioned_numel, padding_numel
350
+
351
+
352
+ def _zero3_merge_frozen_params(state_dict, world_size, zero_model_states):
353
+ if zero_model_states[0].frozen_param_shapes is None or len(zero_model_states[0].frozen_param_shapes) == 0:
354
+ return
355
+
356
+ if debug:
357
+ for i in range(world_size):
358
+ num_elem = sum(s.numel() for s in zero_model_states[i].frozen_param_fragments.values())
359
+ print(f'rank {i}: {FROZEN_PARAM_SHAPES}.numel = {num_elem}')
360
+
361
+ frozen_param_shapes = zero_model_states[0].frozen_param_shapes
362
+ wanted_params = len(frozen_param_shapes)
363
+ wanted_numel = sum(s.numel() for s in frozen_param_shapes.values())
364
+ avail_numel = sum([p.numel() for p in zero_model_states[0].frozen_param_fragments.values()]) * world_size
365
+ print(f'Frozen params: Have {avail_numel} numels to process.')
366
+ print(f'Frozen params: Need {wanted_numel} numels in {wanted_params} params')
367
+
368
+ total_params = 0
369
+ total_numel = 0
370
+ for name, shape in zero_model_states[0].frozen_param_shapes.items():
371
+ total_params += 1
372
+ unpartitioned_numel = shape.numel()
373
+ total_numel += unpartitioned_numel
374
+
375
+ param_frags = tuple(model_state.frozen_param_fragments[name] for model_state in zero_model_states)
376
+ state_dict[name] = torch.cat(param_frags, 0).narrow(0, 0, unpartitioned_numel).view(shape)
377
+
378
+ partitioned_numel, partitioned_padding_numel = zero3_partitioned_param_info(unpartitioned_numel, world_size)
379
+
380
+ if debug:
381
+ print(
382
+ f"Frozen params: {total_params} {name} full shape: {shape} partition0 numel={partitioned_numel} partitioned_padding_numel={partitioned_padding_numel}"
383
+ )
384
+
385
+ print(f"Reconstructed Frozen fp32 state dict with {total_params} params {total_numel} elements")
386
+
387
+
388
+ def _zero3_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states):
389
+ param_shapes = zero_model_states[0].param_shapes
390
+ avail_numel = fp32_flat_groups[0].numel() * world_size
391
+ # Reconstruction protocol: For zero3 we need to zip the partitions together at boundary of each
392
+ # param, re-consolidating each param, while dealing with padding if any
393
+
394
+ # merge list of dicts, preserving order
395
+ param_shapes = {k: v for d in param_shapes for k, v in d.items()}
396
+
397
+ if debug:
398
+ for i in range(world_size):
399
+ print(f"{FP32_FLAT_GROUPS}[{i}].shape={fp32_flat_groups[i].shape}")
400
+
401
+ wanted_params = len(param_shapes)
402
+ wanted_numel = sum(shape.numel() for shape in param_shapes.values())
403
+ # not asserting if there is a mismatch due to possible padding
404
+ avail_numel = fp32_flat_groups[0].numel() * world_size
405
+ print(f"Trainable params: Have {avail_numel} numels to process.")
406
+ print(f"Trainable params: Need {wanted_numel} numels in {wanted_params} params.")
407
+
408
+ # params
409
+ # XXX: for huge models that can't fit into the host's RAM we will have to recode this to support
410
+ # out-of-core computing solution
411
+ offset = 0
412
+ total_numel = 0
413
+ total_params = 0
414
+ for name, shape in param_shapes.items():
415
+
416
+ unpartitioned_numel = shape.numel()
417
+ total_numel += unpartitioned_numel
418
+ total_params += 1
419
+
420
+ partitioned_numel, partitioned_padding_numel = zero3_partitioned_param_info(unpartitioned_numel, world_size)
421
+
422
+ if debug:
423
+ print(
424
+ f"Trainable params: {total_params} {name} full shape: {shape} partition0 numel={partitioned_numel} partitioned_padding_numel={partitioned_padding_numel}"
425
+ )
426
+
427
+ # XXX: memory usage doubles here
428
+ state_dict[name] = torch.cat(
429
+ tuple(fp32_flat_groups[i].narrow(0, offset, partitioned_numel) for i in range(world_size)),
430
+ 0).narrow(0, 0, unpartitioned_numel).view(shape)
431
+ offset += partitioned_numel
432
+
433
+ offset *= world_size
434
+
435
+ # Sanity check
436
+ if offset != avail_numel:
437
+ raise ValueError(f"consumed {offset} numels out of {avail_numel} - something is wrong")
438
+
439
+ print(f"Reconstructed Trainable fp32 state dict with {total_params} params {total_numel} elements")
440
+
441
+
442
+ def _get_fp32_state_dict_from_zero3_checkpoint(world_size, fp32_flat_groups, zero_model_states):
443
+ state_dict = OrderedDict()
444
+
445
+ # buffers
446
+ buffers = zero_model_states[0].buffers
447
+ state_dict.update(buffers)
448
+ if debug:
449
+ print(f"added {len(buffers)} buffers")
450
+
451
+ _zero3_merge_frozen_params(state_dict, world_size, zero_model_states)
452
+
453
+ _zero3_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states)
454
+
455
+ # recover shared parameters
456
+ for pair in zero_model_states[0].shared_params:
457
+ if pair[1] in state_dict:
458
+ state_dict[pair[0]] = state_dict[pair[1]]
459
+
460
+ return state_dict
461
+
462
+
463
+ def get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir, tag=None):
464
+ """
465
+ Convert ZeRO 2 or 3 checkpoint into a single fp32 consolidated state_dict that can be loaded with
466
+ ``load_state_dict()`` and used for training without DeepSpeed or shared with others, for example
467
+ via a model hub.
468
+
469
+ Args:
470
+ - ``checkpoint_dir``: path to the desired checkpoint folder
471
+ - ``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``
472
+
473
+ Returns:
474
+ - pytorch ``state_dict``
475
+
476
+ Note: this approach may not work if your application doesn't have sufficient free CPU memory and
477
+ you may need to use the offline approach using the ``zero_to_fp32.py`` script that is saved with
478
+ the checkpoint.
479
+
480
+ A typical usage might be ::
481
+
482
+ from deepspeed.utils.zero_to_fp32 import get_fp32_state_dict_from_zero_checkpoint
483
+ # do the training and checkpoint saving
484
+ state_dict = get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir) # already on cpu
485
+ model = model.cpu() # move to cpu
486
+ model.load_state_dict(state_dict)
487
+ # submit to model hub or save the model to share with others
488
+
489
+ In this example the ``model`` will no longer be usable in the deepspeed context of the same
490
+ application. i.e. you will need to re-initialize the deepspeed engine, since
491
+ ``model.load_state_dict(state_dict)`` will remove all the deepspeed magic from it.
492
+
493
+ If you want it all done for you, use ``load_state_dict_from_zero_checkpoint`` instead.
494
+
495
+ """
496
+ if tag is None:
497
+ latest_path = os.path.join(checkpoint_dir, 'latest')
498
+ if os.path.isfile(latest_path):
499
+ with open(latest_path, 'r') as fd:
500
+ tag = fd.read().strip()
501
+ else:
502
+ raise ValueError(f"Unable to find 'latest' file at {latest_path}")
503
+
504
+ ds_checkpoint_dir = os.path.join(checkpoint_dir, tag)
505
+
506
+ if not os.path.isdir(ds_checkpoint_dir):
507
+ raise FileNotFoundError(f"Directory '{ds_checkpoint_dir}' doesn't exist")
508
+
509
+ return _get_fp32_state_dict_from_zero_checkpoint(ds_checkpoint_dir)
510
+
511
+
512
+ def convert_zero_checkpoint_to_fp32_state_dict(checkpoint_dir, output_file, tag=None):
513
+ """
514
+ Convert ZeRO 2 or 3 checkpoint into a single fp32 consolidated ``state_dict`` file that can be
515
+ loaded with ``torch.load(file)`` + ``load_state_dict()`` and used for training without DeepSpeed.
516
+
517
+ Args:
518
+ - ``checkpoint_dir``: path to the desired checkpoint folder. (one that contains the tag-folder, like ``global_step14``)
519
+ - ``output_file``: path to the pytorch fp32 state_dict output file (e.g. path/pytorch_model.bin)
520
+ - ``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``
521
+ """
522
+
523
+ state_dict = get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir, tag)
524
+ print(f"Saving fp32 state dict to {output_file}")
525
+ torch.save(state_dict, output_file)
526
+
527
+
528
+ def load_state_dict_from_zero_checkpoint(model, checkpoint_dir, tag=None):
529
+ """
530
+ 1. Put the provided model to cpu
531
+ 2. Convert ZeRO 2 or 3 checkpoint into a single fp32 consolidated ``state_dict``
532
+ 3. Load it into the provided model
533
+
534
+ Args:
535
+ - ``model``: the model object to update
536
+ - ``checkpoint_dir``: path to the desired checkpoint folder. (one that contains the tag-folder, like ``global_step14``)
537
+ - ``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``
538
+
539
+ Returns:
540
+ - ``model`: modified model
541
+
542
+ Make sure you have plenty of CPU memory available before you call this function. If you don't
543
+ have enough use the ``zero_to_fp32.py`` utility to do the conversion. You will find it
544
+ conveniently placed for you in the checkpoint folder.
545
+
546
+ A typical usage might be ::
547
+
548
+ from deepspeed.utils.zero_to_fp32 import load_state_dict_from_zero_checkpoint
549
+ model = load_state_dict_from_zero_checkpoint(trainer.model, checkpoint_dir)
550
+ # submit to model hub or save the model to share with others
551
+
552
+ Note, that once this was run, the ``model`` will no longer be usable in the deepspeed context
553
+ of the same application. i.e. you will need to re-initialize the deepspeed engine, since
554
+ ``model.load_state_dict(state_dict)`` will remove all the deepspeed magic from it.
555
+
556
+ """
557
+ logger.info(f"Extracting fp32 weights")
558
+ state_dict = get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir, tag)
559
+
560
+ logger.info(f"Overwriting model with fp32 weights")
561
+ model = model.cpu()
562
+ model.load_state_dict(state_dict, strict=False)
563
+
564
+ return model
565
+
566
+
567
+ if __name__ == "__main__":
568
+
569
+ parser = argparse.ArgumentParser()
570
+ parser.add_argument("checkpoint_dir",
571
+ type=str,
572
+ help="path to the desired checkpoint folder, e.g., path/checkpoint-12")
573
+ parser.add_argument(
574
+ "output_file",
575
+ type=str,
576
+ help="path to the pytorch fp32 state_dict output file (e.g. path/checkpoint-12/pytorch_model.bin)")
577
+ parser.add_argument("-t",
578
+ "--tag",
579
+ type=str,
580
+ default=None,
581
+ help="checkpoint tag used as a unique identifier for checkpoint. e.g., global_step1")
582
+ parser.add_argument("-d", "--debug", action='store_true', help="enable debug")
583
+ args = parser.parse_args()
584
+
585
+ debug = args.debug
586
+
587
+ convert_zero_checkpoint_to_fp32_state_dict(args.checkpoint_dir, args.output_file, tag=args.tag)
save_lora_instruct_r8_4e4_s11_1/checkpoint-3000/README.md ADDED
@@ -0,0 +1,202 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ base_model: meta-llama/Llama-2-7b-hf
3
+ library_name: peft
4
+ ---
5
+
6
+ # Model Card for Model ID
7
+
8
+ <!-- Provide a quick summary of what the model is/does. -->
9
+
10
+
11
+
12
+ ## Model Details
13
+
14
+ ### Model Description
15
+
16
+ <!-- Provide a longer summary of what this model is. -->
17
+
18
+
19
+
20
+ - **Developed by:** [More Information Needed]
21
+ - **Funded by [optional]:** [More Information Needed]
22
+ - **Shared by [optional]:** [More Information Needed]
23
+ - **Model type:** [More Information Needed]
24
+ - **Language(s) (NLP):** [More Information Needed]
25
+ - **License:** [More Information Needed]
26
+ - **Finetuned from model [optional]:** [More Information Needed]
27
+
28
+ ### Model Sources [optional]
29
+
30
+ <!-- Provide the basic links for the model. -->
31
+
32
+ - **Repository:** [More Information Needed]
33
+ - **Paper [optional]:** [More Information Needed]
34
+ - **Demo [optional]:** [More Information Needed]
35
+
36
+ ## Uses
37
+
38
+ <!-- Address questions around how the model is intended to be used, including the foreseeable users of the model and those affected by the model. -->
39
+
40
+ ### Direct Use
41
+
42
+ <!-- This section is for the model use without fine-tuning or plugging into a larger ecosystem/app. -->
43
+
44
+ [More Information Needed]
45
+
46
+ ### Downstream Use [optional]
47
+
48
+ <!-- This section is for the model use when fine-tuned for a task, or when plugged into a larger ecosystem/app -->
49
+
50
+ [More Information Needed]
51
+
52
+ ### Out-of-Scope Use
53
+
54
+ <!-- This section addresses misuse, malicious use, and uses that the model will not work well for. -->
55
+
56
+ [More Information Needed]
57
+
58
+ ## Bias, Risks, and Limitations
59
+
60
+ <!-- This section is meant to convey both technical and sociotechnical limitations. -->
61
+
62
+ [More Information Needed]
63
+
64
+ ### Recommendations
65
+
66
+ <!-- This section is meant to convey recommendations with respect to the bias, risk, and technical limitations. -->
67
+
68
+ Users (both direct and downstream) should be made aware of the risks, biases and limitations of the model. More information needed for further recommendations.
69
+
70
+ ## How to Get Started with the Model
71
+
72
+ Use the code below to get started with the model.
73
+
74
+ [More Information Needed]
75
+
76
+ ## Training Details
77
+
78
+ ### Training Data
79
+
80
+ <!-- This should link to a Dataset Card, perhaps with a short stub of information on what the training data is all about as well as documentation related to data pre-processing or additional filtering. -->
81
+
82
+ [More Information Needed]
83
+
84
+ ### Training Procedure
85
+
86
+ <!-- This relates heavily to the Technical Specifications. Content here should link to that section when it is relevant to the training procedure. -->
87
+
88
+ #### Preprocessing [optional]
89
+
90
+ [More Information Needed]
91
+
92
+
93
+ #### Training Hyperparameters
94
+
95
+ - **Training regime:** [More Information Needed] <!--fp32, fp16 mixed precision, bf16 mixed precision, bf16 non-mixed precision, fp16 non-mixed precision, fp8 mixed precision -->
96
+
97
+ #### Speeds, Sizes, Times [optional]
98
+
99
+ <!-- This section provides information about throughput, start/end time, checkpoint size if relevant, etc. -->
100
+
101
+ [More Information Needed]
102
+
103
+ ## Evaluation
104
+
105
+ <!-- This section describes the evaluation protocols and provides the results. -->
106
+
107
+ ### Testing Data, Factors & Metrics
108
+
109
+ #### Testing Data
110
+
111
+ <!-- This should link to a Dataset Card if possible. -->
112
+
113
+ [More Information Needed]
114
+
115
+ #### Factors
116
+
117
+ <!-- These are the things the evaluation is disaggregating by, e.g., subpopulations or domains. -->
118
+
119
+ [More Information Needed]
120
+
121
+ #### Metrics
122
+
123
+ <!-- These are the evaluation metrics being used, ideally with a description of why. -->
124
+
125
+ [More Information Needed]
126
+
127
+ ### Results
128
+
129
+ [More Information Needed]
130
+
131
+ #### Summary
132
+
133
+
134
+
135
+ ## Model Examination [optional]
136
+
137
+ <!-- Relevant interpretability work for the model goes here -->
138
+
139
+ [More Information Needed]
140
+
141
+ ## Environmental Impact
142
+
143
+ <!-- Total emissions (in grams of CO2eq) and additional considerations, such as electricity usage, go here. Edit the suggested text below accordingly -->
144
+
145
+ Carbon emissions can be estimated using the [Machine Learning Impact calculator](https://mlco2.github.io/impact#compute) presented in [Lacoste et al. (2019)](https://arxiv.org/abs/1910.09700).
146
+
147
+ - **Hardware Type:** [More Information Needed]
148
+ - **Hours used:** [More Information Needed]
149
+ - **Cloud Provider:** [More Information Needed]
150
+ - **Compute Region:** [More Information Needed]
151
+ - **Carbon Emitted:** [More Information Needed]
152
+
153
+ ## Technical Specifications [optional]
154
+
155
+ ### Model Architecture and Objective
156
+
157
+ [More Information Needed]
158
+
159
+ ### Compute Infrastructure
160
+
161
+ [More Information Needed]
162
+
163
+ #### Hardware
164
+
165
+ [More Information Needed]
166
+
167
+ #### Software
168
+
169
+ [More Information Needed]
170
+
171
+ ## Citation [optional]
172
+
173
+ <!-- If there is a paper or blog post introducing the model, the APA and Bibtex information for that should go in this section. -->
174
+
175
+ **BibTeX:**
176
+
177
+ [More Information Needed]
178
+
179
+ **APA:**
180
+
181
+ [More Information Needed]
182
+
183
+ ## Glossary [optional]
184
+
185
+ <!-- If relevant, include terms and calculations in this section that can help readers understand the model or model card. -->
186
+
187
+ [More Information Needed]
188
+
189
+ ## More Information [optional]
190
+
191
+ [More Information Needed]
192
+
193
+ ## Model Card Authors [optional]
194
+
195
+ [More Information Needed]
196
+
197
+ ## Model Card Contact
198
+
199
+ [More Information Needed]
200
+ ### Framework versions
201
+
202
+ - PEFT 0.9.0
save_lora_instruct_r8_4e4_s11_1/checkpoint-3000/adapter_config.json ADDED
@@ -0,0 +1,35 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "alpha_pattern": {},
3
+ "auto_mapping": null,
4
+ "base_model_name_or_path": "meta-llama/Llama-2-7b-hf",
5
+ "bias": "none",
6
+ "fan_in_fan_out": false,
7
+ "inference_mode": true,
8
+ "init_lora_weights": true,
9
+ "layers_pattern": null,
10
+ "layers_to_transform": null,
11
+ "loftq_config": {},
12
+ "lora_alpha": 16,
13
+ "lora_dropout": 0.05,
14
+ "megatron_config": null,
15
+ "megatron_core": "megatron.core",
16
+ "modules_to_save": null,
17
+ "mora_type": 1,
18
+ "peft_type": "LORA",
19
+ "r": 8,
20
+ "rank_pattern": {},
21
+ "revision": null,
22
+ "target_modules": [
23
+ "q_proj",
24
+ "k_proj",
25
+ "v_proj",
26
+ "o_proj",
27
+ "gate_proj",
28
+ "down_proj",
29
+ "up_proj"
30
+ ],
31
+ "task_type": "CAUSAL_LM",
32
+ "use_dora": false,
33
+ "use_mora": false,
34
+ "use_rslora": false
35
+ }
save_lora_instruct_r8_4e4_s11_1/checkpoint-3000/adapter_model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:594b67f8ef6310c9ff1be2eeb1ef6e747610cd7066b4afb6e1565107960ae791
3
+ size 564342240
save_lora_instruct_r8_4e4_s11_1/checkpoint-3000/global_step3000/bf16_zero_pp_rank_0_mp_rank_00_optim_states.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:9040a90f5d8818966640769ae8b1972e8162567456b23ae9d6b84ef4032e980b
3
+ size 239914224
save_lora_instruct_r8_4e4_s11_1/checkpoint-3000/global_step3000/mp_rank_00_model_states.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:fea4b1fe3e6d7ecadb081b903d9a5b6f21d8dd89b942f105211beee91c283886
3
+ size 40303404
save_lora_instruct_r8_4e4_s11_1/checkpoint-3000/latest ADDED
@@ -0,0 +1 @@
 
 
1
+ global_step3000
save_lora_instruct_r8_4e4_s11_1/checkpoint-3000/rng_state.pth ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:602ff114cd2710380875f9cf15b09f6fc6a211d90bdfc8416e511f12377a1bd9
3
+ size 14244
save_lora_instruct_r8_4e4_s11_1/checkpoint-3000/scheduler.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:083abc970a85acd0fe0036aee21d5b5cee2ceb437d75185f43bb0e09b5a91147
3
+ size 1064
save_lora_instruct_r8_4e4_s11_1/checkpoint-3000/trainer_state.json ADDED
@@ -0,0 +1,3621 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "best_metric": null,
3
+ "best_model_checkpoint": null,
4
+ "epoch": 1.197492749555618,
5
+ "eval_steps": 500,
6
+ "global_step": 3000,
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.0,
13
+ "learning_rate": 1.3333333333333333e-05,
14
+ "loss": 1.3798,
15
+ "step": 5
16
+ },
17
+ {
18
+ "epoch": 0.0,
19
+ "learning_rate": 2.6666666666666667e-05,
20
+ "loss": 1.3917,
21
+ "step": 10
22
+ },
23
+ {
24
+ "epoch": 0.01,
25
+ "learning_rate": 4e-05,
26
+ "loss": 1.2862,
27
+ "step": 15
28
+ },
29
+ {
30
+ "epoch": 0.01,
31
+ "learning_rate": 5.333333333333333e-05,
32
+ "loss": 1.2046,
33
+ "step": 20
34
+ },
35
+ {
36
+ "epoch": 0.01,
37
+ "learning_rate": 6.666666666666667e-05,
38
+ "loss": 1.0634,
39
+ "step": 25
40
+ },
41
+ {
42
+ "epoch": 0.01,
43
+ "learning_rate": 8e-05,
44
+ "loss": 1.0273,
45
+ "step": 30
46
+ },
47
+ {
48
+ "epoch": 0.01,
49
+ "learning_rate": 9.333333333333334e-05,
50
+ "loss": 1.0472,
51
+ "step": 35
52
+ },
53
+ {
54
+ "epoch": 0.02,
55
+ "learning_rate": 0.00010666666666666667,
56
+ "loss": 1.0301,
57
+ "step": 40
58
+ },
59
+ {
60
+ "epoch": 0.02,
61
+ "learning_rate": 0.00012,
62
+ "loss": 0.9335,
63
+ "step": 45
64
+ },
65
+ {
66
+ "epoch": 0.02,
67
+ "learning_rate": 0.00013333333333333334,
68
+ "loss": 0.921,
69
+ "step": 50
70
+ },
71
+ {
72
+ "epoch": 0.02,
73
+ "learning_rate": 0.00014666666666666666,
74
+ "loss": 0.9506,
75
+ "step": 55
76
+ },
77
+ {
78
+ "epoch": 0.02,
79
+ "learning_rate": 0.00016,
80
+ "loss": 0.8876,
81
+ "step": 60
82
+ },
83
+ {
84
+ "epoch": 0.03,
85
+ "learning_rate": 0.00017333333333333334,
86
+ "loss": 0.9335,
87
+ "step": 65
88
+ },
89
+ {
90
+ "epoch": 0.03,
91
+ "learning_rate": 0.0001866666666666667,
92
+ "loss": 0.8554,
93
+ "step": 70
94
+ },
95
+ {
96
+ "epoch": 0.03,
97
+ "learning_rate": 0.0002,
98
+ "loss": 0.8537,
99
+ "step": 75
100
+ },
101
+ {
102
+ "epoch": 0.03,
103
+ "learning_rate": 0.00021333333333333333,
104
+ "loss": 0.9033,
105
+ "step": 80
106
+ },
107
+ {
108
+ "epoch": 0.03,
109
+ "learning_rate": 0.00022666666666666668,
110
+ "loss": 0.8203,
111
+ "step": 85
112
+ },
113
+ {
114
+ "epoch": 0.04,
115
+ "learning_rate": 0.00024,
116
+ "loss": 0.8611,
117
+ "step": 90
118
+ },
119
+ {
120
+ "epoch": 0.04,
121
+ "learning_rate": 0.00025333333333333333,
122
+ "loss": 0.8303,
123
+ "step": 95
124
+ },
125
+ {
126
+ "epoch": 0.04,
127
+ "learning_rate": 0.0002666666666666667,
128
+ "loss": 0.8528,
129
+ "step": 100
130
+ },
131
+ {
132
+ "epoch": 0.04,
133
+ "learning_rate": 0.00028,
134
+ "loss": 0.8537,
135
+ "step": 105
136
+ },
137
+ {
138
+ "epoch": 0.04,
139
+ "learning_rate": 0.0002933333333333333,
140
+ "loss": 0.8286,
141
+ "step": 110
142
+ },
143
+ {
144
+ "epoch": 0.05,
145
+ "learning_rate": 0.0003066666666666667,
146
+ "loss": 0.8449,
147
+ "step": 115
148
+ },
149
+ {
150
+ "epoch": 0.05,
151
+ "learning_rate": 0.00032,
152
+ "loss": 0.8377,
153
+ "step": 120
154
+ },
155
+ {
156
+ "epoch": 0.05,
157
+ "learning_rate": 0.0003333333333333334,
158
+ "loss": 0.8419,
159
+ "step": 125
160
+ },
161
+ {
162
+ "epoch": 0.05,
163
+ "learning_rate": 0.00034666666666666667,
164
+ "loss": 0.8265,
165
+ "step": 130
166
+ },
167
+ {
168
+ "epoch": 0.05,
169
+ "learning_rate": 0.00036,
170
+ "loss": 0.8037,
171
+ "step": 135
172
+ },
173
+ {
174
+ "epoch": 0.06,
175
+ "learning_rate": 0.0003733333333333334,
176
+ "loss": 0.7924,
177
+ "step": 140
178
+ },
179
+ {
180
+ "epoch": 0.06,
181
+ "learning_rate": 0.00038666666666666667,
182
+ "loss": 0.8245,
183
+ "step": 145
184
+ },
185
+ {
186
+ "epoch": 0.06,
187
+ "learning_rate": 0.0004,
188
+ "loss": 0.8388,
189
+ "step": 150
190
+ },
191
+ {
192
+ "epoch": 0.06,
193
+ "learning_rate": 0.0003995884773662552,
194
+ "loss": 0.8066,
195
+ "step": 155
196
+ },
197
+ {
198
+ "epoch": 0.06,
199
+ "learning_rate": 0.0003991769547325103,
200
+ "loss": 0.8107,
201
+ "step": 160
202
+ },
203
+ {
204
+ "epoch": 0.07,
205
+ "learning_rate": 0.00039876543209876544,
206
+ "loss": 0.8005,
207
+ "step": 165
208
+ },
209
+ {
210
+ "epoch": 0.07,
211
+ "learning_rate": 0.0003983539094650206,
212
+ "loss": 0.7727,
213
+ "step": 170
214
+ },
215
+ {
216
+ "epoch": 0.07,
217
+ "learning_rate": 0.00039794238683127576,
218
+ "loss": 0.8276,
219
+ "step": 175
220
+ },
221
+ {
222
+ "epoch": 0.07,
223
+ "learning_rate": 0.00039753086419753086,
224
+ "loss": 0.8464,
225
+ "step": 180
226
+ },
227
+ {
228
+ "epoch": 0.07,
229
+ "learning_rate": 0.000397119341563786,
230
+ "loss": 0.8348,
231
+ "step": 185
232
+ },
233
+ {
234
+ "epoch": 0.08,
235
+ "learning_rate": 0.0003967078189300412,
236
+ "loss": 0.8228,
237
+ "step": 190
238
+ },
239
+ {
240
+ "epoch": 0.08,
241
+ "learning_rate": 0.0003962962962962963,
242
+ "loss": 0.8254,
243
+ "step": 195
244
+ },
245
+ {
246
+ "epoch": 0.08,
247
+ "learning_rate": 0.00039588477366255144,
248
+ "loss": 0.817,
249
+ "step": 200
250
+ },
251
+ {
252
+ "epoch": 0.08,
253
+ "learning_rate": 0.0003954732510288066,
254
+ "loss": 0.8365,
255
+ "step": 205
256
+ },
257
+ {
258
+ "epoch": 0.08,
259
+ "learning_rate": 0.0003950617283950617,
260
+ "loss": 0.793,
261
+ "step": 210
262
+ },
263
+ {
264
+ "epoch": 0.09,
265
+ "learning_rate": 0.00039465020576131686,
266
+ "loss": 0.8014,
267
+ "step": 215
268
+ },
269
+ {
270
+ "epoch": 0.09,
271
+ "learning_rate": 0.000394238683127572,
272
+ "loss": 0.8049,
273
+ "step": 220
274
+ },
275
+ {
276
+ "epoch": 0.09,
277
+ "learning_rate": 0.0003938271604938272,
278
+ "loss": 0.7841,
279
+ "step": 225
280
+ },
281
+ {
282
+ "epoch": 0.09,
283
+ "learning_rate": 0.0003934156378600823,
284
+ "loss": 0.7977,
285
+ "step": 230
286
+ },
287
+ {
288
+ "epoch": 0.09,
289
+ "learning_rate": 0.00039300411522633744,
290
+ "loss": 0.8299,
291
+ "step": 235
292
+ },
293
+ {
294
+ "epoch": 0.1,
295
+ "learning_rate": 0.0003925925925925926,
296
+ "loss": 0.7729,
297
+ "step": 240
298
+ },
299
+ {
300
+ "epoch": 0.1,
301
+ "learning_rate": 0.00039218106995884776,
302
+ "loss": 0.8082,
303
+ "step": 245
304
+ },
305
+ {
306
+ "epoch": 0.1,
307
+ "learning_rate": 0.0003917695473251029,
308
+ "loss": 0.8173,
309
+ "step": 250
310
+ },
311
+ {
312
+ "epoch": 0.1,
313
+ "learning_rate": 0.000391358024691358,
314
+ "loss": 0.8379,
315
+ "step": 255
316
+ },
317
+ {
318
+ "epoch": 0.1,
319
+ "learning_rate": 0.0003909465020576132,
320
+ "loss": 0.7962,
321
+ "step": 260
322
+ },
323
+ {
324
+ "epoch": 0.11,
325
+ "learning_rate": 0.00039053497942386834,
326
+ "loss": 0.8067,
327
+ "step": 265
328
+ },
329
+ {
330
+ "epoch": 0.11,
331
+ "learning_rate": 0.0003901234567901235,
332
+ "loss": 0.7915,
333
+ "step": 270
334
+ },
335
+ {
336
+ "epoch": 0.11,
337
+ "learning_rate": 0.00038971193415637866,
338
+ "loss": 0.7905,
339
+ "step": 275
340
+ },
341
+ {
342
+ "epoch": 0.11,
343
+ "learning_rate": 0.00038930041152263376,
344
+ "loss": 0.7862,
345
+ "step": 280
346
+ },
347
+ {
348
+ "epoch": 0.11,
349
+ "learning_rate": 0.0003888888888888889,
350
+ "loss": 0.7709,
351
+ "step": 285
352
+ },
353
+ {
354
+ "epoch": 0.12,
355
+ "learning_rate": 0.0003884773662551441,
356
+ "loss": 0.7773,
357
+ "step": 290
358
+ },
359
+ {
360
+ "epoch": 0.12,
361
+ "learning_rate": 0.00038806584362139924,
362
+ "loss": 0.8068,
363
+ "step": 295
364
+ },
365
+ {
366
+ "epoch": 0.12,
367
+ "learning_rate": 0.00038765432098765434,
368
+ "loss": 0.7962,
369
+ "step": 300
370
+ },
371
+ {
372
+ "epoch": 0.12,
373
+ "learning_rate": 0.0003872427983539095,
374
+ "loss": 0.7894,
375
+ "step": 305
376
+ },
377
+ {
378
+ "epoch": 0.12,
379
+ "learning_rate": 0.00038683127572016466,
380
+ "loss": 0.7705,
381
+ "step": 310
382
+ },
383
+ {
384
+ "epoch": 0.13,
385
+ "learning_rate": 0.00038641975308641976,
386
+ "loss": 0.7882,
387
+ "step": 315
388
+ },
389
+ {
390
+ "epoch": 0.13,
391
+ "learning_rate": 0.0003860082304526749,
392
+ "loss": 0.7865,
393
+ "step": 320
394
+ },
395
+ {
396
+ "epoch": 0.13,
397
+ "learning_rate": 0.0003855967078189301,
398
+ "loss": 0.7939,
399
+ "step": 325
400
+ },
401
+ {
402
+ "epoch": 0.13,
403
+ "learning_rate": 0.0003851851851851852,
404
+ "loss": 0.7724,
405
+ "step": 330
406
+ },
407
+ {
408
+ "epoch": 0.13,
409
+ "learning_rate": 0.00038477366255144034,
410
+ "loss": 0.7771,
411
+ "step": 335
412
+ },
413
+ {
414
+ "epoch": 0.14,
415
+ "learning_rate": 0.0003843621399176955,
416
+ "loss": 0.7941,
417
+ "step": 340
418
+ },
419
+ {
420
+ "epoch": 0.14,
421
+ "learning_rate": 0.00038395061728395066,
422
+ "loss": 0.7822,
423
+ "step": 345
424
+ },
425
+ {
426
+ "epoch": 0.14,
427
+ "learning_rate": 0.00038353909465020577,
428
+ "loss": 0.8143,
429
+ "step": 350
430
+ },
431
+ {
432
+ "epoch": 0.14,
433
+ "learning_rate": 0.0003831275720164609,
434
+ "loss": 0.795,
435
+ "step": 355
436
+ },
437
+ {
438
+ "epoch": 0.14,
439
+ "learning_rate": 0.0003827160493827161,
440
+ "loss": 0.8049,
441
+ "step": 360
442
+ },
443
+ {
444
+ "epoch": 0.15,
445
+ "learning_rate": 0.0003823045267489712,
446
+ "loss": 0.8309,
447
+ "step": 365
448
+ },
449
+ {
450
+ "epoch": 0.15,
451
+ "learning_rate": 0.00038189300411522635,
452
+ "loss": 0.8314,
453
+ "step": 370
454
+ },
455
+ {
456
+ "epoch": 0.15,
457
+ "learning_rate": 0.0003814814814814815,
458
+ "loss": 0.801,
459
+ "step": 375
460
+ },
461
+ {
462
+ "epoch": 0.15,
463
+ "learning_rate": 0.00038106995884773666,
464
+ "loss": 0.8084,
465
+ "step": 380
466
+ },
467
+ {
468
+ "epoch": 0.15,
469
+ "learning_rate": 0.00038065843621399177,
470
+ "loss": 0.8129,
471
+ "step": 385
472
+ },
473
+ {
474
+ "epoch": 0.16,
475
+ "learning_rate": 0.0003802469135802469,
476
+ "loss": 0.7859,
477
+ "step": 390
478
+ },
479
+ {
480
+ "epoch": 0.16,
481
+ "learning_rate": 0.0003798353909465021,
482
+ "loss": 0.7874,
483
+ "step": 395
484
+ },
485
+ {
486
+ "epoch": 0.16,
487
+ "learning_rate": 0.0003794238683127572,
488
+ "loss": 0.7548,
489
+ "step": 400
490
+ },
491
+ {
492
+ "epoch": 0.16,
493
+ "learning_rate": 0.00037901234567901235,
494
+ "loss": 0.8092,
495
+ "step": 405
496
+ },
497
+ {
498
+ "epoch": 0.16,
499
+ "learning_rate": 0.0003786008230452675,
500
+ "loss": 0.8041,
501
+ "step": 410
502
+ },
503
+ {
504
+ "epoch": 0.17,
505
+ "learning_rate": 0.00037818930041152266,
506
+ "loss": 0.777,
507
+ "step": 415
508
+ },
509
+ {
510
+ "epoch": 0.17,
511
+ "learning_rate": 0.00037777777777777777,
512
+ "loss": 0.7699,
513
+ "step": 420
514
+ },
515
+ {
516
+ "epoch": 0.17,
517
+ "learning_rate": 0.00037736625514403293,
518
+ "loss": 0.781,
519
+ "step": 425
520
+ },
521
+ {
522
+ "epoch": 0.17,
523
+ "learning_rate": 0.0003769547325102881,
524
+ "loss": 0.7504,
525
+ "step": 430
526
+ },
527
+ {
528
+ "epoch": 0.17,
529
+ "learning_rate": 0.0003765432098765432,
530
+ "loss": 0.7974,
531
+ "step": 435
532
+ },
533
+ {
534
+ "epoch": 0.18,
535
+ "learning_rate": 0.00037613168724279835,
536
+ "loss": 0.7663,
537
+ "step": 440
538
+ },
539
+ {
540
+ "epoch": 0.18,
541
+ "learning_rate": 0.0003757201646090535,
542
+ "loss": 0.8013,
543
+ "step": 445
544
+ },
545
+ {
546
+ "epoch": 0.18,
547
+ "learning_rate": 0.00037530864197530867,
548
+ "loss": 0.7453,
549
+ "step": 450
550
+ },
551
+ {
552
+ "epoch": 0.18,
553
+ "learning_rate": 0.00037489711934156377,
554
+ "loss": 0.7425,
555
+ "step": 455
556
+ },
557
+ {
558
+ "epoch": 0.18,
559
+ "learning_rate": 0.00037448559670781893,
560
+ "loss": 0.7582,
561
+ "step": 460
562
+ },
563
+ {
564
+ "epoch": 0.19,
565
+ "learning_rate": 0.0003740740740740741,
566
+ "loss": 0.7801,
567
+ "step": 465
568
+ },
569
+ {
570
+ "epoch": 0.19,
571
+ "learning_rate": 0.00037366255144032925,
572
+ "loss": 0.7809,
573
+ "step": 470
574
+ },
575
+ {
576
+ "epoch": 0.19,
577
+ "learning_rate": 0.0003732510288065844,
578
+ "loss": 0.7749,
579
+ "step": 475
580
+ },
581
+ {
582
+ "epoch": 0.19,
583
+ "learning_rate": 0.00037283950617283956,
584
+ "loss": 0.7807,
585
+ "step": 480
586
+ },
587
+ {
588
+ "epoch": 0.19,
589
+ "learning_rate": 0.00037242798353909467,
590
+ "loss": 0.7715,
591
+ "step": 485
592
+ },
593
+ {
594
+ "epoch": 0.2,
595
+ "learning_rate": 0.0003720164609053498,
596
+ "loss": 0.7356,
597
+ "step": 490
598
+ },
599
+ {
600
+ "epoch": 0.2,
601
+ "learning_rate": 0.000371604938271605,
602
+ "loss": 0.7674,
603
+ "step": 495
604
+ },
605
+ {
606
+ "epoch": 0.2,
607
+ "learning_rate": 0.00037119341563786014,
608
+ "loss": 0.7542,
609
+ "step": 500
610
+ },
611
+ {
612
+ "epoch": 0.2,
613
+ "learning_rate": 0.00037078189300411525,
614
+ "loss": 0.7583,
615
+ "step": 505
616
+ },
617
+ {
618
+ "epoch": 0.2,
619
+ "learning_rate": 0.0003703703703703704,
620
+ "loss": 0.7767,
621
+ "step": 510
622
+ },
623
+ {
624
+ "epoch": 0.21,
625
+ "learning_rate": 0.00036995884773662556,
626
+ "loss": 0.7853,
627
+ "step": 515
628
+ },
629
+ {
630
+ "epoch": 0.21,
631
+ "learning_rate": 0.00036954732510288067,
632
+ "loss": 0.7733,
633
+ "step": 520
634
+ },
635
+ {
636
+ "epoch": 0.21,
637
+ "learning_rate": 0.00036913580246913583,
638
+ "loss": 0.7758,
639
+ "step": 525
640
+ },
641
+ {
642
+ "epoch": 0.21,
643
+ "learning_rate": 0.000368724279835391,
644
+ "loss": 0.7698,
645
+ "step": 530
646
+ },
647
+ {
648
+ "epoch": 0.21,
649
+ "learning_rate": 0.00036831275720164614,
650
+ "loss": 0.7805,
651
+ "step": 535
652
+ },
653
+ {
654
+ "epoch": 0.22,
655
+ "learning_rate": 0.00036790123456790125,
656
+ "loss": 0.7573,
657
+ "step": 540
658
+ },
659
+ {
660
+ "epoch": 0.22,
661
+ "learning_rate": 0.0003674897119341564,
662
+ "loss": 0.7709,
663
+ "step": 545
664
+ },
665
+ {
666
+ "epoch": 0.22,
667
+ "learning_rate": 0.00036707818930041157,
668
+ "loss": 0.7994,
669
+ "step": 550
670
+ },
671
+ {
672
+ "epoch": 0.22,
673
+ "learning_rate": 0.00036666666666666667,
674
+ "loss": 0.7363,
675
+ "step": 555
676
+ },
677
+ {
678
+ "epoch": 0.22,
679
+ "learning_rate": 0.00036625514403292183,
680
+ "loss": 0.7478,
681
+ "step": 560
682
+ },
683
+ {
684
+ "epoch": 0.23,
685
+ "learning_rate": 0.000365843621399177,
686
+ "loss": 0.8188,
687
+ "step": 565
688
+ },
689
+ {
690
+ "epoch": 0.23,
691
+ "learning_rate": 0.0003654320987654321,
692
+ "loss": 0.7524,
693
+ "step": 570
694
+ },
695
+ {
696
+ "epoch": 0.23,
697
+ "learning_rate": 0.00036502057613168725,
698
+ "loss": 0.7319,
699
+ "step": 575
700
+ },
701
+ {
702
+ "epoch": 0.23,
703
+ "learning_rate": 0.0003646090534979424,
704
+ "loss": 0.7915,
705
+ "step": 580
706
+ },
707
+ {
708
+ "epoch": 0.23,
709
+ "learning_rate": 0.00036419753086419757,
710
+ "loss": 0.7722,
711
+ "step": 585
712
+ },
713
+ {
714
+ "epoch": 0.24,
715
+ "learning_rate": 0.00036378600823045267,
716
+ "loss": 0.7842,
717
+ "step": 590
718
+ },
719
+ {
720
+ "epoch": 0.24,
721
+ "learning_rate": 0.00036337448559670783,
722
+ "loss": 0.7591,
723
+ "step": 595
724
+ },
725
+ {
726
+ "epoch": 0.24,
727
+ "learning_rate": 0.000362962962962963,
728
+ "loss": 0.7653,
729
+ "step": 600
730
+ },
731
+ {
732
+ "epoch": 0.24,
733
+ "learning_rate": 0.0003625514403292181,
734
+ "loss": 0.7838,
735
+ "step": 605
736
+ },
737
+ {
738
+ "epoch": 0.24,
739
+ "learning_rate": 0.00036213991769547325,
740
+ "loss": 0.7937,
741
+ "step": 610
742
+ },
743
+ {
744
+ "epoch": 0.25,
745
+ "learning_rate": 0.0003617283950617284,
746
+ "loss": 0.77,
747
+ "step": 615
748
+ },
749
+ {
750
+ "epoch": 0.25,
751
+ "learning_rate": 0.00036131687242798357,
752
+ "loss": 0.7899,
753
+ "step": 620
754
+ },
755
+ {
756
+ "epoch": 0.25,
757
+ "learning_rate": 0.0003609053497942387,
758
+ "loss": 0.7815,
759
+ "step": 625
760
+ },
761
+ {
762
+ "epoch": 0.25,
763
+ "learning_rate": 0.00036049382716049383,
764
+ "loss": 0.7648,
765
+ "step": 630
766
+ },
767
+ {
768
+ "epoch": 0.25,
769
+ "learning_rate": 0.000360082304526749,
770
+ "loss": 0.7716,
771
+ "step": 635
772
+ },
773
+ {
774
+ "epoch": 0.26,
775
+ "learning_rate": 0.0003596707818930041,
776
+ "loss": 0.7708,
777
+ "step": 640
778
+ },
779
+ {
780
+ "epoch": 0.26,
781
+ "learning_rate": 0.00035925925925925925,
782
+ "loss": 0.7306,
783
+ "step": 645
784
+ },
785
+ {
786
+ "epoch": 0.26,
787
+ "learning_rate": 0.0003588477366255144,
788
+ "loss": 0.8007,
789
+ "step": 650
790
+ },
791
+ {
792
+ "epoch": 0.26,
793
+ "learning_rate": 0.0003584362139917695,
794
+ "loss": 0.7551,
795
+ "step": 655
796
+ },
797
+ {
798
+ "epoch": 0.26,
799
+ "learning_rate": 0.0003580246913580247,
800
+ "loss": 0.754,
801
+ "step": 660
802
+ },
803
+ {
804
+ "epoch": 0.27,
805
+ "learning_rate": 0.00035761316872427983,
806
+ "loss": 0.7599,
807
+ "step": 665
808
+ },
809
+ {
810
+ "epoch": 0.27,
811
+ "learning_rate": 0.000357201646090535,
812
+ "loss": 0.7637,
813
+ "step": 670
814
+ },
815
+ {
816
+ "epoch": 0.27,
817
+ "learning_rate": 0.00035679012345679015,
818
+ "loss": 0.7766,
819
+ "step": 675
820
+ },
821
+ {
822
+ "epoch": 0.27,
823
+ "learning_rate": 0.0003563786008230453,
824
+ "loss": 0.7727,
825
+ "step": 680
826
+ },
827
+ {
828
+ "epoch": 0.27,
829
+ "learning_rate": 0.0003559670781893004,
830
+ "loss": 0.7675,
831
+ "step": 685
832
+ },
833
+ {
834
+ "epoch": 0.28,
835
+ "learning_rate": 0.00035555555555555557,
836
+ "loss": 0.7707,
837
+ "step": 690
838
+ },
839
+ {
840
+ "epoch": 0.28,
841
+ "learning_rate": 0.00035514403292181073,
842
+ "loss": 0.7221,
843
+ "step": 695
844
+ },
845
+ {
846
+ "epoch": 0.28,
847
+ "learning_rate": 0.0003547325102880659,
848
+ "loss": 0.7335,
849
+ "step": 700
850
+ },
851
+ {
852
+ "epoch": 0.28,
853
+ "learning_rate": 0.00035432098765432105,
854
+ "loss": 0.781,
855
+ "step": 705
856
+ },
857
+ {
858
+ "epoch": 0.28,
859
+ "learning_rate": 0.00035390946502057615,
860
+ "loss": 0.7845,
861
+ "step": 710
862
+ },
863
+ {
864
+ "epoch": 0.29,
865
+ "learning_rate": 0.0003534979423868313,
866
+ "loss": 0.7467,
867
+ "step": 715
868
+ },
869
+ {
870
+ "epoch": 0.29,
871
+ "learning_rate": 0.00035308641975308647,
872
+ "loss": 0.7735,
873
+ "step": 720
874
+ },
875
+ {
876
+ "epoch": 0.29,
877
+ "learning_rate": 0.0003526748971193416,
878
+ "loss": 0.7368,
879
+ "step": 725
880
+ },
881
+ {
882
+ "epoch": 0.29,
883
+ "learning_rate": 0.00035226337448559673,
884
+ "loss": 0.7678,
885
+ "step": 730
886
+ },
887
+ {
888
+ "epoch": 0.29,
889
+ "learning_rate": 0.0003518518518518519,
890
+ "loss": 0.7756,
891
+ "step": 735
892
+ },
893
+ {
894
+ "epoch": 0.3,
895
+ "learning_rate": 0.00035144032921810705,
896
+ "loss": 0.7635,
897
+ "step": 740
898
+ },
899
+ {
900
+ "epoch": 0.3,
901
+ "learning_rate": 0.00035102880658436215,
902
+ "loss": 0.7757,
903
+ "step": 745
904
+ },
905
+ {
906
+ "epoch": 0.3,
907
+ "learning_rate": 0.0003506172839506173,
908
+ "loss": 0.7442,
909
+ "step": 750
910
+ },
911
+ {
912
+ "epoch": 0.3,
913
+ "learning_rate": 0.00035020576131687247,
914
+ "loss": 0.7584,
915
+ "step": 755
916
+ },
917
+ {
918
+ "epoch": 0.3,
919
+ "learning_rate": 0.0003497942386831276,
920
+ "loss": 0.8333,
921
+ "step": 760
922
+ },
923
+ {
924
+ "epoch": 0.31,
925
+ "learning_rate": 0.00034938271604938273,
926
+ "loss": 0.7459,
927
+ "step": 765
928
+ },
929
+ {
930
+ "epoch": 0.31,
931
+ "learning_rate": 0.0003489711934156379,
932
+ "loss": 0.7499,
933
+ "step": 770
934
+ },
935
+ {
936
+ "epoch": 0.31,
937
+ "learning_rate": 0.000348559670781893,
938
+ "loss": 0.7571,
939
+ "step": 775
940
+ },
941
+ {
942
+ "epoch": 0.31,
943
+ "learning_rate": 0.00034814814814814816,
944
+ "loss": 0.7243,
945
+ "step": 780
946
+ },
947
+ {
948
+ "epoch": 0.31,
949
+ "learning_rate": 0.0003477366255144033,
950
+ "loss": 0.7443,
951
+ "step": 785
952
+ },
953
+ {
954
+ "epoch": 0.32,
955
+ "learning_rate": 0.0003473251028806585,
956
+ "loss": 0.7759,
957
+ "step": 790
958
+ },
959
+ {
960
+ "epoch": 0.32,
961
+ "learning_rate": 0.0003469135802469136,
962
+ "loss": 0.7452,
963
+ "step": 795
964
+ },
965
+ {
966
+ "epoch": 0.32,
967
+ "learning_rate": 0.00034650205761316874,
968
+ "loss": 0.7578,
969
+ "step": 800
970
+ },
971
+ {
972
+ "epoch": 0.32,
973
+ "learning_rate": 0.0003460905349794239,
974
+ "loss": 0.7634,
975
+ "step": 805
976
+ },
977
+ {
978
+ "epoch": 0.32,
979
+ "learning_rate": 0.000345679012345679,
980
+ "loss": 0.7925,
981
+ "step": 810
982
+ },
983
+ {
984
+ "epoch": 0.33,
985
+ "learning_rate": 0.00034526748971193416,
986
+ "loss": 0.7966,
987
+ "step": 815
988
+ },
989
+ {
990
+ "epoch": 0.33,
991
+ "learning_rate": 0.0003448559670781893,
992
+ "loss": 0.7601,
993
+ "step": 820
994
+ },
995
+ {
996
+ "epoch": 0.33,
997
+ "learning_rate": 0.0003444444444444445,
998
+ "loss": 0.7617,
999
+ "step": 825
1000
+ },
1001
+ {
1002
+ "epoch": 0.33,
1003
+ "learning_rate": 0.0003440329218106996,
1004
+ "loss": 0.7526,
1005
+ "step": 830
1006
+ },
1007
+ {
1008
+ "epoch": 0.33,
1009
+ "learning_rate": 0.00034362139917695474,
1010
+ "loss": 0.7297,
1011
+ "step": 835
1012
+ },
1013
+ {
1014
+ "epoch": 0.34,
1015
+ "learning_rate": 0.0003432098765432099,
1016
+ "loss": 0.7549,
1017
+ "step": 840
1018
+ },
1019
+ {
1020
+ "epoch": 0.34,
1021
+ "learning_rate": 0.000342798353909465,
1022
+ "loss": 0.7517,
1023
+ "step": 845
1024
+ },
1025
+ {
1026
+ "epoch": 0.34,
1027
+ "learning_rate": 0.00034238683127572016,
1028
+ "loss": 0.7626,
1029
+ "step": 850
1030
+ },
1031
+ {
1032
+ "epoch": 0.34,
1033
+ "learning_rate": 0.0003419753086419753,
1034
+ "loss": 0.7987,
1035
+ "step": 855
1036
+ },
1037
+ {
1038
+ "epoch": 0.34,
1039
+ "learning_rate": 0.0003415637860082305,
1040
+ "loss": 0.7573,
1041
+ "step": 860
1042
+ },
1043
+ {
1044
+ "epoch": 0.35,
1045
+ "learning_rate": 0.0003411522633744856,
1046
+ "loss": 0.8367,
1047
+ "step": 865
1048
+ },
1049
+ {
1050
+ "epoch": 0.35,
1051
+ "learning_rate": 0.00034074074074074074,
1052
+ "loss": 0.7258,
1053
+ "step": 870
1054
+ },
1055
+ {
1056
+ "epoch": 0.35,
1057
+ "learning_rate": 0.0003403292181069959,
1058
+ "loss": 0.7632,
1059
+ "step": 875
1060
+ },
1061
+ {
1062
+ "epoch": 0.35,
1063
+ "learning_rate": 0.00033991769547325106,
1064
+ "loss": 0.7379,
1065
+ "step": 880
1066
+ },
1067
+ {
1068
+ "epoch": 0.35,
1069
+ "learning_rate": 0.00033950617283950616,
1070
+ "loss": 0.7529,
1071
+ "step": 885
1072
+ },
1073
+ {
1074
+ "epoch": 0.36,
1075
+ "learning_rate": 0.0003390946502057613,
1076
+ "loss": 0.7391,
1077
+ "step": 890
1078
+ },
1079
+ {
1080
+ "epoch": 0.36,
1081
+ "learning_rate": 0.0003386831275720165,
1082
+ "loss": 0.8061,
1083
+ "step": 895
1084
+ },
1085
+ {
1086
+ "epoch": 0.36,
1087
+ "learning_rate": 0.00033827160493827164,
1088
+ "loss": 0.7288,
1089
+ "step": 900
1090
+ },
1091
+ {
1092
+ "epoch": 0.36,
1093
+ "learning_rate": 0.0003378600823045268,
1094
+ "loss": 0.7493,
1095
+ "step": 905
1096
+ },
1097
+ {
1098
+ "epoch": 0.36,
1099
+ "learning_rate": 0.00033744855967078195,
1100
+ "loss": 0.7702,
1101
+ "step": 910
1102
+ },
1103
+ {
1104
+ "epoch": 0.37,
1105
+ "learning_rate": 0.00033703703703703706,
1106
+ "loss": 0.7538,
1107
+ "step": 915
1108
+ },
1109
+ {
1110
+ "epoch": 0.37,
1111
+ "learning_rate": 0.0003366255144032922,
1112
+ "loss": 0.728,
1113
+ "step": 920
1114
+ },
1115
+ {
1116
+ "epoch": 0.37,
1117
+ "learning_rate": 0.0003362139917695474,
1118
+ "loss": 0.7776,
1119
+ "step": 925
1120
+ },
1121
+ {
1122
+ "epoch": 0.37,
1123
+ "learning_rate": 0.0003358024691358025,
1124
+ "loss": 0.7883,
1125
+ "step": 930
1126
+ },
1127
+ {
1128
+ "epoch": 0.37,
1129
+ "learning_rate": 0.00033539094650205764,
1130
+ "loss": 0.7471,
1131
+ "step": 935
1132
+ },
1133
+ {
1134
+ "epoch": 0.38,
1135
+ "learning_rate": 0.0003349794238683128,
1136
+ "loss": 0.7464,
1137
+ "step": 940
1138
+ },
1139
+ {
1140
+ "epoch": 0.38,
1141
+ "learning_rate": 0.00033456790123456795,
1142
+ "loss": 0.7885,
1143
+ "step": 945
1144
+ },
1145
+ {
1146
+ "epoch": 0.38,
1147
+ "learning_rate": 0.00033415637860082306,
1148
+ "loss": 0.7509,
1149
+ "step": 950
1150
+ },
1151
+ {
1152
+ "epoch": 0.38,
1153
+ "learning_rate": 0.0003337448559670782,
1154
+ "loss": 0.7681,
1155
+ "step": 955
1156
+ },
1157
+ {
1158
+ "epoch": 0.38,
1159
+ "learning_rate": 0.0003333333333333334,
1160
+ "loss": 0.8246,
1161
+ "step": 960
1162
+ },
1163
+ {
1164
+ "epoch": 0.39,
1165
+ "learning_rate": 0.0003329218106995885,
1166
+ "loss": 0.7604,
1167
+ "step": 965
1168
+ },
1169
+ {
1170
+ "epoch": 0.39,
1171
+ "learning_rate": 0.00033251028806584364,
1172
+ "loss": 0.7755,
1173
+ "step": 970
1174
+ },
1175
+ {
1176
+ "epoch": 0.39,
1177
+ "learning_rate": 0.0003320987654320988,
1178
+ "loss": 0.7641,
1179
+ "step": 975
1180
+ },
1181
+ {
1182
+ "epoch": 0.39,
1183
+ "learning_rate": 0.0003316872427983539,
1184
+ "loss": 0.7708,
1185
+ "step": 980
1186
+ },
1187
+ {
1188
+ "epoch": 0.39,
1189
+ "learning_rate": 0.00033127572016460906,
1190
+ "loss": 0.7936,
1191
+ "step": 985
1192
+ },
1193
+ {
1194
+ "epoch": 0.4,
1195
+ "learning_rate": 0.0003308641975308642,
1196
+ "loss": 0.7641,
1197
+ "step": 990
1198
+ },
1199
+ {
1200
+ "epoch": 0.4,
1201
+ "learning_rate": 0.0003304526748971194,
1202
+ "loss": 0.7479,
1203
+ "step": 995
1204
+ },
1205
+ {
1206
+ "epoch": 0.4,
1207
+ "learning_rate": 0.0003300411522633745,
1208
+ "loss": 0.7547,
1209
+ "step": 1000
1210
+ },
1211
+ {
1212
+ "epoch": 0.4,
1213
+ "learning_rate": 0.00032962962962962964,
1214
+ "loss": 0.762,
1215
+ "step": 1005
1216
+ },
1217
+ {
1218
+ "epoch": 0.4,
1219
+ "learning_rate": 0.0003292181069958848,
1220
+ "loss": 0.7472,
1221
+ "step": 1010
1222
+ },
1223
+ {
1224
+ "epoch": 0.41,
1225
+ "learning_rate": 0.0003288065843621399,
1226
+ "loss": 0.7542,
1227
+ "step": 1015
1228
+ },
1229
+ {
1230
+ "epoch": 0.41,
1231
+ "learning_rate": 0.00032839506172839506,
1232
+ "loss": 0.7669,
1233
+ "step": 1020
1234
+ },
1235
+ {
1236
+ "epoch": 0.41,
1237
+ "learning_rate": 0.0003279835390946502,
1238
+ "loss": 0.7812,
1239
+ "step": 1025
1240
+ },
1241
+ {
1242
+ "epoch": 0.41,
1243
+ "learning_rate": 0.0003275720164609054,
1244
+ "loss": 0.7273,
1245
+ "step": 1030
1246
+ },
1247
+ {
1248
+ "epoch": 0.41,
1249
+ "learning_rate": 0.0003271604938271605,
1250
+ "loss": 0.7822,
1251
+ "step": 1035
1252
+ },
1253
+ {
1254
+ "epoch": 0.42,
1255
+ "learning_rate": 0.00032674897119341564,
1256
+ "loss": 0.7337,
1257
+ "step": 1040
1258
+ },
1259
+ {
1260
+ "epoch": 0.42,
1261
+ "learning_rate": 0.0003263374485596708,
1262
+ "loss": 0.7566,
1263
+ "step": 1045
1264
+ },
1265
+ {
1266
+ "epoch": 0.42,
1267
+ "learning_rate": 0.0003259259259259259,
1268
+ "loss": 0.7377,
1269
+ "step": 1050
1270
+ },
1271
+ {
1272
+ "epoch": 0.42,
1273
+ "learning_rate": 0.00032551440329218106,
1274
+ "loss": 0.7856,
1275
+ "step": 1055
1276
+ },
1277
+ {
1278
+ "epoch": 0.42,
1279
+ "learning_rate": 0.0003251028806584362,
1280
+ "loss": 0.7981,
1281
+ "step": 1060
1282
+ },
1283
+ {
1284
+ "epoch": 0.43,
1285
+ "learning_rate": 0.0003246913580246914,
1286
+ "loss": 0.7505,
1287
+ "step": 1065
1288
+ },
1289
+ {
1290
+ "epoch": 0.43,
1291
+ "learning_rate": 0.0003242798353909465,
1292
+ "loss": 0.7549,
1293
+ "step": 1070
1294
+ },
1295
+ {
1296
+ "epoch": 0.43,
1297
+ "learning_rate": 0.00032386831275720164,
1298
+ "loss": 0.7306,
1299
+ "step": 1075
1300
+ },
1301
+ {
1302
+ "epoch": 0.43,
1303
+ "learning_rate": 0.0003234567901234568,
1304
+ "loss": 0.7343,
1305
+ "step": 1080
1306
+ },
1307
+ {
1308
+ "epoch": 0.43,
1309
+ "learning_rate": 0.0003230452674897119,
1310
+ "loss": 0.738,
1311
+ "step": 1085
1312
+ },
1313
+ {
1314
+ "epoch": 0.44,
1315
+ "learning_rate": 0.00032263374485596707,
1316
+ "loss": 0.7655,
1317
+ "step": 1090
1318
+ },
1319
+ {
1320
+ "epoch": 0.44,
1321
+ "learning_rate": 0.0003222222222222222,
1322
+ "loss": 0.7706,
1323
+ "step": 1095
1324
+ },
1325
+ {
1326
+ "epoch": 0.44,
1327
+ "learning_rate": 0.0003218106995884774,
1328
+ "loss": 0.7512,
1329
+ "step": 1100
1330
+ },
1331
+ {
1332
+ "epoch": 0.44,
1333
+ "learning_rate": 0.00032139917695473254,
1334
+ "loss": 0.7549,
1335
+ "step": 1105
1336
+ },
1337
+ {
1338
+ "epoch": 0.44,
1339
+ "learning_rate": 0.0003209876543209877,
1340
+ "loss": 0.7839,
1341
+ "step": 1110
1342
+ },
1343
+ {
1344
+ "epoch": 0.45,
1345
+ "learning_rate": 0.0003205761316872428,
1346
+ "loss": 0.7511,
1347
+ "step": 1115
1348
+ },
1349
+ {
1350
+ "epoch": 0.45,
1351
+ "learning_rate": 0.00032016460905349796,
1352
+ "loss": 0.769,
1353
+ "step": 1120
1354
+ },
1355
+ {
1356
+ "epoch": 0.45,
1357
+ "learning_rate": 0.0003197530864197531,
1358
+ "loss": 0.7685,
1359
+ "step": 1125
1360
+ },
1361
+ {
1362
+ "epoch": 0.45,
1363
+ "learning_rate": 0.0003193415637860083,
1364
+ "loss": 0.7489,
1365
+ "step": 1130
1366
+ },
1367
+ {
1368
+ "epoch": 0.45,
1369
+ "learning_rate": 0.0003189300411522634,
1370
+ "loss": 0.808,
1371
+ "step": 1135
1372
+ },
1373
+ {
1374
+ "epoch": 0.46,
1375
+ "learning_rate": 0.00031851851851851854,
1376
+ "loss": 0.7654,
1377
+ "step": 1140
1378
+ },
1379
+ {
1380
+ "epoch": 0.46,
1381
+ "learning_rate": 0.0003181069958847737,
1382
+ "loss": 0.7845,
1383
+ "step": 1145
1384
+ },
1385
+ {
1386
+ "epoch": 0.46,
1387
+ "learning_rate": 0.00031769547325102886,
1388
+ "loss": 0.7886,
1389
+ "step": 1150
1390
+ },
1391
+ {
1392
+ "epoch": 0.46,
1393
+ "learning_rate": 0.00031728395061728396,
1394
+ "loss": 0.7318,
1395
+ "step": 1155
1396
+ },
1397
+ {
1398
+ "epoch": 0.46,
1399
+ "learning_rate": 0.0003168724279835391,
1400
+ "loss": 0.7231,
1401
+ "step": 1160
1402
+ },
1403
+ {
1404
+ "epoch": 0.47,
1405
+ "learning_rate": 0.0003164609053497943,
1406
+ "loss": 0.7471,
1407
+ "step": 1165
1408
+ },
1409
+ {
1410
+ "epoch": 0.47,
1411
+ "learning_rate": 0.0003160493827160494,
1412
+ "loss": 0.7424,
1413
+ "step": 1170
1414
+ },
1415
+ {
1416
+ "epoch": 0.47,
1417
+ "learning_rate": 0.00031563786008230454,
1418
+ "loss": 0.7249,
1419
+ "step": 1175
1420
+ },
1421
+ {
1422
+ "epoch": 0.47,
1423
+ "learning_rate": 0.0003152263374485597,
1424
+ "loss": 0.7419,
1425
+ "step": 1180
1426
+ },
1427
+ {
1428
+ "epoch": 0.47,
1429
+ "learning_rate": 0.00031481481481481486,
1430
+ "loss": 0.7567,
1431
+ "step": 1185
1432
+ },
1433
+ {
1434
+ "epoch": 0.48,
1435
+ "learning_rate": 0.00031440329218106997,
1436
+ "loss": 0.7707,
1437
+ "step": 1190
1438
+ },
1439
+ {
1440
+ "epoch": 0.48,
1441
+ "learning_rate": 0.0003139917695473251,
1442
+ "loss": 0.7473,
1443
+ "step": 1195
1444
+ },
1445
+ {
1446
+ "epoch": 0.48,
1447
+ "learning_rate": 0.0003135802469135803,
1448
+ "loss": 0.7222,
1449
+ "step": 1200
1450
+ },
1451
+ {
1452
+ "epoch": 0.48,
1453
+ "learning_rate": 0.0003131687242798354,
1454
+ "loss": 0.7383,
1455
+ "step": 1205
1456
+ },
1457
+ {
1458
+ "epoch": 0.48,
1459
+ "learning_rate": 0.00031275720164609055,
1460
+ "loss": 0.7712,
1461
+ "step": 1210
1462
+ },
1463
+ {
1464
+ "epoch": 0.48,
1465
+ "learning_rate": 0.0003123456790123457,
1466
+ "loss": 0.7602,
1467
+ "step": 1215
1468
+ },
1469
+ {
1470
+ "epoch": 0.49,
1471
+ "learning_rate": 0.0003119341563786008,
1472
+ "loss": 0.7741,
1473
+ "step": 1220
1474
+ },
1475
+ {
1476
+ "epoch": 0.49,
1477
+ "learning_rate": 0.00031152263374485597,
1478
+ "loss": 0.7428,
1479
+ "step": 1225
1480
+ },
1481
+ {
1482
+ "epoch": 0.49,
1483
+ "learning_rate": 0.0003111111111111111,
1484
+ "loss": 0.7605,
1485
+ "step": 1230
1486
+ },
1487
+ {
1488
+ "epoch": 0.49,
1489
+ "learning_rate": 0.0003106995884773663,
1490
+ "loss": 0.7255,
1491
+ "step": 1235
1492
+ },
1493
+ {
1494
+ "epoch": 0.49,
1495
+ "learning_rate": 0.0003102880658436214,
1496
+ "loss": 0.7468,
1497
+ "step": 1240
1498
+ },
1499
+ {
1500
+ "epoch": 0.5,
1501
+ "learning_rate": 0.00030987654320987655,
1502
+ "loss": 0.7961,
1503
+ "step": 1245
1504
+ },
1505
+ {
1506
+ "epoch": 0.5,
1507
+ "learning_rate": 0.0003094650205761317,
1508
+ "loss": 0.7208,
1509
+ "step": 1250
1510
+ },
1511
+ {
1512
+ "epoch": 0.5,
1513
+ "learning_rate": 0.0003090534979423868,
1514
+ "loss": 0.7331,
1515
+ "step": 1255
1516
+ },
1517
+ {
1518
+ "epoch": 0.5,
1519
+ "learning_rate": 0.00030864197530864197,
1520
+ "loss": 0.7371,
1521
+ "step": 1260
1522
+ },
1523
+ {
1524
+ "epoch": 0.5,
1525
+ "learning_rate": 0.00030823045267489713,
1526
+ "loss": 0.7206,
1527
+ "step": 1265
1528
+ },
1529
+ {
1530
+ "epoch": 0.51,
1531
+ "learning_rate": 0.0003078189300411523,
1532
+ "loss": 0.7617,
1533
+ "step": 1270
1534
+ },
1535
+ {
1536
+ "epoch": 0.51,
1537
+ "learning_rate": 0.0003074074074074074,
1538
+ "loss": 0.7652,
1539
+ "step": 1275
1540
+ },
1541
+ {
1542
+ "epoch": 0.51,
1543
+ "learning_rate": 0.00030699588477366255,
1544
+ "loss": 0.7635,
1545
+ "step": 1280
1546
+ },
1547
+ {
1548
+ "epoch": 0.51,
1549
+ "learning_rate": 0.0003065843621399177,
1550
+ "loss": 0.7445,
1551
+ "step": 1285
1552
+ },
1553
+ {
1554
+ "epoch": 0.51,
1555
+ "learning_rate": 0.0003061728395061728,
1556
+ "loss": 0.7717,
1557
+ "step": 1290
1558
+ },
1559
+ {
1560
+ "epoch": 0.52,
1561
+ "learning_rate": 0.00030576131687242797,
1562
+ "loss": 0.7535,
1563
+ "step": 1295
1564
+ },
1565
+ {
1566
+ "epoch": 0.52,
1567
+ "learning_rate": 0.00030534979423868313,
1568
+ "loss": 0.7677,
1569
+ "step": 1300
1570
+ },
1571
+ {
1572
+ "epoch": 0.52,
1573
+ "learning_rate": 0.0003049382716049383,
1574
+ "loss": 0.8131,
1575
+ "step": 1305
1576
+ },
1577
+ {
1578
+ "epoch": 0.52,
1579
+ "learning_rate": 0.00030452674897119345,
1580
+ "loss": 0.7754,
1581
+ "step": 1310
1582
+ },
1583
+ {
1584
+ "epoch": 0.52,
1585
+ "learning_rate": 0.00030411522633744855,
1586
+ "loss": 0.76,
1587
+ "step": 1315
1588
+ },
1589
+ {
1590
+ "epoch": 0.53,
1591
+ "learning_rate": 0.0003037037037037037,
1592
+ "loss": 0.7558,
1593
+ "step": 1320
1594
+ },
1595
+ {
1596
+ "epoch": 0.53,
1597
+ "learning_rate": 0.00030329218106995887,
1598
+ "loss": 0.7604,
1599
+ "step": 1325
1600
+ },
1601
+ {
1602
+ "epoch": 0.53,
1603
+ "learning_rate": 0.000302880658436214,
1604
+ "loss": 0.7716,
1605
+ "step": 1330
1606
+ },
1607
+ {
1608
+ "epoch": 0.53,
1609
+ "learning_rate": 0.0003024691358024692,
1610
+ "loss": 0.7669,
1611
+ "step": 1335
1612
+ },
1613
+ {
1614
+ "epoch": 0.53,
1615
+ "learning_rate": 0.0003020576131687243,
1616
+ "loss": 0.7469,
1617
+ "step": 1340
1618
+ },
1619
+ {
1620
+ "epoch": 0.54,
1621
+ "learning_rate": 0.00030164609053497945,
1622
+ "loss": 0.7511,
1623
+ "step": 1345
1624
+ },
1625
+ {
1626
+ "epoch": 0.54,
1627
+ "learning_rate": 0.0003012345679012346,
1628
+ "loss": 0.7483,
1629
+ "step": 1350
1630
+ },
1631
+ {
1632
+ "epoch": 0.54,
1633
+ "learning_rate": 0.00030082304526748976,
1634
+ "loss": 0.7509,
1635
+ "step": 1355
1636
+ },
1637
+ {
1638
+ "epoch": 0.54,
1639
+ "learning_rate": 0.00030041152263374487,
1640
+ "loss": 0.7249,
1641
+ "step": 1360
1642
+ },
1643
+ {
1644
+ "epoch": 0.54,
1645
+ "learning_rate": 0.00030000000000000003,
1646
+ "loss": 0.7289,
1647
+ "step": 1365
1648
+ },
1649
+ {
1650
+ "epoch": 0.55,
1651
+ "learning_rate": 0.0002995884773662552,
1652
+ "loss": 0.7605,
1653
+ "step": 1370
1654
+ },
1655
+ {
1656
+ "epoch": 0.55,
1657
+ "learning_rate": 0.0002991769547325103,
1658
+ "loss": 0.7185,
1659
+ "step": 1375
1660
+ },
1661
+ {
1662
+ "epoch": 0.55,
1663
+ "learning_rate": 0.00029876543209876545,
1664
+ "loss": 0.6974,
1665
+ "step": 1380
1666
+ },
1667
+ {
1668
+ "epoch": 0.55,
1669
+ "learning_rate": 0.0002983539094650206,
1670
+ "loss": 0.7234,
1671
+ "step": 1385
1672
+ },
1673
+ {
1674
+ "epoch": 0.55,
1675
+ "learning_rate": 0.00029794238683127577,
1676
+ "loss": 0.7506,
1677
+ "step": 1390
1678
+ },
1679
+ {
1680
+ "epoch": 0.56,
1681
+ "learning_rate": 0.00029753086419753087,
1682
+ "loss": 0.7524,
1683
+ "step": 1395
1684
+ },
1685
+ {
1686
+ "epoch": 0.56,
1687
+ "learning_rate": 0.00029711934156378603,
1688
+ "loss": 0.7641,
1689
+ "step": 1400
1690
+ },
1691
+ {
1692
+ "epoch": 0.56,
1693
+ "learning_rate": 0.0002967078189300412,
1694
+ "loss": 0.6967,
1695
+ "step": 1405
1696
+ },
1697
+ {
1698
+ "epoch": 0.56,
1699
+ "learning_rate": 0.0002962962962962963,
1700
+ "loss": 0.735,
1701
+ "step": 1410
1702
+ },
1703
+ {
1704
+ "epoch": 0.56,
1705
+ "learning_rate": 0.00029588477366255145,
1706
+ "loss": 0.7685,
1707
+ "step": 1415
1708
+ },
1709
+ {
1710
+ "epoch": 0.57,
1711
+ "learning_rate": 0.0002954732510288066,
1712
+ "loss": 0.758,
1713
+ "step": 1420
1714
+ },
1715
+ {
1716
+ "epoch": 0.57,
1717
+ "learning_rate": 0.0002950617283950617,
1718
+ "loss": 0.763,
1719
+ "step": 1425
1720
+ },
1721
+ {
1722
+ "epoch": 0.57,
1723
+ "learning_rate": 0.00029465020576131687,
1724
+ "loss": 0.712,
1725
+ "step": 1430
1726
+ },
1727
+ {
1728
+ "epoch": 0.57,
1729
+ "learning_rate": 0.00029423868312757203,
1730
+ "loss": 0.7236,
1731
+ "step": 1435
1732
+ },
1733
+ {
1734
+ "epoch": 0.57,
1735
+ "learning_rate": 0.0002938271604938272,
1736
+ "loss": 0.7732,
1737
+ "step": 1440
1738
+ },
1739
+ {
1740
+ "epoch": 0.58,
1741
+ "learning_rate": 0.0002934156378600823,
1742
+ "loss": 0.7689,
1743
+ "step": 1445
1744
+ },
1745
+ {
1746
+ "epoch": 0.58,
1747
+ "learning_rate": 0.00029300411522633745,
1748
+ "loss": 0.7352,
1749
+ "step": 1450
1750
+ },
1751
+ {
1752
+ "epoch": 0.58,
1753
+ "learning_rate": 0.0002925925925925926,
1754
+ "loss": 0.7711,
1755
+ "step": 1455
1756
+ },
1757
+ {
1758
+ "epoch": 0.58,
1759
+ "learning_rate": 0.0002921810699588477,
1760
+ "loss": 0.7549,
1761
+ "step": 1460
1762
+ },
1763
+ {
1764
+ "epoch": 0.58,
1765
+ "learning_rate": 0.0002917695473251029,
1766
+ "loss": 0.7804,
1767
+ "step": 1465
1768
+ },
1769
+ {
1770
+ "epoch": 0.59,
1771
+ "learning_rate": 0.00029135802469135803,
1772
+ "loss": 0.7478,
1773
+ "step": 1470
1774
+ },
1775
+ {
1776
+ "epoch": 0.59,
1777
+ "learning_rate": 0.0002909465020576132,
1778
+ "loss": 0.7801,
1779
+ "step": 1475
1780
+ },
1781
+ {
1782
+ "epoch": 0.59,
1783
+ "learning_rate": 0.0002905349794238683,
1784
+ "loss": 0.7544,
1785
+ "step": 1480
1786
+ },
1787
+ {
1788
+ "epoch": 0.59,
1789
+ "learning_rate": 0.00029012345679012345,
1790
+ "loss": 0.7546,
1791
+ "step": 1485
1792
+ },
1793
+ {
1794
+ "epoch": 0.59,
1795
+ "learning_rate": 0.0002897119341563786,
1796
+ "loss": 0.7648,
1797
+ "step": 1490
1798
+ },
1799
+ {
1800
+ "epoch": 0.6,
1801
+ "learning_rate": 0.0002893004115226337,
1802
+ "loss": 0.7468,
1803
+ "step": 1495
1804
+ },
1805
+ {
1806
+ "epoch": 0.6,
1807
+ "learning_rate": 0.0002888888888888889,
1808
+ "loss": 0.7434,
1809
+ "step": 1500
1810
+ },
1811
+ {
1812
+ "epoch": 0.6,
1813
+ "learning_rate": 0.00028847736625514403,
1814
+ "loss": 0.7348,
1815
+ "step": 1505
1816
+ },
1817
+ {
1818
+ "epoch": 0.6,
1819
+ "learning_rate": 0.0002880658436213992,
1820
+ "loss": 0.7515,
1821
+ "step": 1510
1822
+ },
1823
+ {
1824
+ "epoch": 0.6,
1825
+ "learning_rate": 0.00028765432098765435,
1826
+ "loss": 0.7345,
1827
+ "step": 1515
1828
+ },
1829
+ {
1830
+ "epoch": 0.61,
1831
+ "learning_rate": 0.00028724279835390946,
1832
+ "loss": 0.7701,
1833
+ "step": 1520
1834
+ },
1835
+ {
1836
+ "epoch": 0.61,
1837
+ "learning_rate": 0.0002868312757201646,
1838
+ "loss": 0.7472,
1839
+ "step": 1525
1840
+ },
1841
+ {
1842
+ "epoch": 0.61,
1843
+ "learning_rate": 0.00028641975308641977,
1844
+ "loss": 0.7075,
1845
+ "step": 1530
1846
+ },
1847
+ {
1848
+ "epoch": 0.61,
1849
+ "learning_rate": 0.00028600823045267493,
1850
+ "loss": 0.7483,
1851
+ "step": 1535
1852
+ },
1853
+ {
1854
+ "epoch": 0.61,
1855
+ "learning_rate": 0.0002855967078189301,
1856
+ "loss": 0.712,
1857
+ "step": 1540
1858
+ },
1859
+ {
1860
+ "epoch": 0.62,
1861
+ "learning_rate": 0.0002851851851851852,
1862
+ "loss": 0.7484,
1863
+ "step": 1545
1864
+ },
1865
+ {
1866
+ "epoch": 0.62,
1867
+ "learning_rate": 0.00028477366255144035,
1868
+ "loss": 0.7471,
1869
+ "step": 1550
1870
+ },
1871
+ {
1872
+ "epoch": 0.62,
1873
+ "learning_rate": 0.0002843621399176955,
1874
+ "loss": 0.7462,
1875
+ "step": 1555
1876
+ },
1877
+ {
1878
+ "epoch": 0.62,
1879
+ "learning_rate": 0.00028395061728395067,
1880
+ "loss": 0.7371,
1881
+ "step": 1560
1882
+ },
1883
+ {
1884
+ "epoch": 0.62,
1885
+ "learning_rate": 0.0002835390946502058,
1886
+ "loss": 0.7753,
1887
+ "step": 1565
1888
+ },
1889
+ {
1890
+ "epoch": 0.63,
1891
+ "learning_rate": 0.00028312757201646093,
1892
+ "loss": 0.7374,
1893
+ "step": 1570
1894
+ },
1895
+ {
1896
+ "epoch": 0.63,
1897
+ "learning_rate": 0.0002827160493827161,
1898
+ "loss": 0.7328,
1899
+ "step": 1575
1900
+ },
1901
+ {
1902
+ "epoch": 0.63,
1903
+ "learning_rate": 0.0002823045267489712,
1904
+ "loss": 0.7159,
1905
+ "step": 1580
1906
+ },
1907
+ {
1908
+ "epoch": 0.63,
1909
+ "learning_rate": 0.00028189300411522635,
1910
+ "loss": 0.7594,
1911
+ "step": 1585
1912
+ },
1913
+ {
1914
+ "epoch": 0.63,
1915
+ "learning_rate": 0.0002814814814814815,
1916
+ "loss": 0.7215,
1917
+ "step": 1590
1918
+ },
1919
+ {
1920
+ "epoch": 0.64,
1921
+ "learning_rate": 0.00028106995884773667,
1922
+ "loss": 0.7398,
1923
+ "step": 1595
1924
+ },
1925
+ {
1926
+ "epoch": 0.64,
1927
+ "learning_rate": 0.0002806584362139918,
1928
+ "loss": 0.773,
1929
+ "step": 1600
1930
+ },
1931
+ {
1932
+ "epoch": 0.64,
1933
+ "learning_rate": 0.00028024691358024693,
1934
+ "loss": 0.7584,
1935
+ "step": 1605
1936
+ },
1937
+ {
1938
+ "epoch": 0.64,
1939
+ "learning_rate": 0.0002798353909465021,
1940
+ "loss": 0.7117,
1941
+ "step": 1610
1942
+ },
1943
+ {
1944
+ "epoch": 0.64,
1945
+ "learning_rate": 0.0002794238683127572,
1946
+ "loss": 0.7471,
1947
+ "step": 1615
1948
+ },
1949
+ {
1950
+ "epoch": 0.65,
1951
+ "learning_rate": 0.00027901234567901236,
1952
+ "loss": 0.7443,
1953
+ "step": 1620
1954
+ },
1955
+ {
1956
+ "epoch": 0.65,
1957
+ "learning_rate": 0.0002786008230452675,
1958
+ "loss": 0.7292,
1959
+ "step": 1625
1960
+ },
1961
+ {
1962
+ "epoch": 0.65,
1963
+ "learning_rate": 0.0002781893004115227,
1964
+ "loss": 0.7716,
1965
+ "step": 1630
1966
+ },
1967
+ {
1968
+ "epoch": 0.65,
1969
+ "learning_rate": 0.0002777777777777778,
1970
+ "loss": 0.763,
1971
+ "step": 1635
1972
+ },
1973
+ {
1974
+ "epoch": 0.65,
1975
+ "learning_rate": 0.00027736625514403294,
1976
+ "loss": 0.7408,
1977
+ "step": 1640
1978
+ },
1979
+ {
1980
+ "epoch": 0.66,
1981
+ "learning_rate": 0.0002769547325102881,
1982
+ "loss": 0.7403,
1983
+ "step": 1645
1984
+ },
1985
+ {
1986
+ "epoch": 0.66,
1987
+ "learning_rate": 0.0002765432098765432,
1988
+ "loss": 0.7508,
1989
+ "step": 1650
1990
+ },
1991
+ {
1992
+ "epoch": 0.66,
1993
+ "learning_rate": 0.00027613168724279836,
1994
+ "loss": 0.7687,
1995
+ "step": 1655
1996
+ },
1997
+ {
1998
+ "epoch": 0.66,
1999
+ "learning_rate": 0.0002757201646090535,
2000
+ "loss": 0.7305,
2001
+ "step": 1660
2002
+ },
2003
+ {
2004
+ "epoch": 0.66,
2005
+ "learning_rate": 0.0002753086419753086,
2006
+ "loss": 0.7165,
2007
+ "step": 1665
2008
+ },
2009
+ {
2010
+ "epoch": 0.67,
2011
+ "learning_rate": 0.0002748971193415638,
2012
+ "loss": 0.8,
2013
+ "step": 1670
2014
+ },
2015
+ {
2016
+ "epoch": 0.67,
2017
+ "learning_rate": 0.00027448559670781894,
2018
+ "loss": 0.7357,
2019
+ "step": 1675
2020
+ },
2021
+ {
2022
+ "epoch": 0.67,
2023
+ "learning_rate": 0.0002740740740740741,
2024
+ "loss": 0.7988,
2025
+ "step": 1680
2026
+ },
2027
+ {
2028
+ "epoch": 0.67,
2029
+ "learning_rate": 0.0002736625514403292,
2030
+ "loss": 0.7559,
2031
+ "step": 1685
2032
+ },
2033
+ {
2034
+ "epoch": 0.67,
2035
+ "learning_rate": 0.00027325102880658436,
2036
+ "loss": 0.712,
2037
+ "step": 1690
2038
+ },
2039
+ {
2040
+ "epoch": 0.68,
2041
+ "learning_rate": 0.0002728395061728395,
2042
+ "loss": 0.7486,
2043
+ "step": 1695
2044
+ },
2045
+ {
2046
+ "epoch": 0.68,
2047
+ "learning_rate": 0.0002724279835390946,
2048
+ "loss": 0.7388,
2049
+ "step": 1700
2050
+ },
2051
+ {
2052
+ "epoch": 0.68,
2053
+ "learning_rate": 0.0002720164609053498,
2054
+ "loss": 0.7441,
2055
+ "step": 1705
2056
+ },
2057
+ {
2058
+ "epoch": 0.68,
2059
+ "learning_rate": 0.00027160493827160494,
2060
+ "loss": 0.7547,
2061
+ "step": 1710
2062
+ },
2063
+ {
2064
+ "epoch": 0.68,
2065
+ "learning_rate": 0.0002711934156378601,
2066
+ "loss": 0.7229,
2067
+ "step": 1715
2068
+ },
2069
+ {
2070
+ "epoch": 0.69,
2071
+ "learning_rate": 0.0002707818930041152,
2072
+ "loss": 0.7383,
2073
+ "step": 1720
2074
+ },
2075
+ {
2076
+ "epoch": 0.69,
2077
+ "learning_rate": 0.00027037037037037036,
2078
+ "loss": 0.7606,
2079
+ "step": 1725
2080
+ },
2081
+ {
2082
+ "epoch": 0.69,
2083
+ "learning_rate": 0.0002699588477366255,
2084
+ "loss": 0.7529,
2085
+ "step": 1730
2086
+ },
2087
+ {
2088
+ "epoch": 0.69,
2089
+ "learning_rate": 0.0002695473251028807,
2090
+ "loss": 0.752,
2091
+ "step": 1735
2092
+ },
2093
+ {
2094
+ "epoch": 0.69,
2095
+ "learning_rate": 0.00026913580246913584,
2096
+ "loss": 0.7342,
2097
+ "step": 1740
2098
+ },
2099
+ {
2100
+ "epoch": 0.7,
2101
+ "learning_rate": 0.000268724279835391,
2102
+ "loss": 0.7308,
2103
+ "step": 1745
2104
+ },
2105
+ {
2106
+ "epoch": 0.7,
2107
+ "learning_rate": 0.0002683127572016461,
2108
+ "loss": 0.6915,
2109
+ "step": 1750
2110
+ },
2111
+ {
2112
+ "epoch": 0.7,
2113
+ "learning_rate": 0.00026790123456790126,
2114
+ "loss": 0.7344,
2115
+ "step": 1755
2116
+ },
2117
+ {
2118
+ "epoch": 0.7,
2119
+ "learning_rate": 0.0002674897119341564,
2120
+ "loss": 0.7426,
2121
+ "step": 1760
2122
+ },
2123
+ {
2124
+ "epoch": 0.7,
2125
+ "learning_rate": 0.0002670781893004116,
2126
+ "loss": 0.7088,
2127
+ "step": 1765
2128
+ },
2129
+ {
2130
+ "epoch": 0.71,
2131
+ "learning_rate": 0.0002666666666666667,
2132
+ "loss": 0.7241,
2133
+ "step": 1770
2134
+ },
2135
+ {
2136
+ "epoch": 0.71,
2137
+ "learning_rate": 0.00026625514403292184,
2138
+ "loss": 0.7552,
2139
+ "step": 1775
2140
+ },
2141
+ {
2142
+ "epoch": 0.71,
2143
+ "learning_rate": 0.000265843621399177,
2144
+ "loss": 0.7477,
2145
+ "step": 1780
2146
+ },
2147
+ {
2148
+ "epoch": 0.71,
2149
+ "learning_rate": 0.0002654320987654321,
2150
+ "loss": 0.7115,
2151
+ "step": 1785
2152
+ },
2153
+ {
2154
+ "epoch": 0.71,
2155
+ "learning_rate": 0.00026502057613168726,
2156
+ "loss": 0.7538,
2157
+ "step": 1790
2158
+ },
2159
+ {
2160
+ "epoch": 0.72,
2161
+ "learning_rate": 0.0002646090534979424,
2162
+ "loss": 0.7321,
2163
+ "step": 1795
2164
+ },
2165
+ {
2166
+ "epoch": 0.72,
2167
+ "learning_rate": 0.0002641975308641976,
2168
+ "loss": 0.7212,
2169
+ "step": 1800
2170
+ },
2171
+ {
2172
+ "epoch": 0.72,
2173
+ "learning_rate": 0.0002637860082304527,
2174
+ "loss": 0.747,
2175
+ "step": 1805
2176
+ },
2177
+ {
2178
+ "epoch": 0.72,
2179
+ "learning_rate": 0.00026337448559670784,
2180
+ "loss": 0.7606,
2181
+ "step": 1810
2182
+ },
2183
+ {
2184
+ "epoch": 0.72,
2185
+ "learning_rate": 0.000262962962962963,
2186
+ "loss": 0.7344,
2187
+ "step": 1815
2188
+ },
2189
+ {
2190
+ "epoch": 0.73,
2191
+ "learning_rate": 0.0002625514403292181,
2192
+ "loss": 0.7783,
2193
+ "step": 1820
2194
+ },
2195
+ {
2196
+ "epoch": 0.73,
2197
+ "learning_rate": 0.00026213991769547326,
2198
+ "loss": 0.7556,
2199
+ "step": 1825
2200
+ },
2201
+ {
2202
+ "epoch": 0.73,
2203
+ "learning_rate": 0.0002617283950617284,
2204
+ "loss": 0.7585,
2205
+ "step": 1830
2206
+ },
2207
+ {
2208
+ "epoch": 0.73,
2209
+ "learning_rate": 0.0002613168724279836,
2210
+ "loss": 0.7359,
2211
+ "step": 1835
2212
+ },
2213
+ {
2214
+ "epoch": 0.73,
2215
+ "learning_rate": 0.0002609053497942387,
2216
+ "loss": 0.7185,
2217
+ "step": 1840
2218
+ },
2219
+ {
2220
+ "epoch": 0.74,
2221
+ "learning_rate": 0.00026049382716049384,
2222
+ "loss": 0.7573,
2223
+ "step": 1845
2224
+ },
2225
+ {
2226
+ "epoch": 0.74,
2227
+ "learning_rate": 0.000260082304526749,
2228
+ "loss": 0.7619,
2229
+ "step": 1850
2230
+ },
2231
+ {
2232
+ "epoch": 0.74,
2233
+ "learning_rate": 0.0002596707818930041,
2234
+ "loss": 0.7611,
2235
+ "step": 1855
2236
+ },
2237
+ {
2238
+ "epoch": 0.74,
2239
+ "learning_rate": 0.00025925925925925926,
2240
+ "loss": 0.7647,
2241
+ "step": 1860
2242
+ },
2243
+ {
2244
+ "epoch": 0.74,
2245
+ "learning_rate": 0.0002588477366255144,
2246
+ "loss": 0.7398,
2247
+ "step": 1865
2248
+ },
2249
+ {
2250
+ "epoch": 0.75,
2251
+ "learning_rate": 0.0002584362139917695,
2252
+ "loss": 0.7683,
2253
+ "step": 1870
2254
+ },
2255
+ {
2256
+ "epoch": 0.75,
2257
+ "learning_rate": 0.0002580246913580247,
2258
+ "loss": 0.7817,
2259
+ "step": 1875
2260
+ },
2261
+ {
2262
+ "epoch": 0.75,
2263
+ "learning_rate": 0.00025761316872427984,
2264
+ "loss": 0.742,
2265
+ "step": 1880
2266
+ },
2267
+ {
2268
+ "epoch": 0.75,
2269
+ "learning_rate": 0.000257201646090535,
2270
+ "loss": 0.7509,
2271
+ "step": 1885
2272
+ },
2273
+ {
2274
+ "epoch": 0.75,
2275
+ "learning_rate": 0.0002567901234567901,
2276
+ "loss": 0.7058,
2277
+ "step": 1890
2278
+ },
2279
+ {
2280
+ "epoch": 0.76,
2281
+ "learning_rate": 0.00025637860082304526,
2282
+ "loss": 0.7635,
2283
+ "step": 1895
2284
+ },
2285
+ {
2286
+ "epoch": 0.76,
2287
+ "learning_rate": 0.0002559670781893004,
2288
+ "loss": 0.734,
2289
+ "step": 1900
2290
+ },
2291
+ {
2292
+ "epoch": 0.76,
2293
+ "learning_rate": 0.00025555555555555553,
2294
+ "loss": 0.7416,
2295
+ "step": 1905
2296
+ },
2297
+ {
2298
+ "epoch": 0.76,
2299
+ "learning_rate": 0.0002551440329218107,
2300
+ "loss": 0.7071,
2301
+ "step": 1910
2302
+ },
2303
+ {
2304
+ "epoch": 0.76,
2305
+ "learning_rate": 0.00025473251028806584,
2306
+ "loss": 0.7275,
2307
+ "step": 1915
2308
+ },
2309
+ {
2310
+ "epoch": 0.77,
2311
+ "learning_rate": 0.000254320987654321,
2312
+ "loss": 0.7413,
2313
+ "step": 1920
2314
+ },
2315
+ {
2316
+ "epoch": 0.77,
2317
+ "learning_rate": 0.0002539094650205761,
2318
+ "loss": 0.7703,
2319
+ "step": 1925
2320
+ },
2321
+ {
2322
+ "epoch": 0.77,
2323
+ "learning_rate": 0.00025349794238683127,
2324
+ "loss": 0.7331,
2325
+ "step": 1930
2326
+ },
2327
+ {
2328
+ "epoch": 0.77,
2329
+ "learning_rate": 0.0002530864197530864,
2330
+ "loss": 0.7251,
2331
+ "step": 1935
2332
+ },
2333
+ {
2334
+ "epoch": 0.77,
2335
+ "learning_rate": 0.0002526748971193416,
2336
+ "loss": 0.7341,
2337
+ "step": 1940
2338
+ },
2339
+ {
2340
+ "epoch": 0.78,
2341
+ "learning_rate": 0.00025226337448559674,
2342
+ "loss": 0.7079,
2343
+ "step": 1945
2344
+ },
2345
+ {
2346
+ "epoch": 0.78,
2347
+ "learning_rate": 0.00025185185185185185,
2348
+ "loss": 0.7615,
2349
+ "step": 1950
2350
+ },
2351
+ {
2352
+ "epoch": 0.78,
2353
+ "learning_rate": 0.000251440329218107,
2354
+ "loss": 0.7144,
2355
+ "step": 1955
2356
+ },
2357
+ {
2358
+ "epoch": 0.78,
2359
+ "learning_rate": 0.00025102880658436216,
2360
+ "loss": 0.7527,
2361
+ "step": 1960
2362
+ },
2363
+ {
2364
+ "epoch": 0.78,
2365
+ "learning_rate": 0.0002506172839506173,
2366
+ "loss": 0.7327,
2367
+ "step": 1965
2368
+ },
2369
+ {
2370
+ "epoch": 0.79,
2371
+ "learning_rate": 0.0002502057613168725,
2372
+ "loss": 0.7173,
2373
+ "step": 1970
2374
+ },
2375
+ {
2376
+ "epoch": 0.79,
2377
+ "learning_rate": 0.0002497942386831276,
2378
+ "loss": 0.7239,
2379
+ "step": 1975
2380
+ },
2381
+ {
2382
+ "epoch": 0.79,
2383
+ "learning_rate": 0.00024938271604938274,
2384
+ "loss": 0.7442,
2385
+ "step": 1980
2386
+ },
2387
+ {
2388
+ "epoch": 0.79,
2389
+ "learning_rate": 0.0002489711934156379,
2390
+ "loss": 0.7396,
2391
+ "step": 1985
2392
+ },
2393
+ {
2394
+ "epoch": 0.79,
2395
+ "learning_rate": 0.000248559670781893,
2396
+ "loss": 0.7365,
2397
+ "step": 1990
2398
+ },
2399
+ {
2400
+ "epoch": 0.8,
2401
+ "learning_rate": 0.00024814814814814816,
2402
+ "loss": 0.7037,
2403
+ "step": 1995
2404
+ },
2405
+ {
2406
+ "epoch": 0.8,
2407
+ "learning_rate": 0.0002477366255144033,
2408
+ "loss": 0.721,
2409
+ "step": 2000
2410
+ },
2411
+ {
2412
+ "epoch": 0.8,
2413
+ "learning_rate": 0.0002473251028806585,
2414
+ "loss": 0.7353,
2415
+ "step": 2005
2416
+ },
2417
+ {
2418
+ "epoch": 0.8,
2419
+ "learning_rate": 0.0002469135802469136,
2420
+ "loss": 0.7648,
2421
+ "step": 2010
2422
+ },
2423
+ {
2424
+ "epoch": 0.8,
2425
+ "learning_rate": 0.00024650205761316874,
2426
+ "loss": 0.7445,
2427
+ "step": 2015
2428
+ },
2429
+ {
2430
+ "epoch": 0.81,
2431
+ "learning_rate": 0.0002460905349794239,
2432
+ "loss": 0.7664,
2433
+ "step": 2020
2434
+ },
2435
+ {
2436
+ "epoch": 0.81,
2437
+ "learning_rate": 0.000245679012345679,
2438
+ "loss": 0.7202,
2439
+ "step": 2025
2440
+ },
2441
+ {
2442
+ "epoch": 0.81,
2443
+ "learning_rate": 0.00024526748971193417,
2444
+ "loss": 0.7147,
2445
+ "step": 2030
2446
+ },
2447
+ {
2448
+ "epoch": 0.81,
2449
+ "learning_rate": 0.0002448559670781893,
2450
+ "loss": 0.722,
2451
+ "step": 2035
2452
+ },
2453
+ {
2454
+ "epoch": 0.81,
2455
+ "learning_rate": 0.0002444444444444445,
2456
+ "loss": 0.7539,
2457
+ "step": 2040
2458
+ },
2459
+ {
2460
+ "epoch": 0.82,
2461
+ "learning_rate": 0.0002440329218106996,
2462
+ "loss": 0.7681,
2463
+ "step": 2045
2464
+ },
2465
+ {
2466
+ "epoch": 0.82,
2467
+ "learning_rate": 0.00024362139917695475,
2468
+ "loss": 0.7304,
2469
+ "step": 2050
2470
+ },
2471
+ {
2472
+ "epoch": 0.82,
2473
+ "learning_rate": 0.0002432098765432099,
2474
+ "loss": 0.7432,
2475
+ "step": 2055
2476
+ },
2477
+ {
2478
+ "epoch": 0.82,
2479
+ "learning_rate": 0.000242798353909465,
2480
+ "loss": 0.6945,
2481
+ "step": 2060
2482
+ },
2483
+ {
2484
+ "epoch": 0.82,
2485
+ "learning_rate": 0.00024238683127572017,
2486
+ "loss": 0.7426,
2487
+ "step": 2065
2488
+ },
2489
+ {
2490
+ "epoch": 0.83,
2491
+ "learning_rate": 0.00024197530864197533,
2492
+ "loss": 0.7144,
2493
+ "step": 2070
2494
+ },
2495
+ {
2496
+ "epoch": 0.83,
2497
+ "learning_rate": 0.00024156378600823048,
2498
+ "loss": 0.7761,
2499
+ "step": 2075
2500
+ },
2501
+ {
2502
+ "epoch": 0.83,
2503
+ "learning_rate": 0.0002411522633744856,
2504
+ "loss": 0.7402,
2505
+ "step": 2080
2506
+ },
2507
+ {
2508
+ "epoch": 0.83,
2509
+ "learning_rate": 0.00024074074074074075,
2510
+ "loss": 0.7376,
2511
+ "step": 2085
2512
+ },
2513
+ {
2514
+ "epoch": 0.83,
2515
+ "learning_rate": 0.0002403292181069959,
2516
+ "loss": 0.7231,
2517
+ "step": 2090
2518
+ },
2519
+ {
2520
+ "epoch": 0.84,
2521
+ "learning_rate": 0.00023991769547325104,
2522
+ "loss": 0.7461,
2523
+ "step": 2095
2524
+ },
2525
+ {
2526
+ "epoch": 0.84,
2527
+ "learning_rate": 0.00023950617283950617,
2528
+ "loss": 0.7215,
2529
+ "step": 2100
2530
+ },
2531
+ {
2532
+ "epoch": 0.84,
2533
+ "learning_rate": 0.00023909465020576133,
2534
+ "loss": 0.7419,
2535
+ "step": 2105
2536
+ },
2537
+ {
2538
+ "epoch": 0.84,
2539
+ "learning_rate": 0.00023868312757201646,
2540
+ "loss": 0.7502,
2541
+ "step": 2110
2542
+ },
2543
+ {
2544
+ "epoch": 0.84,
2545
+ "learning_rate": 0.00023827160493827162,
2546
+ "loss": 0.7294,
2547
+ "step": 2115
2548
+ },
2549
+ {
2550
+ "epoch": 0.85,
2551
+ "learning_rate": 0.00023786008230452678,
2552
+ "loss": 0.7904,
2553
+ "step": 2120
2554
+ },
2555
+ {
2556
+ "epoch": 0.85,
2557
+ "learning_rate": 0.00023744855967078194,
2558
+ "loss": 0.7418,
2559
+ "step": 2125
2560
+ },
2561
+ {
2562
+ "epoch": 0.85,
2563
+ "learning_rate": 0.00023703703703703704,
2564
+ "loss": 0.7371,
2565
+ "step": 2130
2566
+ },
2567
+ {
2568
+ "epoch": 0.85,
2569
+ "learning_rate": 0.0002366255144032922,
2570
+ "loss": 0.7384,
2571
+ "step": 2135
2572
+ },
2573
+ {
2574
+ "epoch": 0.85,
2575
+ "learning_rate": 0.00023621399176954736,
2576
+ "loss": 0.7552,
2577
+ "step": 2140
2578
+ },
2579
+ {
2580
+ "epoch": 0.86,
2581
+ "learning_rate": 0.00023580246913580246,
2582
+ "loss": 0.7516,
2583
+ "step": 2145
2584
+ },
2585
+ {
2586
+ "epoch": 0.86,
2587
+ "learning_rate": 0.00023539094650205762,
2588
+ "loss": 0.7303,
2589
+ "step": 2150
2590
+ },
2591
+ {
2592
+ "epoch": 0.86,
2593
+ "learning_rate": 0.00023497942386831278,
2594
+ "loss": 0.7496,
2595
+ "step": 2155
2596
+ },
2597
+ {
2598
+ "epoch": 0.86,
2599
+ "learning_rate": 0.00023456790123456794,
2600
+ "loss": 0.7135,
2601
+ "step": 2160
2602
+ },
2603
+ {
2604
+ "epoch": 0.86,
2605
+ "learning_rate": 0.00023415637860082304,
2606
+ "loss": 0.7283,
2607
+ "step": 2165
2608
+ },
2609
+ {
2610
+ "epoch": 0.87,
2611
+ "learning_rate": 0.0002337448559670782,
2612
+ "loss": 0.751,
2613
+ "step": 2170
2614
+ },
2615
+ {
2616
+ "epoch": 0.87,
2617
+ "learning_rate": 0.00023333333333333336,
2618
+ "loss": 0.7183,
2619
+ "step": 2175
2620
+ },
2621
+ {
2622
+ "epoch": 0.87,
2623
+ "learning_rate": 0.00023292181069958846,
2624
+ "loss": 0.7242,
2625
+ "step": 2180
2626
+ },
2627
+ {
2628
+ "epoch": 0.87,
2629
+ "learning_rate": 0.00023251028806584362,
2630
+ "loss": 0.725,
2631
+ "step": 2185
2632
+ },
2633
+ {
2634
+ "epoch": 0.87,
2635
+ "learning_rate": 0.00023209876543209878,
2636
+ "loss": 0.753,
2637
+ "step": 2190
2638
+ },
2639
+ {
2640
+ "epoch": 0.88,
2641
+ "learning_rate": 0.0002316872427983539,
2642
+ "loss": 0.7664,
2643
+ "step": 2195
2644
+ },
2645
+ {
2646
+ "epoch": 0.88,
2647
+ "learning_rate": 0.00023127572016460904,
2648
+ "loss": 0.7444,
2649
+ "step": 2200
2650
+ },
2651
+ {
2652
+ "epoch": 0.88,
2653
+ "learning_rate": 0.0002308641975308642,
2654
+ "loss": 0.7226,
2655
+ "step": 2205
2656
+ },
2657
+ {
2658
+ "epoch": 0.88,
2659
+ "learning_rate": 0.00023045267489711936,
2660
+ "loss": 0.7653,
2661
+ "step": 2210
2662
+ },
2663
+ {
2664
+ "epoch": 0.88,
2665
+ "learning_rate": 0.0002300411522633745,
2666
+ "loss": 0.7382,
2667
+ "step": 2215
2668
+ },
2669
+ {
2670
+ "epoch": 0.89,
2671
+ "learning_rate": 0.00022962962962962965,
2672
+ "loss": 0.7242,
2673
+ "step": 2220
2674
+ },
2675
+ {
2676
+ "epoch": 0.89,
2677
+ "learning_rate": 0.0002292181069958848,
2678
+ "loss": 0.7215,
2679
+ "step": 2225
2680
+ },
2681
+ {
2682
+ "epoch": 0.89,
2683
+ "learning_rate": 0.0002288065843621399,
2684
+ "loss": 0.724,
2685
+ "step": 2230
2686
+ },
2687
+ {
2688
+ "epoch": 0.89,
2689
+ "learning_rate": 0.00022839506172839507,
2690
+ "loss": 0.7439,
2691
+ "step": 2235
2692
+ },
2693
+ {
2694
+ "epoch": 0.89,
2695
+ "learning_rate": 0.00022798353909465023,
2696
+ "loss": 0.699,
2697
+ "step": 2240
2698
+ },
2699
+ {
2700
+ "epoch": 0.9,
2701
+ "learning_rate": 0.0002275720164609054,
2702
+ "loss": 0.7602,
2703
+ "step": 2245
2704
+ },
2705
+ {
2706
+ "epoch": 0.9,
2707
+ "learning_rate": 0.0002271604938271605,
2708
+ "loss": 0.7103,
2709
+ "step": 2250
2710
+ },
2711
+ {
2712
+ "epoch": 0.9,
2713
+ "learning_rate": 0.00022674897119341565,
2714
+ "loss": 0.7015,
2715
+ "step": 2255
2716
+ },
2717
+ {
2718
+ "epoch": 0.9,
2719
+ "learning_rate": 0.0002263374485596708,
2720
+ "loss": 0.7404,
2721
+ "step": 2260
2722
+ },
2723
+ {
2724
+ "epoch": 0.9,
2725
+ "learning_rate": 0.00022592592592592591,
2726
+ "loss": 0.7127,
2727
+ "step": 2265
2728
+ },
2729
+ {
2730
+ "epoch": 0.91,
2731
+ "learning_rate": 0.00022551440329218107,
2732
+ "loss": 0.7299,
2733
+ "step": 2270
2734
+ },
2735
+ {
2736
+ "epoch": 0.91,
2737
+ "learning_rate": 0.00022510288065843623,
2738
+ "loss": 0.7174,
2739
+ "step": 2275
2740
+ },
2741
+ {
2742
+ "epoch": 0.91,
2743
+ "learning_rate": 0.0002246913580246914,
2744
+ "loss": 0.7454,
2745
+ "step": 2280
2746
+ },
2747
+ {
2748
+ "epoch": 0.91,
2749
+ "learning_rate": 0.0002242798353909465,
2750
+ "loss": 0.7159,
2751
+ "step": 2285
2752
+ },
2753
+ {
2754
+ "epoch": 0.91,
2755
+ "learning_rate": 0.00022386831275720165,
2756
+ "loss": 0.7263,
2757
+ "step": 2290
2758
+ },
2759
+ {
2760
+ "epoch": 0.92,
2761
+ "learning_rate": 0.0002234567901234568,
2762
+ "loss": 0.7148,
2763
+ "step": 2295
2764
+ },
2765
+ {
2766
+ "epoch": 0.92,
2767
+ "learning_rate": 0.00022304526748971192,
2768
+ "loss": 0.7447,
2769
+ "step": 2300
2770
+ },
2771
+ {
2772
+ "epoch": 0.92,
2773
+ "learning_rate": 0.00022263374485596707,
2774
+ "loss": 0.7326,
2775
+ "step": 2305
2776
+ },
2777
+ {
2778
+ "epoch": 0.92,
2779
+ "learning_rate": 0.00022222222222222223,
2780
+ "loss": 0.7428,
2781
+ "step": 2310
2782
+ },
2783
+ {
2784
+ "epoch": 0.92,
2785
+ "learning_rate": 0.00022181069958847736,
2786
+ "loss": 0.7587,
2787
+ "step": 2315
2788
+ },
2789
+ {
2790
+ "epoch": 0.93,
2791
+ "learning_rate": 0.00022139917695473252,
2792
+ "loss": 0.759,
2793
+ "step": 2320
2794
+ },
2795
+ {
2796
+ "epoch": 0.93,
2797
+ "learning_rate": 0.00022098765432098768,
2798
+ "loss": 0.7716,
2799
+ "step": 2325
2800
+ },
2801
+ {
2802
+ "epoch": 0.93,
2803
+ "learning_rate": 0.0002205761316872428,
2804
+ "loss": 0.74,
2805
+ "step": 2330
2806
+ },
2807
+ {
2808
+ "epoch": 0.93,
2809
+ "learning_rate": 0.00022016460905349794,
2810
+ "loss": 0.7255,
2811
+ "step": 2335
2812
+ },
2813
+ {
2814
+ "epoch": 0.93,
2815
+ "learning_rate": 0.0002197530864197531,
2816
+ "loss": 0.7547,
2817
+ "step": 2340
2818
+ },
2819
+ {
2820
+ "epoch": 0.94,
2821
+ "learning_rate": 0.00021934156378600826,
2822
+ "loss": 0.7359,
2823
+ "step": 2345
2824
+ },
2825
+ {
2826
+ "epoch": 0.94,
2827
+ "learning_rate": 0.00021893004115226337,
2828
+ "loss": 0.6987,
2829
+ "step": 2350
2830
+ },
2831
+ {
2832
+ "epoch": 0.94,
2833
+ "learning_rate": 0.00021851851851851852,
2834
+ "loss": 0.7233,
2835
+ "step": 2355
2836
+ },
2837
+ {
2838
+ "epoch": 0.94,
2839
+ "learning_rate": 0.00021810699588477368,
2840
+ "loss": 0.6945,
2841
+ "step": 2360
2842
+ },
2843
+ {
2844
+ "epoch": 0.94,
2845
+ "learning_rate": 0.00021769547325102884,
2846
+ "loss": 0.7566,
2847
+ "step": 2365
2848
+ },
2849
+ {
2850
+ "epoch": 0.95,
2851
+ "learning_rate": 0.00021728395061728395,
2852
+ "loss": 0.728,
2853
+ "step": 2370
2854
+ },
2855
+ {
2856
+ "epoch": 0.95,
2857
+ "learning_rate": 0.0002168724279835391,
2858
+ "loss": 0.7167,
2859
+ "step": 2375
2860
+ },
2861
+ {
2862
+ "epoch": 0.95,
2863
+ "learning_rate": 0.00021646090534979426,
2864
+ "loss": 0.7576,
2865
+ "step": 2380
2866
+ },
2867
+ {
2868
+ "epoch": 0.95,
2869
+ "learning_rate": 0.00021604938271604937,
2870
+ "loss": 0.7246,
2871
+ "step": 2385
2872
+ },
2873
+ {
2874
+ "epoch": 0.95,
2875
+ "learning_rate": 0.00021563786008230453,
2876
+ "loss": 0.755,
2877
+ "step": 2390
2878
+ },
2879
+ {
2880
+ "epoch": 0.96,
2881
+ "learning_rate": 0.00021522633744855968,
2882
+ "loss": 0.6983,
2883
+ "step": 2395
2884
+ },
2885
+ {
2886
+ "epoch": 0.96,
2887
+ "learning_rate": 0.00021481481481481484,
2888
+ "loss": 0.7369,
2889
+ "step": 2400
2890
+ },
2891
+ {
2892
+ "epoch": 0.96,
2893
+ "learning_rate": 0.00021440329218106995,
2894
+ "loss": 0.7074,
2895
+ "step": 2405
2896
+ },
2897
+ {
2898
+ "epoch": 0.96,
2899
+ "learning_rate": 0.0002139917695473251,
2900
+ "loss": 0.7317,
2901
+ "step": 2410
2902
+ },
2903
+ {
2904
+ "epoch": 0.96,
2905
+ "learning_rate": 0.00021358024691358026,
2906
+ "loss": 0.7086,
2907
+ "step": 2415
2908
+ },
2909
+ {
2910
+ "epoch": 0.97,
2911
+ "learning_rate": 0.0002131687242798354,
2912
+ "loss": 0.7356,
2913
+ "step": 2420
2914
+ },
2915
+ {
2916
+ "epoch": 0.97,
2917
+ "learning_rate": 0.00021275720164609055,
2918
+ "loss": 0.7652,
2919
+ "step": 2425
2920
+ },
2921
+ {
2922
+ "epoch": 0.97,
2923
+ "learning_rate": 0.00021234567901234569,
2924
+ "loss": 0.7488,
2925
+ "step": 2430
2926
+ },
2927
+ {
2928
+ "epoch": 0.97,
2929
+ "learning_rate": 0.00021193415637860082,
2930
+ "loss": 0.746,
2931
+ "step": 2435
2932
+ },
2933
+ {
2934
+ "epoch": 0.97,
2935
+ "learning_rate": 0.00021152263374485598,
2936
+ "loss": 0.7454,
2937
+ "step": 2440
2938
+ },
2939
+ {
2940
+ "epoch": 0.98,
2941
+ "learning_rate": 0.00021111111111111113,
2942
+ "loss": 0.72,
2943
+ "step": 2445
2944
+ },
2945
+ {
2946
+ "epoch": 0.98,
2947
+ "learning_rate": 0.0002106995884773663,
2948
+ "loss": 0.7299,
2949
+ "step": 2450
2950
+ },
2951
+ {
2952
+ "epoch": 0.98,
2953
+ "learning_rate": 0.0002102880658436214,
2954
+ "loss": 0.7436,
2955
+ "step": 2455
2956
+ },
2957
+ {
2958
+ "epoch": 0.98,
2959
+ "learning_rate": 0.00020987654320987656,
2960
+ "loss": 0.7068,
2961
+ "step": 2460
2962
+ },
2963
+ {
2964
+ "epoch": 0.98,
2965
+ "learning_rate": 0.00020946502057613171,
2966
+ "loss": 0.711,
2967
+ "step": 2465
2968
+ },
2969
+ {
2970
+ "epoch": 0.99,
2971
+ "learning_rate": 0.00020905349794238682,
2972
+ "loss": 0.7473,
2973
+ "step": 2470
2974
+ },
2975
+ {
2976
+ "epoch": 0.99,
2977
+ "learning_rate": 0.00020864197530864198,
2978
+ "loss": 0.7016,
2979
+ "step": 2475
2980
+ },
2981
+ {
2982
+ "epoch": 0.99,
2983
+ "learning_rate": 0.00020823045267489714,
2984
+ "loss": 0.7049,
2985
+ "step": 2480
2986
+ },
2987
+ {
2988
+ "epoch": 0.99,
2989
+ "learning_rate": 0.0002078189300411523,
2990
+ "loss": 0.7268,
2991
+ "step": 2485
2992
+ },
2993
+ {
2994
+ "epoch": 0.99,
2995
+ "learning_rate": 0.0002074074074074074,
2996
+ "loss": 0.7239,
2997
+ "step": 2490
2998
+ },
2999
+ {
3000
+ "epoch": 1.0,
3001
+ "learning_rate": 0.00020699588477366256,
3002
+ "loss": 0.698,
3003
+ "step": 2495
3004
+ },
3005
+ {
3006
+ "epoch": 1.0,
3007
+ "learning_rate": 0.00020658436213991772,
3008
+ "loss": 0.7573,
3009
+ "step": 2500
3010
+ },
3011
+ {
3012
+ "epoch": 1.0,
3013
+ "learning_rate": 0.00020617283950617282,
3014
+ "loss": 0.7309,
3015
+ "step": 2505
3016
+ },
3017
+ {
3018
+ "epoch": 1.0,
3019
+ "learning_rate": 0.00020576131687242798,
3020
+ "loss": 0.6628,
3021
+ "step": 2510
3022
+ },
3023
+ {
3024
+ "epoch": 1.0,
3025
+ "learning_rate": 0.00020534979423868314,
3026
+ "loss": 0.656,
3027
+ "step": 2515
3028
+ },
3029
+ {
3030
+ "epoch": 1.01,
3031
+ "learning_rate": 0.0002049382716049383,
3032
+ "loss": 0.6737,
3033
+ "step": 2520
3034
+ },
3035
+ {
3036
+ "epoch": 1.01,
3037
+ "learning_rate": 0.00020452674897119343,
3038
+ "loss": 0.6903,
3039
+ "step": 2525
3040
+ },
3041
+ {
3042
+ "epoch": 1.01,
3043
+ "learning_rate": 0.00020411522633744856,
3044
+ "loss": 0.6674,
3045
+ "step": 2530
3046
+ },
3047
+ {
3048
+ "epoch": 1.01,
3049
+ "learning_rate": 0.00020370370370370372,
3050
+ "loss": 0.6507,
3051
+ "step": 2535
3052
+ },
3053
+ {
3054
+ "epoch": 1.01,
3055
+ "learning_rate": 0.00020329218106995885,
3056
+ "loss": 0.6948,
3057
+ "step": 2540
3058
+ },
3059
+ {
3060
+ "epoch": 1.02,
3061
+ "learning_rate": 0.000202880658436214,
3062
+ "loss": 0.6662,
3063
+ "step": 2545
3064
+ },
3065
+ {
3066
+ "epoch": 1.02,
3067
+ "learning_rate": 0.00020246913580246917,
3068
+ "loss": 0.6624,
3069
+ "step": 2550
3070
+ },
3071
+ {
3072
+ "epoch": 1.02,
3073
+ "learning_rate": 0.00020205761316872427,
3074
+ "loss": 0.6791,
3075
+ "step": 2555
3076
+ },
3077
+ {
3078
+ "epoch": 1.02,
3079
+ "learning_rate": 0.00020164609053497943,
3080
+ "loss": 0.7088,
3081
+ "step": 2560
3082
+ },
3083
+ {
3084
+ "epoch": 1.02,
3085
+ "learning_rate": 0.0002012345679012346,
3086
+ "loss": 0.6796,
3087
+ "step": 2565
3088
+ },
3089
+ {
3090
+ "epoch": 1.03,
3091
+ "learning_rate": 0.00020082304526748975,
3092
+ "loss": 0.6601,
3093
+ "step": 2570
3094
+ },
3095
+ {
3096
+ "epoch": 1.03,
3097
+ "learning_rate": 0.00020041152263374485,
3098
+ "loss": 0.6865,
3099
+ "step": 2575
3100
+ },
3101
+ {
3102
+ "epoch": 1.03,
3103
+ "learning_rate": 0.0002,
3104
+ "loss": 0.6725,
3105
+ "step": 2580
3106
+ },
3107
+ {
3108
+ "epoch": 1.03,
3109
+ "learning_rate": 0.00019958847736625514,
3110
+ "loss": 0.6743,
3111
+ "step": 2585
3112
+ },
3113
+ {
3114
+ "epoch": 1.03,
3115
+ "learning_rate": 0.0001991769547325103,
3116
+ "loss": 0.6395,
3117
+ "step": 2590
3118
+ },
3119
+ {
3120
+ "epoch": 1.04,
3121
+ "learning_rate": 0.00019876543209876543,
3122
+ "loss": 0.6522,
3123
+ "step": 2595
3124
+ },
3125
+ {
3126
+ "epoch": 1.04,
3127
+ "learning_rate": 0.0001983539094650206,
3128
+ "loss": 0.6868,
3129
+ "step": 2600
3130
+ },
3131
+ {
3132
+ "epoch": 1.04,
3133
+ "learning_rate": 0.00019794238683127572,
3134
+ "loss": 0.6861,
3135
+ "step": 2605
3136
+ },
3137
+ {
3138
+ "epoch": 1.04,
3139
+ "learning_rate": 0.00019753086419753085,
3140
+ "loss": 0.6843,
3141
+ "step": 2610
3142
+ },
3143
+ {
3144
+ "epoch": 1.04,
3145
+ "learning_rate": 0.000197119341563786,
3146
+ "loss": 0.6732,
3147
+ "step": 2615
3148
+ },
3149
+ {
3150
+ "epoch": 1.05,
3151
+ "learning_rate": 0.00019670781893004114,
3152
+ "loss": 0.6676,
3153
+ "step": 2620
3154
+ },
3155
+ {
3156
+ "epoch": 1.05,
3157
+ "learning_rate": 0.0001962962962962963,
3158
+ "loss": 0.6782,
3159
+ "step": 2625
3160
+ },
3161
+ {
3162
+ "epoch": 1.05,
3163
+ "learning_rate": 0.00019588477366255146,
3164
+ "loss": 0.6937,
3165
+ "step": 2630
3166
+ },
3167
+ {
3168
+ "epoch": 1.05,
3169
+ "learning_rate": 0.0001954732510288066,
3170
+ "loss": 0.6823,
3171
+ "step": 2635
3172
+ },
3173
+ {
3174
+ "epoch": 1.05,
3175
+ "learning_rate": 0.00019506172839506175,
3176
+ "loss": 0.6839,
3177
+ "step": 2640
3178
+ },
3179
+ {
3180
+ "epoch": 1.06,
3181
+ "learning_rate": 0.00019465020576131688,
3182
+ "loss": 0.6351,
3183
+ "step": 2645
3184
+ },
3185
+ {
3186
+ "epoch": 1.06,
3187
+ "learning_rate": 0.00019423868312757204,
3188
+ "loss": 0.7157,
3189
+ "step": 2650
3190
+ },
3191
+ {
3192
+ "epoch": 1.06,
3193
+ "learning_rate": 0.00019382716049382717,
3194
+ "loss": 0.6591,
3195
+ "step": 2655
3196
+ },
3197
+ {
3198
+ "epoch": 1.06,
3199
+ "learning_rate": 0.00019341563786008233,
3200
+ "loss": 0.6826,
3201
+ "step": 2660
3202
+ },
3203
+ {
3204
+ "epoch": 1.06,
3205
+ "learning_rate": 0.00019300411522633746,
3206
+ "loss": 0.6732,
3207
+ "step": 2665
3208
+ },
3209
+ {
3210
+ "epoch": 1.07,
3211
+ "learning_rate": 0.0001925925925925926,
3212
+ "loss": 0.6795,
3213
+ "step": 2670
3214
+ },
3215
+ {
3216
+ "epoch": 1.07,
3217
+ "learning_rate": 0.00019218106995884775,
3218
+ "loss": 0.6845,
3219
+ "step": 2675
3220
+ },
3221
+ {
3222
+ "epoch": 1.07,
3223
+ "learning_rate": 0.00019176954732510288,
3224
+ "loss": 0.649,
3225
+ "step": 2680
3226
+ },
3227
+ {
3228
+ "epoch": 1.07,
3229
+ "learning_rate": 0.00019135802469135804,
3230
+ "loss": 0.6684,
3231
+ "step": 2685
3232
+ },
3233
+ {
3234
+ "epoch": 1.07,
3235
+ "learning_rate": 0.00019094650205761317,
3236
+ "loss": 0.6712,
3237
+ "step": 2690
3238
+ },
3239
+ {
3240
+ "epoch": 1.08,
3241
+ "learning_rate": 0.00019053497942386833,
3242
+ "loss": 0.6665,
3243
+ "step": 2695
3244
+ },
3245
+ {
3246
+ "epoch": 1.08,
3247
+ "learning_rate": 0.00019012345679012346,
3248
+ "loss": 0.6426,
3249
+ "step": 2700
3250
+ },
3251
+ {
3252
+ "epoch": 1.08,
3253
+ "learning_rate": 0.0001897119341563786,
3254
+ "loss": 0.6561,
3255
+ "step": 2705
3256
+ },
3257
+ {
3258
+ "epoch": 1.08,
3259
+ "learning_rate": 0.00018930041152263375,
3260
+ "loss": 0.6664,
3261
+ "step": 2710
3262
+ },
3263
+ {
3264
+ "epoch": 1.08,
3265
+ "learning_rate": 0.00018888888888888888,
3266
+ "loss": 0.6746,
3267
+ "step": 2715
3268
+ },
3269
+ {
3270
+ "epoch": 1.09,
3271
+ "learning_rate": 0.00018847736625514404,
3272
+ "loss": 0.6497,
3273
+ "step": 2720
3274
+ },
3275
+ {
3276
+ "epoch": 1.09,
3277
+ "learning_rate": 0.00018806584362139917,
3278
+ "loss": 0.6811,
3279
+ "step": 2725
3280
+ },
3281
+ {
3282
+ "epoch": 1.09,
3283
+ "learning_rate": 0.00018765432098765433,
3284
+ "loss": 0.6608,
3285
+ "step": 2730
3286
+ },
3287
+ {
3288
+ "epoch": 1.09,
3289
+ "learning_rate": 0.00018724279835390946,
3290
+ "loss": 0.6655,
3291
+ "step": 2735
3292
+ },
3293
+ {
3294
+ "epoch": 1.09,
3295
+ "learning_rate": 0.00018683127572016462,
3296
+ "loss": 0.7014,
3297
+ "step": 2740
3298
+ },
3299
+ {
3300
+ "epoch": 1.1,
3301
+ "learning_rate": 0.00018641975308641978,
3302
+ "loss": 0.6889,
3303
+ "step": 2745
3304
+ },
3305
+ {
3306
+ "epoch": 1.1,
3307
+ "learning_rate": 0.0001860082304526749,
3308
+ "loss": 0.6805,
3309
+ "step": 2750
3310
+ },
3311
+ {
3312
+ "epoch": 1.1,
3313
+ "learning_rate": 0.00018559670781893007,
3314
+ "loss": 0.6629,
3315
+ "step": 2755
3316
+ },
3317
+ {
3318
+ "epoch": 1.1,
3319
+ "learning_rate": 0.0001851851851851852,
3320
+ "loss": 0.6593,
3321
+ "step": 2760
3322
+ },
3323
+ {
3324
+ "epoch": 1.1,
3325
+ "learning_rate": 0.00018477366255144033,
3326
+ "loss": 0.6902,
3327
+ "step": 2765
3328
+ },
3329
+ {
3330
+ "epoch": 1.11,
3331
+ "learning_rate": 0.0001843621399176955,
3332
+ "loss": 0.6777,
3333
+ "step": 2770
3334
+ },
3335
+ {
3336
+ "epoch": 1.11,
3337
+ "learning_rate": 0.00018395061728395062,
3338
+ "loss": 0.7127,
3339
+ "step": 2775
3340
+ },
3341
+ {
3342
+ "epoch": 1.11,
3343
+ "learning_rate": 0.00018353909465020578,
3344
+ "loss": 0.6551,
3345
+ "step": 2780
3346
+ },
3347
+ {
3348
+ "epoch": 1.11,
3349
+ "learning_rate": 0.00018312757201646091,
3350
+ "loss": 0.6703,
3351
+ "step": 2785
3352
+ },
3353
+ {
3354
+ "epoch": 1.11,
3355
+ "learning_rate": 0.00018271604938271605,
3356
+ "loss": 0.6776,
3357
+ "step": 2790
3358
+ },
3359
+ {
3360
+ "epoch": 1.12,
3361
+ "learning_rate": 0.0001823045267489712,
3362
+ "loss": 0.6574,
3363
+ "step": 2795
3364
+ },
3365
+ {
3366
+ "epoch": 1.12,
3367
+ "learning_rate": 0.00018189300411522634,
3368
+ "loss": 0.7154,
3369
+ "step": 2800
3370
+ },
3371
+ {
3372
+ "epoch": 1.12,
3373
+ "learning_rate": 0.0001814814814814815,
3374
+ "loss": 0.6749,
3375
+ "step": 2805
3376
+ },
3377
+ {
3378
+ "epoch": 1.12,
3379
+ "learning_rate": 0.00018106995884773663,
3380
+ "loss": 0.695,
3381
+ "step": 2810
3382
+ },
3383
+ {
3384
+ "epoch": 1.12,
3385
+ "learning_rate": 0.00018065843621399178,
3386
+ "loss": 0.6685,
3387
+ "step": 2815
3388
+ },
3389
+ {
3390
+ "epoch": 1.13,
3391
+ "learning_rate": 0.00018024691358024692,
3392
+ "loss": 0.642,
3393
+ "step": 2820
3394
+ },
3395
+ {
3396
+ "epoch": 1.13,
3397
+ "learning_rate": 0.00017983539094650205,
3398
+ "loss": 0.6873,
3399
+ "step": 2825
3400
+ },
3401
+ {
3402
+ "epoch": 1.13,
3403
+ "learning_rate": 0.0001794238683127572,
3404
+ "loss": 0.6506,
3405
+ "step": 2830
3406
+ },
3407
+ {
3408
+ "epoch": 1.13,
3409
+ "learning_rate": 0.00017901234567901234,
3410
+ "loss": 0.6695,
3411
+ "step": 2835
3412
+ },
3413
+ {
3414
+ "epoch": 1.13,
3415
+ "learning_rate": 0.0001786008230452675,
3416
+ "loss": 0.651,
3417
+ "step": 2840
3418
+ },
3419
+ {
3420
+ "epoch": 1.14,
3421
+ "learning_rate": 0.00017818930041152265,
3422
+ "loss": 0.6585,
3423
+ "step": 2845
3424
+ },
3425
+ {
3426
+ "epoch": 1.14,
3427
+ "learning_rate": 0.00017777777777777779,
3428
+ "loss": 0.6717,
3429
+ "step": 2850
3430
+ },
3431
+ {
3432
+ "epoch": 1.14,
3433
+ "learning_rate": 0.00017736625514403294,
3434
+ "loss": 0.6524,
3435
+ "step": 2855
3436
+ },
3437
+ {
3438
+ "epoch": 1.14,
3439
+ "learning_rate": 0.00017695473251028808,
3440
+ "loss": 0.6679,
3441
+ "step": 2860
3442
+ },
3443
+ {
3444
+ "epoch": 1.14,
3445
+ "learning_rate": 0.00017654320987654323,
3446
+ "loss": 0.6719,
3447
+ "step": 2865
3448
+ },
3449
+ {
3450
+ "epoch": 1.15,
3451
+ "learning_rate": 0.00017613168724279837,
3452
+ "loss": 0.6662,
3453
+ "step": 2870
3454
+ },
3455
+ {
3456
+ "epoch": 1.15,
3457
+ "learning_rate": 0.00017572016460905352,
3458
+ "loss": 0.6624,
3459
+ "step": 2875
3460
+ },
3461
+ {
3462
+ "epoch": 1.15,
3463
+ "learning_rate": 0.00017530864197530866,
3464
+ "loss": 0.69,
3465
+ "step": 2880
3466
+ },
3467
+ {
3468
+ "epoch": 1.15,
3469
+ "learning_rate": 0.0001748971193415638,
3470
+ "loss": 0.6629,
3471
+ "step": 2885
3472
+ },
3473
+ {
3474
+ "epoch": 1.15,
3475
+ "learning_rate": 0.00017448559670781895,
3476
+ "loss": 0.6566,
3477
+ "step": 2890
3478
+ },
3479
+ {
3480
+ "epoch": 1.16,
3481
+ "learning_rate": 0.00017407407407407408,
3482
+ "loss": 0.6711,
3483
+ "step": 2895
3484
+ },
3485
+ {
3486
+ "epoch": 1.16,
3487
+ "learning_rate": 0.00017366255144032924,
3488
+ "loss": 0.6995,
3489
+ "step": 2900
3490
+ },
3491
+ {
3492
+ "epoch": 1.16,
3493
+ "learning_rate": 0.00017325102880658437,
3494
+ "loss": 0.6597,
3495
+ "step": 2905
3496
+ },
3497
+ {
3498
+ "epoch": 1.16,
3499
+ "learning_rate": 0.0001728395061728395,
3500
+ "loss": 0.6685,
3501
+ "step": 2910
3502
+ },
3503
+ {
3504
+ "epoch": 1.16,
3505
+ "learning_rate": 0.00017242798353909466,
3506
+ "loss": 0.6649,
3507
+ "step": 2915
3508
+ },
3509
+ {
3510
+ "epoch": 1.17,
3511
+ "learning_rate": 0.0001720164609053498,
3512
+ "loss": 0.6824,
3513
+ "step": 2920
3514
+ },
3515
+ {
3516
+ "epoch": 1.17,
3517
+ "learning_rate": 0.00017160493827160495,
3518
+ "loss": 0.6484,
3519
+ "step": 2925
3520
+ },
3521
+ {
3522
+ "epoch": 1.17,
3523
+ "learning_rate": 0.00017119341563786008,
3524
+ "loss": 0.6693,
3525
+ "step": 2930
3526
+ },
3527
+ {
3528
+ "epoch": 1.17,
3529
+ "learning_rate": 0.00017078189300411524,
3530
+ "loss": 0.629,
3531
+ "step": 2935
3532
+ },
3533
+ {
3534
+ "epoch": 1.17,
3535
+ "learning_rate": 0.00017037037037037037,
3536
+ "loss": 0.6588,
3537
+ "step": 2940
3538
+ },
3539
+ {
3540
+ "epoch": 1.18,
3541
+ "learning_rate": 0.00016995884773662553,
3542
+ "loss": 0.6771,
3543
+ "step": 2945
3544
+ },
3545
+ {
3546
+ "epoch": 1.18,
3547
+ "learning_rate": 0.00016954732510288066,
3548
+ "loss": 0.6773,
3549
+ "step": 2950
3550
+ },
3551
+ {
3552
+ "epoch": 1.18,
3553
+ "learning_rate": 0.00016913580246913582,
3554
+ "loss": 0.6307,
3555
+ "step": 2955
3556
+ },
3557
+ {
3558
+ "epoch": 1.18,
3559
+ "learning_rate": 0.00016872427983539098,
3560
+ "loss": 0.6809,
3561
+ "step": 2960
3562
+ },
3563
+ {
3564
+ "epoch": 1.18,
3565
+ "learning_rate": 0.0001683127572016461,
3566
+ "loss": 0.6748,
3567
+ "step": 2965
3568
+ },
3569
+ {
3570
+ "epoch": 1.19,
3571
+ "learning_rate": 0.00016790123456790124,
3572
+ "loss": 0.6708,
3573
+ "step": 2970
3574
+ },
3575
+ {
3576
+ "epoch": 1.19,
3577
+ "learning_rate": 0.0001674897119341564,
3578
+ "loss": 0.6754,
3579
+ "step": 2975
3580
+ },
3581
+ {
3582
+ "epoch": 1.19,
3583
+ "learning_rate": 0.00016707818930041153,
3584
+ "loss": 0.6676,
3585
+ "step": 2980
3586
+ },
3587
+ {
3588
+ "epoch": 1.19,
3589
+ "learning_rate": 0.0001666666666666667,
3590
+ "loss": 0.6662,
3591
+ "step": 2985
3592
+ },
3593
+ {
3594
+ "epoch": 1.19,
3595
+ "learning_rate": 0.00016625514403292182,
3596
+ "loss": 0.6933,
3597
+ "step": 2990
3598
+ },
3599
+ {
3600
+ "epoch": 1.2,
3601
+ "learning_rate": 0.00016584362139917695,
3602
+ "loss": 0.6879,
3603
+ "step": 2995
3604
+ },
3605
+ {
3606
+ "epoch": 1.2,
3607
+ "learning_rate": 0.0001654320987654321,
3608
+ "loss": 0.6979,
3609
+ "step": 3000
3610
+ }
3611
+ ],
3612
+ "logging_steps": 5,
3613
+ "max_steps": 5010,
3614
+ "num_input_tokens_seen": 0,
3615
+ "num_train_epochs": 2,
3616
+ "save_steps": 500,
3617
+ "total_flos": 1.2080552599774822e+19,
3618
+ "train_batch_size": 1,
3619
+ "trial_name": null,
3620
+ "trial_params": null
3621
+ }
save_lora_instruct_r8_4e4_s11_1/checkpoint-3000/training_args.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:43458f4cf6aeb211c730b848f93ab15f483827c314fb4dc1e79dd1f658b7dbc8
3
+ size 5944
save_lora_instruct_r8_4e4_s11_1/checkpoint-3000/zero_to_fp32.py ADDED
@@ -0,0 +1,587 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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):
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
+ elif zero_stage == 3:
216
+ return _get_fp32_state_dict_from_zero3_checkpoint(world_size, fp32_flat_groups, zero_model_states)
217
+
218
+
219
+ def _zero2_merge_frozen_params(state_dict, zero_model_states):
220
+ if zero_model_states[0].frozen_param_shapes is None or len(zero_model_states[0].frozen_param_shapes) == 0:
221
+ return
222
+
223
+ frozen_param_shapes = zero_model_states[0].frozen_param_shapes
224
+ frozen_param_fragments = zero_model_states[0].frozen_param_fragments
225
+
226
+ if debug:
227
+ num_elem = sum(s.numel() for s in frozen_param_shapes.values())
228
+ print(f'rank 0: {FROZEN_PARAM_SHAPES}.numel = {num_elem}')
229
+
230
+ wanted_params = len(frozen_param_shapes)
231
+ wanted_numel = sum(s.numel() for s in frozen_param_shapes.values())
232
+ avail_numel = sum([p.numel() for p in frozen_param_fragments.values()])
233
+ print(f'Frozen params: Have {avail_numel} numels to process.')
234
+ print(f'Frozen params: Need {wanted_numel} numels in {wanted_params} params')
235
+
236
+ total_params = 0
237
+ total_numel = 0
238
+ for name, shape in frozen_param_shapes.items():
239
+ total_params += 1
240
+ unpartitioned_numel = shape.numel()
241
+ total_numel += unpartitioned_numel
242
+
243
+ state_dict[name] = frozen_param_fragments[name]
244
+
245
+ if debug:
246
+ print(f"{name} full shape: {shape} unpartitioned numel {unpartitioned_numel} ")
247
+
248
+ print(f"Reconstructed Frozen fp32 state dict with {total_params} params {total_numel} elements")
249
+
250
+
251
+ def _zero2_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states):
252
+ param_shapes = zero_model_states[0].param_shapes
253
+
254
+ # Reconstruction protocol:
255
+ #
256
+ # XXX: document this
257
+
258
+ if debug:
259
+ for i in range(world_size):
260
+ for j in range(len(fp32_flat_groups[0])):
261
+ print(f"{FP32_FLAT_GROUPS}[{i}][{j}].shape={fp32_flat_groups[i][j].shape}")
262
+
263
+ # XXX: memory usage doubles here (zero2)
264
+ num_param_groups = len(fp32_flat_groups[0])
265
+ merged_single_partition_of_fp32_groups = []
266
+ for i in range(num_param_groups):
267
+ merged_partitions = [sd[i] for sd in fp32_flat_groups]
268
+ full_single_fp32_vector = torch.cat(merged_partitions, 0)
269
+ merged_single_partition_of_fp32_groups.append(full_single_fp32_vector)
270
+ avail_numel = sum(
271
+ [full_single_fp32_vector.numel() for full_single_fp32_vector in merged_single_partition_of_fp32_groups])
272
+
273
+ if debug:
274
+ wanted_params = sum([len(shapes) for shapes in param_shapes])
275
+ wanted_numel = sum([sum(shape.numel() for shape in shapes.values()) for shapes in param_shapes])
276
+ # not asserting if there is a mismatch due to possible padding
277
+ print(f"Have {avail_numel} numels to process.")
278
+ print(f"Need {wanted_numel} numels in {wanted_params} params.")
279
+
280
+ # params
281
+ # XXX: for huge models that can't fit into the host's RAM we will have to recode this to support
282
+ # out-of-core computing solution
283
+ total_numel = 0
284
+ total_params = 0
285
+ for shapes, full_single_fp32_vector in zip(param_shapes, merged_single_partition_of_fp32_groups):
286
+ offset = 0
287
+ avail_numel = full_single_fp32_vector.numel()
288
+ for name, shape in shapes.items():
289
+
290
+ unpartitioned_numel = shape.numel()
291
+ total_numel += unpartitioned_numel
292
+ total_params += 1
293
+
294
+ if debug:
295
+ print(f"{name} full shape: {shape} unpartitioned numel {unpartitioned_numel} ")
296
+ state_dict[name] = full_single_fp32_vector.narrow(0, offset, unpartitioned_numel).view(shape)
297
+ offset += unpartitioned_numel
298
+
299
+ # Z2 started to align to 2*world_size to improve nccl performance. Therefore both offset and
300
+ # avail_numel can differ by anywhere between 0..2*world_size. Due to two unrelated complex
301
+ # paddings performed in the code it's almost impossible to predict the exact numbers w/o the
302
+ # live optimizer object, so we are checking that the numbers are within the right range
303
+ align_to = 2 * world_size
304
+
305
+ def zero2_align(x):
306
+ return align_to * math.ceil(x / align_to)
307
+
308
+ if debug:
309
+ print(f"original offset={offset}, avail_numel={avail_numel}")
310
+
311
+ offset = zero2_align(offset)
312
+ avail_numel = zero2_align(avail_numel)
313
+
314
+ if debug:
315
+ print(f"aligned offset={offset}, avail_numel={avail_numel}")
316
+
317
+ # Sanity check
318
+ if offset != avail_numel:
319
+ raise ValueError(f"consumed {offset} numels out of {avail_numel} - something is wrong")
320
+
321
+ print(f"Reconstructed fp32 state dict with {total_params} params {total_numel} elements")
322
+
323
+
324
+ def _get_fp32_state_dict_from_zero2_checkpoint(world_size, fp32_flat_groups, zero_model_states):
325
+ state_dict = OrderedDict()
326
+
327
+ # buffers
328
+ buffers = zero_model_states[0].buffers
329
+ state_dict.update(buffers)
330
+ if debug:
331
+ print(f"added {len(buffers)} buffers")
332
+
333
+ _zero2_merge_frozen_params(state_dict, zero_model_states)
334
+
335
+ _zero2_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states)
336
+
337
+ # recover shared parameters
338
+ for pair in zero_model_states[0].shared_params:
339
+ if pair[1] in state_dict:
340
+ state_dict[pair[0]] = state_dict[pair[1]]
341
+
342
+ return state_dict
343
+
344
+
345
+ def zero3_partitioned_param_info(unpartitioned_numel, world_size):
346
+ remainder = unpartitioned_numel % world_size
347
+ padding_numel = (world_size - remainder) if remainder else 0
348
+ partitioned_numel = math.ceil(unpartitioned_numel / world_size)
349
+ return partitioned_numel, padding_numel
350
+
351
+
352
+ def _zero3_merge_frozen_params(state_dict, world_size, zero_model_states):
353
+ if zero_model_states[0].frozen_param_shapes is None or len(zero_model_states[0].frozen_param_shapes) == 0:
354
+ return
355
+
356
+ if debug:
357
+ for i in range(world_size):
358
+ num_elem = sum(s.numel() for s in zero_model_states[i].frozen_param_fragments.values())
359
+ print(f'rank {i}: {FROZEN_PARAM_SHAPES}.numel = {num_elem}')
360
+
361
+ frozen_param_shapes = zero_model_states[0].frozen_param_shapes
362
+ wanted_params = len(frozen_param_shapes)
363
+ wanted_numel = sum(s.numel() for s in frozen_param_shapes.values())
364
+ avail_numel = sum([p.numel() for p in zero_model_states[0].frozen_param_fragments.values()]) * world_size
365
+ print(f'Frozen params: Have {avail_numel} numels to process.')
366
+ print(f'Frozen params: Need {wanted_numel} numels in {wanted_params} params')
367
+
368
+ total_params = 0
369
+ total_numel = 0
370
+ for name, shape in zero_model_states[0].frozen_param_shapes.items():
371
+ total_params += 1
372
+ unpartitioned_numel = shape.numel()
373
+ total_numel += unpartitioned_numel
374
+
375
+ param_frags = tuple(model_state.frozen_param_fragments[name] for model_state in zero_model_states)
376
+ state_dict[name] = torch.cat(param_frags, 0).narrow(0, 0, unpartitioned_numel).view(shape)
377
+
378
+ partitioned_numel, partitioned_padding_numel = zero3_partitioned_param_info(unpartitioned_numel, world_size)
379
+
380
+ if debug:
381
+ print(
382
+ f"Frozen params: {total_params} {name} full shape: {shape} partition0 numel={partitioned_numel} partitioned_padding_numel={partitioned_padding_numel}"
383
+ )
384
+
385
+ print(f"Reconstructed Frozen fp32 state dict with {total_params} params {total_numel} elements")
386
+
387
+
388
+ def _zero3_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states):
389
+ param_shapes = zero_model_states[0].param_shapes
390
+ avail_numel = fp32_flat_groups[0].numel() * world_size
391
+ # Reconstruction protocol: For zero3 we need to zip the partitions together at boundary of each
392
+ # param, re-consolidating each param, while dealing with padding if any
393
+
394
+ # merge list of dicts, preserving order
395
+ param_shapes = {k: v for d in param_shapes for k, v in d.items()}
396
+
397
+ if debug:
398
+ for i in range(world_size):
399
+ print(f"{FP32_FLAT_GROUPS}[{i}].shape={fp32_flat_groups[i].shape}")
400
+
401
+ wanted_params = len(param_shapes)
402
+ wanted_numel = sum(shape.numel() for shape in param_shapes.values())
403
+ # not asserting if there is a mismatch due to possible padding
404
+ avail_numel = fp32_flat_groups[0].numel() * world_size
405
+ print(f"Trainable params: Have {avail_numel} numels to process.")
406
+ print(f"Trainable params: Need {wanted_numel} numels in {wanted_params} params.")
407
+
408
+ # params
409
+ # XXX: for huge models that can't fit into the host's RAM we will have to recode this to support
410
+ # out-of-core computing solution
411
+ offset = 0
412
+ total_numel = 0
413
+ total_params = 0
414
+ for name, shape in param_shapes.items():
415
+
416
+ unpartitioned_numel = shape.numel()
417
+ total_numel += unpartitioned_numel
418
+ total_params += 1
419
+
420
+ partitioned_numel, partitioned_padding_numel = zero3_partitioned_param_info(unpartitioned_numel, world_size)
421
+
422
+ if debug:
423
+ print(
424
+ f"Trainable params: {total_params} {name} full shape: {shape} partition0 numel={partitioned_numel} partitioned_padding_numel={partitioned_padding_numel}"
425
+ )
426
+
427
+ # XXX: memory usage doubles here
428
+ state_dict[name] = torch.cat(
429
+ tuple(fp32_flat_groups[i].narrow(0, offset, partitioned_numel) for i in range(world_size)),
430
+ 0).narrow(0, 0, unpartitioned_numel).view(shape)
431
+ offset += partitioned_numel
432
+
433
+ offset *= world_size
434
+
435
+ # Sanity check
436
+ if offset != avail_numel:
437
+ raise ValueError(f"consumed {offset} numels out of {avail_numel} - something is wrong")
438
+
439
+ print(f"Reconstructed Trainable fp32 state dict with {total_params} params {total_numel} elements")
440
+
441
+
442
+ def _get_fp32_state_dict_from_zero3_checkpoint(world_size, fp32_flat_groups, zero_model_states):
443
+ state_dict = OrderedDict()
444
+
445
+ # buffers
446
+ buffers = zero_model_states[0].buffers
447
+ state_dict.update(buffers)
448
+ if debug:
449
+ print(f"added {len(buffers)} buffers")
450
+
451
+ _zero3_merge_frozen_params(state_dict, world_size, zero_model_states)
452
+
453
+ _zero3_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states)
454
+
455
+ # recover shared parameters
456
+ for pair in zero_model_states[0].shared_params:
457
+ if pair[1] in state_dict:
458
+ state_dict[pair[0]] = state_dict[pair[1]]
459
+
460
+ return state_dict
461
+
462
+
463
+ def get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir, tag=None):
464
+ """
465
+ Convert ZeRO 2 or 3 checkpoint into a single fp32 consolidated state_dict that can be loaded with
466
+ ``load_state_dict()`` and used for training without DeepSpeed or shared with others, for example
467
+ via a model hub.
468
+
469
+ Args:
470
+ - ``checkpoint_dir``: path to the desired checkpoint folder
471
+ - ``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``
472
+
473
+ Returns:
474
+ - pytorch ``state_dict``
475
+
476
+ Note: this approach may not work if your application doesn't have sufficient free CPU memory and
477
+ you may need to use the offline approach using the ``zero_to_fp32.py`` script that is saved with
478
+ the checkpoint.
479
+
480
+ A typical usage might be ::
481
+
482
+ from deepspeed.utils.zero_to_fp32 import get_fp32_state_dict_from_zero_checkpoint
483
+ # do the training and checkpoint saving
484
+ state_dict = get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir) # already on cpu
485
+ model = model.cpu() # move to cpu
486
+ model.load_state_dict(state_dict)
487
+ # submit to model hub or save the model to share with others
488
+
489
+ In this example the ``model`` will no longer be usable in the deepspeed context of the same
490
+ application. i.e. you will need to re-initialize the deepspeed engine, since
491
+ ``model.load_state_dict(state_dict)`` will remove all the deepspeed magic from it.
492
+
493
+ If you want it all done for you, use ``load_state_dict_from_zero_checkpoint`` instead.
494
+
495
+ """
496
+ if tag is None:
497
+ latest_path = os.path.join(checkpoint_dir, 'latest')
498
+ if os.path.isfile(latest_path):
499
+ with open(latest_path, 'r') as fd:
500
+ tag = fd.read().strip()
501
+ else:
502
+ raise ValueError(f"Unable to find 'latest' file at {latest_path}")
503
+
504
+ ds_checkpoint_dir = os.path.join(checkpoint_dir, tag)
505
+
506
+ if not os.path.isdir(ds_checkpoint_dir):
507
+ raise FileNotFoundError(f"Directory '{ds_checkpoint_dir}' doesn't exist")
508
+
509
+ return _get_fp32_state_dict_from_zero_checkpoint(ds_checkpoint_dir)
510
+
511
+
512
+ def convert_zero_checkpoint_to_fp32_state_dict(checkpoint_dir, output_file, tag=None):
513
+ """
514
+ Convert ZeRO 2 or 3 checkpoint into a single fp32 consolidated ``state_dict`` file that can be
515
+ loaded with ``torch.load(file)`` + ``load_state_dict()`` and used for training without DeepSpeed.
516
+
517
+ Args:
518
+ - ``checkpoint_dir``: path to the desired checkpoint folder. (one that contains the tag-folder, like ``global_step14``)
519
+ - ``output_file``: path to the pytorch fp32 state_dict output file (e.g. path/pytorch_model.bin)
520
+ - ``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``
521
+ """
522
+
523
+ state_dict = get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir, tag)
524
+ print(f"Saving fp32 state dict to {output_file}")
525
+ torch.save(state_dict, output_file)
526
+
527
+
528
+ def load_state_dict_from_zero_checkpoint(model, checkpoint_dir, tag=None):
529
+ """
530
+ 1. Put the provided model to cpu
531
+ 2. Convert ZeRO 2 or 3 checkpoint into a single fp32 consolidated ``state_dict``
532
+ 3. Load it into the provided model
533
+
534
+ Args:
535
+ - ``model``: the model object to update
536
+ - ``checkpoint_dir``: path to the desired checkpoint folder. (one that contains the tag-folder, like ``global_step14``)
537
+ - ``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``
538
+
539
+ Returns:
540
+ - ``model`: modified model
541
+
542
+ Make sure you have plenty of CPU memory available before you call this function. If you don't
543
+ have enough use the ``zero_to_fp32.py`` utility to do the conversion. You will find it
544
+ conveniently placed for you in the checkpoint folder.
545
+
546
+ A typical usage might be ::
547
+
548
+ from deepspeed.utils.zero_to_fp32 import load_state_dict_from_zero_checkpoint
549
+ model = load_state_dict_from_zero_checkpoint(trainer.model, checkpoint_dir)
550
+ # submit to model hub or save the model to share with others
551
+
552
+ Note, that once this was run, the ``model`` will no longer be usable in the deepspeed context
553
+ of the same application. i.e. you will need to re-initialize the deepspeed engine, since
554
+ ``model.load_state_dict(state_dict)`` will remove all the deepspeed magic from it.
555
+
556
+ """
557
+ logger.info(f"Extracting fp32 weights")
558
+ state_dict = get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir, tag)
559
+
560
+ logger.info(f"Overwriting model with fp32 weights")
561
+ model = model.cpu()
562
+ model.load_state_dict(state_dict, strict=False)
563
+
564
+ return model
565
+
566
+
567
+ if __name__ == "__main__":
568
+
569
+ parser = argparse.ArgumentParser()
570
+ parser.add_argument("checkpoint_dir",
571
+ type=str,
572
+ help="path to the desired checkpoint folder, e.g., path/checkpoint-12")
573
+ parser.add_argument(
574
+ "output_file",
575
+ type=str,
576
+ help="path to the pytorch fp32 state_dict output file (e.g. path/checkpoint-12/pytorch_model.bin)")
577
+ parser.add_argument("-t",
578
+ "--tag",
579
+ type=str,
580
+ default=None,
581
+ help="checkpoint tag used as a unique identifier for checkpoint. e.g., global_step1")
582
+ parser.add_argument("-d", "--debug", action='store_true', help="enable debug")
583
+ args = parser.parse_args()
584
+
585
+ debug = args.debug
586
+
587
+ convert_zero_checkpoint_to_fp32_state_dict(args.checkpoint_dir, args.output_file, tag=args.tag)
save_lora_instruct_r8_4e4_s11_1/checkpoint-3500/README.md ADDED
@@ -0,0 +1,202 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ base_model: meta-llama/Llama-2-7b-hf
3
+ library_name: peft
4
+ ---
5
+
6
+ # Model Card for Model ID
7
+
8
+ <!-- Provide a quick summary of what the model is/does. -->
9
+
10
+
11
+
12
+ ## Model Details
13
+
14
+ ### Model Description
15
+
16
+ <!-- Provide a longer summary of what this model is. -->
17
+
18
+
19
+
20
+ - **Developed by:** [More Information Needed]
21
+ - **Funded by [optional]:** [More Information Needed]
22
+ - **Shared by [optional]:** [More Information Needed]
23
+ - **Model type:** [More Information Needed]
24
+ - **Language(s) (NLP):** [More Information Needed]
25
+ - **License:** [More Information Needed]
26
+ - **Finetuned from model [optional]:** [More Information Needed]
27
+
28
+ ### Model Sources [optional]
29
+
30
+ <!-- Provide the basic links for the model. -->
31
+
32
+ - **Repository:** [More Information Needed]
33
+ - **Paper [optional]:** [More Information Needed]
34
+ - **Demo [optional]:** [More Information Needed]
35
+
36
+ ## Uses
37
+
38
+ <!-- Address questions around how the model is intended to be used, including the foreseeable users of the model and those affected by the model. -->
39
+
40
+ ### Direct Use
41
+
42
+ <!-- This section is for the model use without fine-tuning or plugging into a larger ecosystem/app. -->
43
+
44
+ [More Information Needed]
45
+
46
+ ### Downstream Use [optional]
47
+
48
+ <!-- This section is for the model use when fine-tuned for a task, or when plugged into a larger ecosystem/app -->
49
+
50
+ [More Information Needed]
51
+
52
+ ### Out-of-Scope Use
53
+
54
+ <!-- This section addresses misuse, malicious use, and uses that the model will not work well for. -->
55
+
56
+ [More Information Needed]
57
+
58
+ ## Bias, Risks, and Limitations
59
+
60
+ <!-- This section is meant to convey both technical and sociotechnical limitations. -->
61
+
62
+ [More Information Needed]
63
+
64
+ ### Recommendations
65
+
66
+ <!-- This section is meant to convey recommendations with respect to the bias, risk, and technical limitations. -->
67
+
68
+ Users (both direct and downstream) should be made aware of the risks, biases and limitations of the model. More information needed for further recommendations.
69
+
70
+ ## How to Get Started with the Model
71
+
72
+ Use the code below to get started with the model.
73
+
74
+ [More Information Needed]
75
+
76
+ ## Training Details
77
+
78
+ ### Training Data
79
+
80
+ <!-- This should link to a Dataset Card, perhaps with a short stub of information on what the training data is all about as well as documentation related to data pre-processing or additional filtering. -->
81
+
82
+ [More Information Needed]
83
+
84
+ ### Training Procedure
85
+
86
+ <!-- This relates heavily to the Technical Specifications. Content here should link to that section when it is relevant to the training procedure. -->
87
+
88
+ #### Preprocessing [optional]
89
+
90
+ [More Information Needed]
91
+
92
+
93
+ #### Training Hyperparameters
94
+
95
+ - **Training regime:** [More Information Needed] <!--fp32, fp16 mixed precision, bf16 mixed precision, bf16 non-mixed precision, fp16 non-mixed precision, fp8 mixed precision -->
96
+
97
+ #### Speeds, Sizes, Times [optional]
98
+
99
+ <!-- This section provides information about throughput, start/end time, checkpoint size if relevant, etc. -->
100
+
101
+ [More Information Needed]
102
+
103
+ ## Evaluation
104
+
105
+ <!-- This section describes the evaluation protocols and provides the results. -->
106
+
107
+ ### Testing Data, Factors & Metrics
108
+
109
+ #### Testing Data
110
+
111
+ <!-- This should link to a Dataset Card if possible. -->
112
+
113
+ [More Information Needed]
114
+
115
+ #### Factors
116
+
117
+ <!-- These are the things the evaluation is disaggregating by, e.g., subpopulations or domains. -->
118
+
119
+ [More Information Needed]
120
+
121
+ #### Metrics
122
+
123
+ <!-- These are the evaluation metrics being used, ideally with a description of why. -->
124
+
125
+ [More Information Needed]
126
+
127
+ ### Results
128
+
129
+ [More Information Needed]
130
+
131
+ #### Summary
132
+
133
+
134
+
135
+ ## Model Examination [optional]
136
+
137
+ <!-- Relevant interpretability work for the model goes here -->
138
+
139
+ [More Information Needed]
140
+
141
+ ## Environmental Impact
142
+
143
+ <!-- Total emissions (in grams of CO2eq) and additional considerations, such as electricity usage, go here. Edit the suggested text below accordingly -->
144
+
145
+ Carbon emissions can be estimated using the [Machine Learning Impact calculator](https://mlco2.github.io/impact#compute) presented in [Lacoste et al. (2019)](https://arxiv.org/abs/1910.09700).
146
+
147
+ - **Hardware Type:** [More Information Needed]
148
+ - **Hours used:** [More Information Needed]
149
+ - **Cloud Provider:** [More Information Needed]
150
+ - **Compute Region:** [More Information Needed]
151
+ - **Carbon Emitted:** [More Information Needed]
152
+
153
+ ## Technical Specifications [optional]
154
+
155
+ ### Model Architecture and Objective
156
+
157
+ [More Information Needed]
158
+
159
+ ### Compute Infrastructure
160
+
161
+ [More Information Needed]
162
+
163
+ #### Hardware
164
+
165
+ [More Information Needed]
166
+
167
+ #### Software
168
+
169
+ [More Information Needed]
170
+
171
+ ## Citation [optional]
172
+
173
+ <!-- If there is a paper or blog post introducing the model, the APA and Bibtex information for that should go in this section. -->
174
+
175
+ **BibTeX:**
176
+
177
+ [More Information Needed]
178
+
179
+ **APA:**
180
+
181
+ [More Information Needed]
182
+
183
+ ## Glossary [optional]
184
+
185
+ <!-- If relevant, include terms and calculations in this section that can help readers understand the model or model card. -->
186
+
187
+ [More Information Needed]
188
+
189
+ ## More Information [optional]
190
+
191
+ [More Information Needed]
192
+
193
+ ## Model Card Authors [optional]
194
+
195
+ [More Information Needed]
196
+
197
+ ## Model Card Contact
198
+
199
+ [More Information Needed]
200
+ ### Framework versions
201
+
202
+ - PEFT 0.9.0
save_lora_instruct_r8_4e4_s11_1/checkpoint-3500/adapter_config.json ADDED
@@ -0,0 +1,35 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "alpha_pattern": {},
3
+ "auto_mapping": null,
4
+ "base_model_name_or_path": "meta-llama/Llama-2-7b-hf",
5
+ "bias": "none",
6
+ "fan_in_fan_out": false,
7
+ "inference_mode": true,
8
+ "init_lora_weights": true,
9
+ "layers_pattern": null,
10
+ "layers_to_transform": null,
11
+ "loftq_config": {},
12
+ "lora_alpha": 16,
13
+ "lora_dropout": 0.05,
14
+ "megatron_config": null,
15
+ "megatron_core": "megatron.core",
16
+ "modules_to_save": null,
17
+ "mora_type": 1,
18
+ "peft_type": "LORA",
19
+ "r": 8,
20
+ "rank_pattern": {},
21
+ "revision": null,
22
+ "target_modules": [
23
+ "q_proj",
24
+ "k_proj",
25
+ "v_proj",
26
+ "o_proj",
27
+ "gate_proj",
28
+ "down_proj",
29
+ "up_proj"
30
+ ],
31
+ "task_type": "CAUSAL_LM",
32
+ "use_dora": false,
33
+ "use_mora": false,
34
+ "use_rslora": false
35
+ }
save_lora_instruct_r8_4e4_s11_1/checkpoint-3500/adapter_model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:314c9406340ddc3077b70bbc3d2fcace468611bc56918c2090fee77bedbe7876
3
+ size 564342240