初始化项目,由ModelHub XC社区提供模型
Model: pmahdavi/Llama-3.1-8B-math-reasoning Source: Original Platform
This commit is contained in:
37
.gitattributes
vendored
Normal file
37
.gitattributes
vendored
Normal file
@@ -0,0 +1,37 @@
|
||||
*.7z filter=lfs diff=lfs merge=lfs -text
|
||||
*.arrow filter=lfs diff=lfs merge=lfs -text
|
||||
*.bin filter=lfs diff=lfs merge=lfs -text
|
||||
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
||||
*.ckpt filter=lfs diff=lfs merge=lfs -text
|
||||
*.ftz filter=lfs diff=lfs merge=lfs -text
|
||||
*.gz filter=lfs diff=lfs merge=lfs -text
|
||||
*.h5 filter=lfs diff=lfs merge=lfs -text
|
||||
*.joblib filter=lfs diff=lfs merge=lfs -text
|
||||
*.lfs.* filter=lfs diff=lfs merge=lfs -text
|
||||
*.mlmodel filter=lfs diff=lfs merge=lfs -text
|
||||
*.model filter=lfs diff=lfs merge=lfs -text
|
||||
*.msgpack filter=lfs diff=lfs merge=lfs -text
|
||||
*.npy filter=lfs diff=lfs merge=lfs -text
|
||||
*.npz filter=lfs diff=lfs merge=lfs -text
|
||||
*.onnx filter=lfs diff=lfs merge=lfs -text
|
||||
*.ot filter=lfs diff=lfs merge=lfs -text
|
||||
*.parquet filter=lfs diff=lfs merge=lfs -text
|
||||
*.pb filter=lfs diff=lfs merge=lfs -text
|
||||
*.pickle filter=lfs diff=lfs merge=lfs -text
|
||||
*.pkl filter=lfs diff=lfs merge=lfs -text
|
||||
*.pt filter=lfs diff=lfs merge=lfs -text
|
||||
*.pth filter=lfs diff=lfs merge=lfs -text
|
||||
*.rar filter=lfs diff=lfs merge=lfs -text
|
||||
*.safetensors filter=lfs diff=lfs merge=lfs -text
|
||||
saved_model/**/* filter=lfs diff=lfs merge=lfs -text
|
||||
*.tar.* filter=lfs diff=lfs merge=lfs -text
|
||||
*.tar filter=lfs diff=lfs merge=lfs -text
|
||||
*.tflite filter=lfs diff=lfs merge=lfs -text
|
||||
*.tgz filter=lfs diff=lfs merge=lfs -text
|
||||
*.wasm filter=lfs diff=lfs merge=lfs -text
|
||||
*.xz filter=lfs diff=lfs merge=lfs -text
|
||||
*.zip filter=lfs diff=lfs merge=lfs -text
|
||||
*.zst filter=lfs diff=lfs merge=lfs -text
|
||||
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
||||
tokenizer.json filter=lfs diff=lfs merge=lfs -text
|
||||
export/fisher_diag_s1024_bs128 filter=lfs diff=lfs merge=lfs -text
|
||||
40
README.md
Normal file
40
README.md
Normal file
@@ -0,0 +1,40 @@
|
||||
---
|
||||
language:
|
||||
- en
|
||||
license: cc-by-nc-4.0
|
||||
library_name: transformers
|
||||
tags:
|
||||
- llama
|
||||
- math
|
||||
- reasoning
|
||||
- fine-tuned
|
||||
- fine-tuning
|
||||
pipeline_tag: text-generation
|
||||
model-index:
|
||||
- name: Llama-3.1-8B-math-reasoning
|
||||
results:
|
||||
- task:
|
||||
type: text-generation
|
||||
name: Text Generation
|
||||
dataset:
|
||||
name: tulu3_mixture_math_reasoning
|
||||
type: custom
|
||||
metrics:
|
||||
- name: Training Loss
|
||||
type: loss
|
||||
value: 0.98
|
||||
base_model: meta-llama/Llama-3.1-8B
|
||||
---
|
||||
|
||||
# Llama-3.1-8B Math Reasoning Model
|
||||
|
||||
Llama-3.1-8B SFT checkpoints for mathematical reasoning—artifacts of https://arxiv.org/abs/2509.11167.
|
||||
|
||||
## Model Details
|
||||
- Base model: Llama-3.1-8B
|
||||
- Training dataset: tulu3_mixture_math_reasoning
|
||||
- Learning rate: 5e-06
|
||||
- Effective batch size: 128
|
||||
|
||||
## Export Files
|
||||
This repository includes export files for state averaging and other advanced techniques.
|
||||
35
config.json
Normal file
35
config.json
Normal file
@@ -0,0 +1,35 @@
|
||||
{
|
||||
"architectures": [
|
||||
"LlamaForCausalLM"
|
||||
],
|
||||
"attention_bias": false,
|
||||
"attention_dropout": 0.0,
|
||||
"bos_token_id": 128000,
|
||||
"eos_token_id": 128001,
|
||||
"head_dim": 128,
|
||||
"hidden_act": "silu",
|
||||
"hidden_size": 4096,
|
||||
"initializer_range": 0.02,
|
||||
"intermediate_size": 14336,
|
||||
"max_position_embeddings": 131072,
|
||||
"mlp_bias": false,
|
||||
"model_type": "llama",
|
||||
"num_attention_heads": 32,
|
||||
"num_hidden_layers": 32,
|
||||
"num_key_value_heads": 8,
|
||||
"pretraining_tp": 1,
|
||||
"rms_norm_eps": 1e-05,
|
||||
"rope_scaling": {
|
||||
"factor": 8.0,
|
||||
"high_freq_factor": 4.0,
|
||||
"low_freq_factor": 1.0,
|
||||
"original_max_position_embeddings": 8192,
|
||||
"rope_type": "llama3"
|
||||
},
|
||||
"rope_theta": 500000.0,
|
||||
"tie_word_embeddings": false,
|
||||
"torch_dtype": "bfloat16",
|
||||
"transformers_version": "4.51.1",
|
||||
"use_cache": false,
|
||||
"vocab_size": 128256
|
||||
}
|
||||
3
export/exp_avg_sq.safetensors
Normal file
3
export/exp_avg_sq.safetensors
Normal file
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:7405283afff5029525473d2d3ad1950dbd0718e6f390c66ed8624fb710770bd6
|
||||
size 32121079000
|
||||
3
export/fisher_diag_s1024_bs128.safetensors
Normal file
3
export/fisher_diag_s1024_bs128.safetensors
Normal file
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:39d45410ab21f3b2c0ef663242a6cd0624cc6bdfb84c413b7457818ce0554b9a
|
||||
size 32121079000
|
||||
9
generation_config.json
Normal file
9
generation_config.json
Normal file
@@ -0,0 +1,9 @@
|
||||
{
|
||||
"_from_model_config": true,
|
||||
"bos_token_id": 128000,
|
||||
"do_sample": true,
|
||||
"eos_token_id": 128001,
|
||||
"temperature": 0.6,
|
||||
"top_p": 0.9,
|
||||
"transformers_version": "4.51.1"
|
||||
}
|
||||
3
model-00001-of-00004.safetensors
Normal file
3
model-00001-of-00004.safetensors
Normal file
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:0fd5acd6e64a858c03f4f6ea113648840e460f46d5490bf86658c2c0d270d04d
|
||||
size 4976698672
|
||||
3
model-00002-of-00004.safetensors
Normal file
3
model-00002-of-00004.safetensors
Normal file
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:bed0a9fe97913ee2b744383007af15b2fccc3621fbcdd6df7d6abe5dd4a2cf5a
|
||||
size 4999802720
|
||||
3
model-00003-of-00004.safetensors
Normal file
3
model-00003-of-00004.safetensors
Normal file
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:71833cfaa3c89f5f666ed45590ad4deb7adcf7eaeca0697dae091f16e8261c8a
|
||||
size 4915916176
|
||||
3
model-00004-of-00004.safetensors
Normal file
3
model-00004-of-00004.safetensors
Normal file
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:a413f4ba2f4d6e40445ca4f5645426a4ea8563bbe0314788abc22cb1b530ea38
|
||||
size 1168138808
|
||||
298
model.safetensors.index.json
Normal file
298
model.safetensors.index.json
Normal file
@@ -0,0 +1,298 @@
|
||||
{
|
||||
"metadata": {
|
||||
"total_size": 16060522496
|
||||
},
|
||||
"weight_map": {
|
||||
"lm_head.weight": "model-00004-of-00004.safetensors",
|
||||
"model.embed_tokens.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.0.input_layernorm.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.0.mlp.down_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.0.mlp.gate_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.0.mlp.up_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.0.post_attention_layernorm.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.0.self_attn.k_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.0.self_attn.o_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.0.self_attn.q_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.0.self_attn.v_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.1.input_layernorm.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.1.mlp.down_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.1.mlp.gate_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.1.mlp.up_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.1.post_attention_layernorm.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.1.self_attn.k_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.1.self_attn.o_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.1.self_attn.q_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.1.self_attn.v_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.10.input_layernorm.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.10.mlp.down_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.10.mlp.gate_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.10.mlp.up_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.10.post_attention_layernorm.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.10.self_attn.k_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.10.self_attn.o_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.10.self_attn.q_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.10.self_attn.v_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.11.input_layernorm.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.11.mlp.down_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.11.mlp.gate_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.11.mlp.up_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.11.post_attention_layernorm.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.11.self_attn.k_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.11.self_attn.o_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.11.self_attn.q_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.11.self_attn.v_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.12.input_layernorm.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.12.mlp.down_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.12.mlp.gate_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.12.mlp.up_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.12.post_attention_layernorm.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.12.self_attn.k_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.12.self_attn.o_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.12.self_attn.q_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.12.self_attn.v_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.13.input_layernorm.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.13.mlp.down_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.13.mlp.gate_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.13.mlp.up_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.13.post_attention_layernorm.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.13.self_attn.k_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.13.self_attn.o_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.13.self_attn.q_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.13.self_attn.v_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.14.input_layernorm.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.14.mlp.down_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.14.mlp.gate_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.14.mlp.up_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.14.post_attention_layernorm.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.14.self_attn.k_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.14.self_attn.o_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.14.self_attn.q_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.14.self_attn.v_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.15.input_layernorm.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.15.mlp.down_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.15.mlp.gate_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.15.mlp.up_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.15.post_attention_layernorm.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.15.self_attn.k_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.15.self_attn.o_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.15.self_attn.q_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.15.self_attn.v_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.16.input_layernorm.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.16.mlp.down_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.16.mlp.gate_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.16.mlp.up_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.16.post_attention_layernorm.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.16.self_attn.k_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.16.self_attn.o_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.16.self_attn.q_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.16.self_attn.v_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.17.input_layernorm.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.17.mlp.down_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.17.mlp.gate_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.17.mlp.up_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.17.post_attention_layernorm.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.17.self_attn.k_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.17.self_attn.o_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.17.self_attn.q_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.17.self_attn.v_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.18.input_layernorm.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.18.mlp.down_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.18.mlp.gate_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.18.mlp.up_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.18.post_attention_layernorm.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.18.self_attn.k_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.18.self_attn.o_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.18.self_attn.q_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.18.self_attn.v_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.19.input_layernorm.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.19.mlp.down_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.19.mlp.gate_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.19.mlp.up_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.19.post_attention_layernorm.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.19.self_attn.k_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.19.self_attn.o_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.19.self_attn.q_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.19.self_attn.v_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.2.input_layernorm.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.2.mlp.down_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.2.mlp.gate_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.2.mlp.up_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.2.post_attention_layernorm.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.2.self_attn.k_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.2.self_attn.o_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.2.self_attn.q_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.2.self_attn.v_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.20.input_layernorm.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.20.mlp.down_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.20.mlp.gate_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.20.mlp.up_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.20.post_attention_layernorm.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.20.self_attn.k_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.20.self_attn.o_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.20.self_attn.q_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.20.self_attn.v_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.21.input_layernorm.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.21.mlp.down_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.21.mlp.gate_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.21.mlp.up_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.21.post_attention_layernorm.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.21.self_attn.k_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.21.self_attn.o_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.21.self_attn.q_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.21.self_attn.v_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.22.input_layernorm.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.22.mlp.down_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.22.mlp.gate_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.22.mlp.up_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.22.post_attention_layernorm.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.22.self_attn.k_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.22.self_attn.o_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.22.self_attn.q_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.22.self_attn.v_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.23.input_layernorm.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.23.mlp.down_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.23.mlp.gate_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.23.mlp.up_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.23.post_attention_layernorm.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.23.self_attn.k_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.23.self_attn.o_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.23.self_attn.q_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.23.self_attn.v_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.24.input_layernorm.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.24.mlp.down_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.24.mlp.gate_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.24.mlp.up_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.24.post_attention_layernorm.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.24.self_attn.k_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.24.self_attn.o_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.24.self_attn.q_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.24.self_attn.v_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.25.input_layernorm.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.25.mlp.down_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.25.mlp.gate_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.25.mlp.up_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.25.post_attention_layernorm.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.25.self_attn.k_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.25.self_attn.o_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.25.self_attn.q_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.25.self_attn.v_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.26.input_layernorm.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.26.mlp.down_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.26.mlp.gate_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.26.mlp.up_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.26.post_attention_layernorm.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.26.self_attn.k_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.26.self_attn.o_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.26.self_attn.q_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.26.self_attn.v_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.27.input_layernorm.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.27.mlp.down_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.27.mlp.gate_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.27.mlp.up_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.27.post_attention_layernorm.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.27.self_attn.k_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.27.self_attn.o_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.27.self_attn.q_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.27.self_attn.v_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.28.input_layernorm.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.28.mlp.down_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.28.mlp.gate_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.28.mlp.up_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.28.post_attention_layernorm.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.28.self_attn.k_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.28.self_attn.o_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.28.self_attn.q_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.28.self_attn.v_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.29.input_layernorm.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.29.mlp.down_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.29.mlp.gate_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.29.mlp.up_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.29.post_attention_layernorm.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.29.self_attn.k_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.29.self_attn.o_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.29.self_attn.q_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.29.self_attn.v_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.3.input_layernorm.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.3.mlp.down_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.3.mlp.gate_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.3.mlp.up_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.3.post_attention_layernorm.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.3.self_attn.k_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.3.self_attn.o_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.3.self_attn.q_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.3.self_attn.v_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.30.input_layernorm.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.30.mlp.down_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.30.mlp.gate_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.30.mlp.up_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.30.post_attention_layernorm.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.30.self_attn.k_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.30.self_attn.o_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.30.self_attn.q_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.30.self_attn.v_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.31.input_layernorm.weight": "model-00004-of-00004.safetensors",
|
||||
"model.layers.31.mlp.down_proj.weight": "model-00004-of-00004.safetensors",
|
||||
"model.layers.31.mlp.gate_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.31.mlp.up_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.31.post_attention_layernorm.weight": "model-00004-of-00004.safetensors",
|
||||
"model.layers.31.self_attn.k_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.31.self_attn.o_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.31.self_attn.q_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.31.self_attn.v_proj.weight": "model-00003-of-00004.safetensors",
|
||||
"model.layers.4.input_layernorm.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.4.mlp.down_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.4.mlp.gate_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.4.mlp.up_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.4.post_attention_layernorm.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.4.self_attn.k_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.4.self_attn.o_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.4.self_attn.q_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.4.self_attn.v_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.5.input_layernorm.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.5.mlp.down_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.5.mlp.gate_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.5.mlp.up_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.5.post_attention_layernorm.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.5.self_attn.k_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.5.self_attn.o_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.5.self_attn.q_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.5.self_attn.v_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.6.input_layernorm.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.6.mlp.down_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.6.mlp.gate_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.6.mlp.up_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.6.post_attention_layernorm.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.6.self_attn.k_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.6.self_attn.o_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.6.self_attn.q_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.6.self_attn.v_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.7.input_layernorm.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.7.mlp.down_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.7.mlp.gate_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.7.mlp.up_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.7.post_attention_layernorm.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.7.self_attn.k_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.7.self_attn.o_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.7.self_attn.q_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.7.self_attn.v_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.8.input_layernorm.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.8.mlp.down_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.8.mlp.gate_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.8.mlp.up_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.8.post_attention_layernorm.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.8.self_attn.k_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.8.self_attn.o_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.8.self_attn.q_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.8.self_attn.v_proj.weight": "model-00001-of-00004.safetensors",
|
||||
"model.layers.9.input_layernorm.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.9.mlp.down_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.9.mlp.gate_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.9.mlp.up_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.9.post_attention_layernorm.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.9.self_attn.k_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.9.self_attn.o_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.9.self_attn.q_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.layers.9.self_attn.v_proj.weight": "model-00002-of-00004.safetensors",
|
||||
"model.norm.weight": "model-00004-of-00004.safetensors"
|
||||
}
|
||||
}
|
||||
3
model_states/zero_pp_rank_0_mp_rank_00_model_states.pt
Normal file
3
model_states/zero_pp_rank_0_mp_rank_00_model_states.pt
Normal file
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:13e9027e57814ec0791d85fb6e0c13f67d2461b11b75a3f2efb2add678086af3
|
||||
size 149093
|
||||
3
model_states/zero_pp_rank_1_mp_rank_00_model_states.pt
Normal file
3
model_states/zero_pp_rank_1_mp_rank_00_model_states.pt
Normal file
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:19dea9ae0a8ae4b7e7bc309dc4c891fb47b6f867472549cfb3cd18b6b9c0a65a
|
||||
size 149093
|
||||
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:58a78efc0f0c86390162f96d75c96b8b52b99caa192991a70c3364a444d60180
|
||||
size 48181576422
|
||||
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:4c1050afebe62b89eb89a77726d937696d26ca1b40aebc303f014014274c4f21
|
||||
size 48181576422
|
||||
3
rng_state_0.pth
Normal file
3
rng_state_0.pth
Normal file
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:c8d6a959372d5e0c2ea025dd26c9d0ad2046fce19352056cae8074dcbd0a6fd4
|
||||
size 14512
|
||||
3
rng_state_1.pth
Normal file
3
rng_state_1.pth
Normal file
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:0f68a37892a1b445d21bb35cc10bf7a058a6f9ec8c363f5ed156ff4f49d90fb6
|
||||
size 14512
|
||||
3
scheduler.pt
Normal file
3
scheduler.pt
Normal file
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:f16f961c3f197fbf3216e525b1ca804e744dad807f640db5df9896d40ce12ae0
|
||||
size 1064
|
||||
17
special_tokens_map.json
Normal file
17
special_tokens_map.json
Normal file
@@ -0,0 +1,17 @@
|
||||
{
|
||||
"bos_token": {
|
||||
"content": "<|begin_of_text|>",
|
||||
"lstrip": false,
|
||||
"normalized": false,
|
||||
"rstrip": false,
|
||||
"single_word": false
|
||||
},
|
||||
"eos_token": {
|
||||
"content": "<|end_of_text|>",
|
||||
"lstrip": false,
|
||||
"normalized": false,
|
||||
"rstrip": false,
|
||||
"single_word": false
|
||||
},
|
||||
"pad_token": "<|end_of_text|>"
|
||||
}
|
||||
BIN
tokenizer.json
(Stored with Git LFS)
Normal file
BIN
tokenizer.json
(Stored with Git LFS)
Normal file
Binary file not shown.
2066
tokenizer_config.json
Normal file
2066
tokenizer_config.json
Normal file
File diff suppressed because it is too large
Load Diff
245
trainer_log.jsonl
Normal file
245
trainer_log.jsonl
Normal file
@@ -0,0 +1,245 @@
|
||||
{"current_steps": 10, "total_steps": 2611, "loss": 0.596, "lr": 5.69620253164557e-07, "epoch": 0.0038294460466953076, "percentage": 0.38, "elapsed_time": "0:11:30", "remaining_time": "2 days, 1:55:10"}
|
||||
{"current_steps": 20, "total_steps": 2611, "loss": 0.4935, "lr": 1.2025316455696204e-06, "epoch": 0.007658892093390615, "percentage": 0.77, "elapsed_time": "0:23:03", "remaining_time": "2 days, 1:47:45"}
|
||||
{"current_steps": 30, "total_steps": 2611, "loss": 0.4179, "lr": 1.8354430379746838e-06, "epoch": 0.011488338140085923, "percentage": 1.15, "elapsed_time": "0:34:44", "remaining_time": "2 days, 1:49:23"}
|
||||
{"current_steps": 40, "total_steps": 2611, "loss": 0.3786, "lr": 2.4683544303797473e-06, "epoch": 0.01531778418678123, "percentage": 1.53, "elapsed_time": "0:46:14", "remaining_time": "2 days, 1:32:39"}
|
||||
{"current_steps": 50, "total_steps": 2611, "loss": 0.3645, "lr": 3.10126582278481e-06, "epoch": 0.019147230233476538, "percentage": 1.91, "elapsed_time": "0:57:38", "remaining_time": "2 days, 1:12:09"}
|
||||
{"current_steps": 60, "total_steps": 2611, "loss": 0.3472, "lr": 3.7341772151898737e-06, "epoch": 0.022976676280171845, "percentage": 2.3, "elapsed_time": "1:09:08", "remaining_time": "2 days, 0:59:58"}
|
||||
{"current_steps": 70, "total_steps": 2611, "loss": 0.3234, "lr": 4.367088607594937e-06, "epoch": 0.026806122326867153, "percentage": 2.68, "elapsed_time": "1:20:48", "remaining_time": "2 days, 0:53:20"}
|
||||
{"current_steps": 80, "total_steps": 2611, "loss": 0.3273, "lr": 5e-06, "epoch": 0.03063556837356246, "percentage": 3.06, "elapsed_time": "1:32:32", "remaining_time": "2 days, 0:47:55"}
|
||||
{"current_steps": 90, "total_steps": 2611, "loss": 0.3269, "lr": 4.999807568225742e-06, "epoch": 0.03446501442025777, "percentage": 3.45, "elapsed_time": "1:44:14", "remaining_time": "2 days, 0:39:56"}
|
||||
{"current_steps": 100, "total_steps": 2611, "loss": 0.338, "lr": 4.999230302526956e-06, "epoch": 0.038294460466953076, "percentage": 3.83, "elapsed_time": "1:55:56", "remaining_time": "2 days, 0:31:22"}
|
||||
{"current_steps": 110, "total_steps": 2611, "loss": 0.3232, "lr": 4.998268291771053e-06, "epoch": 0.04212390651364838, "percentage": 4.21, "elapsed_time": "2:07:32", "remaining_time": "2 days, 0:19:45"}
|
||||
{"current_steps": 120, "total_steps": 2611, "loss": 0.3239, "lr": 4.9969216840551815e-06, "epoch": 0.04595335256034369, "percentage": 4.6, "elapsed_time": "2:19:09", "remaining_time": "2 days, 0:08:34"}
|
||||
{"current_steps": 130, "total_steps": 2611, "loss": 0.3164, "lr": 4.995190686683432e-06, "epoch": 0.049782798607039, "percentage": 4.98, "elapsed_time": "2:30:39", "remaining_time": "1 day, 23:55:23"}
|
||||
{"current_steps": 140, "total_steps": 2611, "loss": 0.3227, "lr": 4.9930755661349215e-06, "epoch": 0.053612244653734306, "percentage": 5.36, "elapsed_time": "2:42:09", "remaining_time": "1 day, 23:42:00"}
|
||||
{"current_steps": 150, "total_steps": 2611, "loss": 0.3136, "lr": 4.990576648022768e-06, "epoch": 0.057441690700429614, "percentage": 5.74, "elapsed_time": "2:53:40", "remaining_time": "1 day, 23:29:22"}
|
||||
{"current_steps": 160, "total_steps": 2611, "loss": 0.3033, "lr": 4.98769431704397e-06, "epoch": 0.06127113674712492, "percentage": 6.13, "elapsed_time": "3:05:16", "remaining_time": "1 day, 23:18:16"}
|
||||
{"current_steps": 170, "total_steps": 2611, "loss": 0.3231, "lr": 4.984429016920178e-06, "epoch": 0.06510058279382024, "percentage": 6.51, "elapsed_time": "3:16:53", "remaining_time": "1 day, 23:07:01"}
|
||||
{"current_steps": 180, "total_steps": 2611, "loss": 0.309, "lr": 4.980781250329389e-06, "epoch": 0.06893002884051554, "percentage": 6.89, "elapsed_time": "3:28:22", "remaining_time": "1 day, 22:54:17"}
|
||||
{"current_steps": 190, "total_steps": 2611, "loss": 0.3122, "lr": 4.976751578828562e-06, "epoch": 0.07275947488721085, "percentage": 7.28, "elapsed_time": "3:39:52", "remaining_time": "1 day, 22:41:38"}
|
||||
{"current_steps": 200, "total_steps": 2611, "loss": 0.3109, "lr": 4.9723406227671645e-06, "epoch": 0.07658892093390615, "percentage": 7.66, "elapsed_time": "3:51:19", "remaining_time": "1 day, 22:28:32"}
|
||||
{"current_steps": 210, "total_steps": 2611, "loss": 0.3118, "lr": 4.967549061191679e-06, "epoch": 0.08041836698060147, "percentage": 8.04, "elapsed_time": "4:03:05", "remaining_time": "1 day, 22:19:15"}
|
||||
{"current_steps": 220, "total_steps": 2611, "loss": 0.306, "lr": 4.962377631741061e-06, "epoch": 0.08424781302729677, "percentage": 8.43, "elapsed_time": "4:14:32", "remaining_time": "1 day, 22:06:28"}
|
||||
{"current_steps": 230, "total_steps": 2611, "loss": 0.3135, "lr": 4.956827130533185e-06, "epoch": 0.08807725907399208, "percentage": 8.81, "elapsed_time": "4:26:03", "remaining_time": "1 day, 21:54:12"}
|
||||
{"current_steps": 240, "total_steps": 2611, "loss": 0.302, "lr": 4.95089841204229e-06, "epoch": 0.09190670512068738, "percentage": 9.19, "elapsed_time": "4:37:36", "remaining_time": "1 day, 21:42:31"}
|
||||
{"current_steps": 250, "total_steps": 2611, "loss": 0.303, "lr": 4.9445923889674285e-06, "epoch": 0.0957361511673827, "percentage": 9.57, "elapsed_time": "4:49:10", "remaining_time": "1 day, 21:30:53"}
|
||||
{"current_steps": 260, "total_steps": 2611, "loss": 0.3009, "lr": 4.937910032091968e-06, "epoch": 0.099565597214078, "percentage": 9.96, "elapsed_time": "5:00:36", "remaining_time": "1 day, 21:18:15"}
|
||||
{"current_steps": 270, "total_steps": 2611, "loss": 0.305, "lr": 4.9308523701341415e-06, "epoch": 0.10339504326077331, "percentage": 10.34, "elapsed_time": "5:12:11", "remaining_time": "1 day, 21:06:49"}
|
||||
{"current_steps": 280, "total_steps": 2611, "loss": 0.3005, "lr": 4.923420489588677e-06, "epoch": 0.10722448930746861, "percentage": 10.72, "elapsed_time": "5:23:56", "remaining_time": "1 day, 20:56:52"}
|
||||
{"current_steps": 290, "total_steps": 2611, "loss": 0.3036, "lr": 4.915615534559545e-06, "epoch": 0.11105393535416393, "percentage": 11.11, "elapsed_time": "5:35:37", "remaining_time": "1 day, 20:46:06"}
|
||||
{"current_steps": 300, "total_steps": 2611, "loss": 0.2997, "lr": 4.907438706583818e-06, "epoch": 0.11488338140085923, "percentage": 11.49, "elapsed_time": "5:47:13", "remaining_time": "1 day, 20:34:45"}
|
||||
{"current_steps": 310, "total_steps": 2611, "loss": 0.2984, "lr": 4.898891264446709e-06, "epoch": 0.11871282744755454, "percentage": 11.87, "elapsed_time": "5:58:42", "remaining_time": "1 day, 20:22:34"}
|
||||
{"current_steps": 320, "total_steps": 2611, "loss": 0.3037, "lr": 4.889974523987784e-06, "epoch": 0.12254227349424984, "percentage": 12.26, "elapsed_time": "6:10:14", "remaining_time": "1 day, 20:10:39"}
|
||||
{"current_steps": 330, "total_steps": 2611, "loss": 0.2907, "lr": 4.880689857898392e-06, "epoch": 0.12637171954094514, "percentage": 12.64, "elapsed_time": "6:21:51", "remaining_time": "1 day, 19:59:30"}
|
||||
{"current_steps": 340, "total_steps": 2611, "loss": 0.3035, "lr": 4.871038695510347e-06, "epoch": 0.13020116558764047, "percentage": 13.02, "elapsed_time": "6:33:30", "remaining_time": "1 day, 19:48:23"}
|
||||
{"current_steps": 350, "total_steps": 2611, "loss": 0.2917, "lr": 4.861022522575892e-06, "epoch": 0.13403061163433577, "percentage": 13.4, "elapsed_time": "6:45:03", "remaining_time": "1 day, 19:36:39"}
|
||||
{"current_steps": 360, "total_steps": 2611, "loss": 0.3019, "lr": 4.850642881038969e-06, "epoch": 0.13786005768103107, "percentage": 13.79, "elapsed_time": "6:56:27", "remaining_time": "1 day, 19:24:02"}
|
||||
{"current_steps": 370, "total_steps": 2611, "loss": 0.2987, "lr": 4.839901368797849e-06, "epoch": 0.14168950372772637, "percentage": 14.17, "elapsed_time": "7:07:59", "remaining_time": "1 day, 19:12:14"}
|
||||
{"current_steps": 380, "total_steps": 2611, "loss": 0.2996, "lr": 4.828799639459139e-06, "epoch": 0.1455189497744217, "percentage": 14.55, "elapsed_time": "7:19:31", "remaining_time": "1 day, 19:00:30"}
|
||||
{"current_steps": 390, "total_steps": 2611, "loss": 0.2958, "lr": 4.817339402083217e-06, "epoch": 0.149348395821117, "percentage": 14.94, "elapsed_time": "7:31:10", "remaining_time": "1 day, 18:49:24"}
|
||||
{"current_steps": 400, "total_steps": 2611, "loss": 0.2923, "lr": 4.805522420921132e-06, "epoch": 0.1531778418678123, "percentage": 15.32, "elapsed_time": "7:42:40", "remaining_time": "1 day, 18:37:26"}
|
||||
{"current_steps": 410, "total_steps": 2611, "loss": 0.2955, "lr": 4.793350515143007e-06, "epoch": 0.1570072879145076, "percentage": 15.7, "elapsed_time": "7:54:19", "remaining_time": "1 day, 18:26:18"}
|
||||
{"current_steps": 420, "total_steps": 2611, "loss": 0.3021, "lr": 4.780825558557981e-06, "epoch": 0.16083673396120293, "percentage": 16.09, "elapsed_time": "8:05:54", "remaining_time": "1 day, 18:14:51"}
|
||||
{"current_steps": 430, "total_steps": 2611, "loss": 0.3004, "lr": 4.767949479325749e-06, "epoch": 0.16466618000789823, "percentage": 16.47, "elapsed_time": "8:17:21", "remaining_time": "1 day, 18:02:40"}
|
||||
{"current_steps": 440, "total_steps": 2611, "loss": 0.2966, "lr": 4.754724259659727e-06, "epoch": 0.16849562605459353, "percentage": 16.85, "elapsed_time": "8:28:56", "remaining_time": "1 day, 17:51:11"}
|
||||
{"current_steps": 450, "total_steps": 2611, "loss": 0.2985, "lr": 4.741151935521906e-06, "epoch": 0.17232507210128883, "percentage": 17.23, "elapsed_time": "8:40:31", "remaining_time": "1 day, 17:39:39"}
|
||||
{"current_steps": 460, "total_steps": 2611, "loss": 0.3036, "lr": 4.727234596309417e-06, "epoch": 0.17615451814798416, "percentage": 17.62, "elapsed_time": "8:52:04", "remaining_time": "1 day, 17:28:01"}
|
||||
{"current_steps": 470, "total_steps": 2611, "loss": 0.3001, "lr": 4.71297438453288e-06, "epoch": 0.17998396419467946, "percentage": 18.0, "elapsed_time": "9:03:35", "remaining_time": "1 day, 17:16:14"}
|
||||
{"current_steps": 480, "total_steps": 2611, "loss": 0.2925, "lr": 4.69837349548658e-06, "epoch": 0.18381341024137476, "percentage": 18.38, "elapsed_time": "9:15:11", "remaining_time": "1 day, 17:04:48"}
|
||||
{"current_steps": 490, "total_steps": 2611, "loss": 0.2939, "lr": 4.683434176910503e-06, "epoch": 0.1876428562880701, "percentage": 18.77, "elapsed_time": "9:26:44", "remaining_time": "1 day, 16:53:11"}
|
||||
{"current_steps": 500, "total_steps": 2611, "loss": 0.2804, "lr": 4.668158728644315e-06, "epoch": 0.1914723023347654, "percentage": 19.15, "elapsed_time": "9:38:20", "remaining_time": "1 day, 16:41:46"}
|
||||
{"current_steps": 510, "total_steps": 2611, "loss": 0.2922, "lr": 4.652549502273305e-06, "epoch": 0.1953017483814607, "percentage": 19.53, "elapsed_time": "9:49:52", "remaining_time": "1 day, 16:30:01"}
|
||||
{"current_steps": 520, "total_steps": 2611, "loss": 0.2891, "lr": 4.636608900766372e-06, "epoch": 0.199131194428156, "percentage": 19.92, "elapsed_time": "10:01:23", "remaining_time": "1 day, 16:18:16"}
|
||||
{"current_steps": 530, "total_steps": 2611, "loss": 0.2809, "lr": 4.620339378106103e-06, "epoch": 0.20296064047485132, "percentage": 20.3, "elapsed_time": "10:13:03", "remaining_time": "1 day, 16:07:06"}
|
||||
{"current_steps": 540, "total_steps": 2611, "loss": 0.2983, "lr": 4.6037434389109855e-06, "epoch": 0.20679008652154662, "percentage": 20.68, "elapsed_time": "10:24:37", "remaining_time": "1 day, 15:55:34"}
|
||||
{"current_steps": 550, "total_steps": 2611, "loss": 0.2903, "lr": 4.586823638049841e-06, "epoch": 0.21061953256824192, "percentage": 21.06, "elapsed_time": "10:36:12", "remaining_time": "1 day, 15:44:02"}
|
||||
{"current_steps": 560, "total_steps": 2611, "loss": 0.2923, "lr": 4.569582580248509e-06, "epoch": 0.21444897861493722, "percentage": 21.45, "elapsed_time": "10:47:45", "remaining_time": "1 day, 15:32:23"}
|
||||
{"current_steps": 570, "total_steps": 2611, "loss": 0.2924, "lr": 4.552022919688861e-06, "epoch": 0.21827842466163255, "percentage": 21.83, "elapsed_time": "10:59:19", "remaining_time": "1 day, 15:20:49"}
|
||||
{"current_steps": 580, "total_steps": 2611, "loss": 0.2819, "lr": 4.534147359600211e-06, "epoch": 0.22210787070832785, "percentage": 22.21, "elapsed_time": "11:10:59", "remaining_time": "1 day, 15:09:38"}
|
||||
{"current_steps": 590, "total_steps": 2611, "loss": 0.2939, "lr": 4.515958651843151e-06, "epoch": 0.22593731675502315, "percentage": 22.6, "elapsed_time": "11:22:28", "remaining_time": "1 day, 14:57:46"}
|
||||
{"current_steps": 600, "total_steps": 2611, "loss": 0.2835, "lr": 4.497459596485924e-06, "epoch": 0.22976676280171845, "percentage": 22.98, "elapsed_time": "11:34:05", "remaining_time": "1 day, 14:46:20"}
|
||||
{"current_steps": 610, "total_steps": 2611, "loss": 0.2854, "lr": 4.478653041373371e-06, "epoch": 0.23359620884841378, "percentage": 23.36, "elapsed_time": "11:47:09", "remaining_time": "1 day, 14:39:42"}
|
||||
{"current_steps": 620, "total_steps": 2611, "loss": 0.2872, "lr": 4.459541881688501e-06, "epoch": 0.23742565489510908, "percentage": 23.75, "elapsed_time": "11:58:44", "remaining_time": "1 day, 14:28:05"}
|
||||
{"current_steps": 630, "total_steps": 2611, "loss": 0.2852, "lr": 4.440129059506808e-06, "epoch": 0.24125510094180438, "percentage": 24.13, "elapsed_time": "12:10:19", "remaining_time": "1 day, 14:16:29"}
|
||||
{"current_steps": 640, "total_steps": 2611, "loss": 0.2883, "lr": 4.420417563343347e-06, "epoch": 0.24508454698849969, "percentage": 24.51, "elapsed_time": "12:22:01", "remaining_time": "1 day, 14:05:13"}
|
||||
{"current_steps": 650, "total_steps": 2611, "loss": 0.2818, "lr": 4.40041042769266e-06, "epoch": 0.248913993035195, "percentage": 24.89, "elapsed_time": "12:33:43", "remaining_time": "1 day, 13:53:56"}
|
||||
{"current_steps": 660, "total_steps": 2611, "loss": 0.2858, "lr": 4.380110732561636e-06, "epoch": 0.2527434390818903, "percentage": 25.28, "elapsed_time": "12:45:26", "remaining_time": "1 day, 13:42:42"}
|
||||
{"current_steps": 670, "total_steps": 2611, "loss": 0.2948, "lr": 4.3595216029953575e-06, "epoch": 0.2565728851285856, "percentage": 25.66, "elapsed_time": "12:57:03", "remaining_time": "1 day, 13:31:09"}
|
||||
{"current_steps": 680, "total_steps": 2611, "loss": 0.2901, "lr": 4.338646208596009e-06, "epoch": 0.26040233117528094, "percentage": 26.04, "elapsed_time": "13:08:45", "remaining_time": "1 day, 13:19:50"}
|
||||
{"current_steps": 690, "total_steps": 2611, "loss": 0.2848, "lr": 4.317487763034936e-06, "epoch": 0.2642317772219762, "percentage": 26.43, "elapsed_time": "13:20:22", "remaining_time": "1 day, 13:08:18"}
|
||||
{"current_steps": 700, "total_steps": 2611, "loss": 0.294, "lr": 4.296049523557917e-06, "epoch": 0.26806122326867154, "percentage": 26.81, "elapsed_time": "13:31:58", "remaining_time": "1 day, 12:56:42"}
|
||||
{"current_steps": 710, "total_steps": 2611, "loss": 0.2925, "lr": 4.274334790483718e-06, "epoch": 0.2718906693153669, "percentage": 27.19, "elapsed_time": "13:43:30", "remaining_time": "1 day, 12:44:53"}
|
||||
{"current_steps": 720, "total_steps": 2611, "loss": 0.2832, "lr": 4.2523469066960295e-06, "epoch": 0.27572011536206215, "percentage": 27.58, "elapsed_time": "13:55:12", "remaining_time": "1 day, 12:33:35"}
|
||||
{"current_steps": 730, "total_steps": 2611, "loss": 0.2865, "lr": 4.230089257128842e-06, "epoch": 0.2795495614087575, "percentage": 27.96, "elapsed_time": "14:06:44", "remaining_time": "1 day, 12:21:49"}
|
||||
{"current_steps": 740, "total_steps": 2611, "loss": 0.2852, "lr": 4.207565268245356e-06, "epoch": 0.28337900745545275, "percentage": 28.34, "elapsed_time": "14:18:22", "remaining_time": "1 day, 12:10:18"}
|
||||
{"current_steps": 750, "total_steps": 2611, "loss": 0.2924, "lr": 4.184778407510484e-06, "epoch": 0.2872084535021481, "percentage": 28.72, "elapsed_time": "14:29:54", "remaining_time": "1 day, 11:58:31"}
|
||||
{"current_steps": 760, "total_steps": 2611, "loss": 0.2901, "lr": 4.16173218285706e-06, "epoch": 0.2910378995488434, "percentage": 29.11, "elapsed_time": "14:41:23", "remaining_time": "1 day, 11:46:40"}
|
||||
{"current_steps": 770, "total_steps": 2611, "loss": 0.2839, "lr": 4.138430142145805e-06, "epoch": 0.2948673455955387, "percentage": 29.49, "elapsed_time": "14:52:54", "remaining_time": "1 day, 11:34:51"}
|
||||
{"current_steps": 780, "total_steps": 2611, "loss": 0.2951, "lr": 4.114875872619147e-06, "epoch": 0.298696791642234, "percentage": 29.87, "elapsed_time": "15:04:30", "remaining_time": "1 day, 11:23:17"}
|
||||
{"current_steps": 790, "total_steps": 2611, "loss": 0.2874, "lr": 4.091073000348989e-06, "epoch": 0.30252623768892933, "percentage": 30.26, "elapsed_time": "15:16:06", "remaining_time": "1 day, 11:11:40"}
|
||||
{"current_steps": 800, "total_steps": 2611, "loss": 0.286, "lr": 4.067025189678485e-06, "epoch": 0.3063556837356246, "percentage": 30.64, "elapsed_time": "15:27:38", "remaining_time": "1 day, 10:59:56"}
|
||||
{"current_steps": 810, "total_steps": 2611, "loss": 0.2834, "lr": 4.042736142657936e-06, "epoch": 0.31018512978231993, "percentage": 31.02, "elapsed_time": "15:39:20", "remaining_time": "1 day, 10:48:35"}
|
||||
{"current_steps": 820, "total_steps": 2611, "loss": 0.284, "lr": 4.018209598474869e-06, "epoch": 0.3140145758290152, "percentage": 31.41, "elapsed_time": "15:51:01", "remaining_time": "1 day, 10:37:10"}
|
||||
{"current_steps": 830, "total_steps": 2611, "loss": 0.2777, "lr": 3.9934493328784185e-06, "epoch": 0.31784402187571054, "percentage": 31.79, "elapsed_time": "16:02:36", "remaining_time": "1 day, 10:25:33"}
|
||||
{"current_steps": 840, "total_steps": 2611, "loss": 0.2893, "lr": 3.9684591575980546e-06, "epoch": 0.32167346792240586, "percentage": 32.17, "elapsed_time": "16:14:06", "remaining_time": "1 day, 10:13:44"}
|
||||
{"current_steps": 850, "total_steps": 2611, "loss": 0.2891, "lr": 3.943242919756792e-06, "epoch": 0.32550291396910114, "percentage": 32.55, "elapsed_time": "16:25:47", "remaining_time": "1 day, 10:02:20"}
|
||||
{"current_steps": 860, "total_steps": 2611, "loss": 0.2838, "lr": 3.917804501278942e-06, "epoch": 0.32933236001579647, "percentage": 32.94, "elapsed_time": "16:37:22", "remaining_time": "1 day, 9:50:42"}
|
||||
{"current_steps": 870, "total_steps": 2611, "loss": 0.2818, "lr": 3.892147818292505e-06, "epoch": 0.3331618060624918, "percentage": 33.32, "elapsed_time": "16:49:04", "remaining_time": "1 day, 9:39:18"}
|
||||
{"current_steps": 880, "total_steps": 2611, "loss": 0.2826, "lr": 3.866276820526305e-06, "epoch": 0.33699125210918707, "percentage": 33.7, "elapsed_time": "17:00:31", "remaining_time": "1 day, 9:27:25"}
|
||||
{"current_steps": 890, "total_steps": 2611, "loss": 0.2797, "lr": 3.840195490701943e-06, "epoch": 0.3408206981558824, "percentage": 34.09, "elapsed_time": "17:12:12", "remaining_time": "1 day, 9:15:59"}
|
||||
{"current_steps": 900, "total_steps": 2611, "loss": 0.2823, "lr": 3.8139078439206755e-06, "epoch": 0.34465014420257767, "percentage": 34.47, "elapsed_time": "17:23:40", "remaining_time": "1 day, 9:04:09"}
|
||||
{"current_steps": 910, "total_steps": 2611, "loss": 0.2845, "lr": 3.787417927045315e-06, "epoch": 0.348479590249273, "percentage": 34.85, "elapsed_time": "17:35:14", "remaining_time": "1 day, 8:52:29"}
|
||||
{"current_steps": 920, "total_steps": 2611, "loss": 0.2782, "lr": 3.760729818077224e-06, "epoch": 0.3523090362959683, "percentage": 35.24, "elapsed_time": "17:46:52", "remaining_time": "1 day, 8:40:58"}
|
||||
{"current_steps": 930, "total_steps": 2611, "loss": 0.2809, "lr": 3.7338476255285295e-06, "epoch": 0.3561384823426636, "percentage": 35.62, "elapsed_time": "17:58:32", "remaining_time": "1 day, 8:29:29"}
|
||||
{"current_steps": 940, "total_steps": 2611, "loss": 0.288, "lr": 3.7067754877896388e-06, "epoch": 0.3599679283893589, "percentage": 36.0, "elapsed_time": "18:09:59", "remaining_time": "1 day, 8:17:38"}
|
||||
{"current_steps": 950, "total_steps": 2611, "loss": 0.2821, "lr": 3.6795175724921506e-06, "epoch": 0.36379737443605425, "percentage": 36.38, "elapsed_time": "18:21:31", "remaining_time": "1 day, 8:05:54"}
|
||||
{"current_steps": 960, "total_steps": 2611, "loss": 0.2759, "lr": 3.652078075867267e-06, "epoch": 0.36762682048274953, "percentage": 36.77, "elapsed_time": "18:33:07", "remaining_time": "1 day, 7:54:20"}
|
||||
{"current_steps": 970, "total_steps": 2611, "loss": 0.28, "lr": 3.624461222099804e-06, "epoch": 0.37145626652944486, "percentage": 37.15, "elapsed_time": "18:44:42", "remaining_time": "1 day, 7:42:44"}
|
||||
{"current_steps": 980, "total_steps": 2611, "loss": 0.2883, "lr": 3.596671262677898e-06, "epoch": 0.3752857125761402, "percentage": 37.53, "elapsed_time": "18:56:11", "remaining_time": "1 day, 7:30:56"}
|
||||
{"current_steps": 990, "total_steps": 2611, "loss": 0.2885, "lr": 3.5687124757385084e-06, "epoch": 0.37911515862283546, "percentage": 37.92, "elapsed_time": "19:07:55", "remaining_time": "1 day, 7:19:35"}
|
||||
{"current_steps": 1000, "total_steps": 2611, "loss": 0.2815, "lr": 3.5405891654088154e-06, "epoch": 0.3829446046695308, "percentage": 38.3, "elapsed_time": "19:19:27", "remaining_time": "1 day, 7:07:53"}
|
||||
{"current_steps": 1010, "total_steps": 2611, "loss": 0.2807, "lr": 3.5123056611436224e-06, "epoch": 0.38677405071622606, "percentage": {"current_steps": 1090, "total_steps": 2611, "loss": 0.2929, "lr": 3.280798006742213e-06, "epoch": 0.4174096190897885, "percentage": 41.75, "elapsed_time": "21:03:54", "remaining_time": "1 day, 5:23:40"}
|
||||
{"current_steps": 1100, "total_steps": 2611, "loss": 0.2743, "lr": 3.2512714287530007e-06, "epoch": 0.42123906513648385, "percentage": 42.13, "elapsed_time": "21:15:40", "remaining_time": "1 day, 5:12:18"}
|
||||
{"current_steps": 1110, "total_steps": 2611, "loss": 0.2737, "lr": 3.2216291959686007e-06, "epoch": 0.4250685111831792, "percentage": 42.51, "elapsed_time": "21:27:22", "remaining_time": "1 day, 5:00:51"}
|
||||
{"current_steps": 1120, "total_steps": 2611, "loss": 0.2838, "lr": 3.191875871674971e-06, "epoch": 0.42889795722987445, "percentage": 42.9, "elapsed_time": "21:38:55", "remaining_time": "1 day, 4:49:11"}
|
||||
{"current_steps": 1130, "total_steps": 2611, "loss": 0.2752, "lr": 3.162016036260098e-06, "epoch": 0.4327274032765698, "percentage": 43.28, "elapsed_time": "21:50:31", "remaining_time": "1 day, 4:37:35"}
|
||||
{"current_steps": 1140, "total_steps": 2611, "loss": 0.2667, "lr": 3.1320542865088695e-06, "epoch": 0.4365568493232651, "percentage": 43.66, "elapsed_time": "22:02:08", "remaining_time": "1 day, 4:26:02"}
|
||||
{"current_steps": 1150, "total_steps": 2611, "loss": 0.2747, "lr": 3.1019952348954163e-06, "epoch": 0.4403862953699604, "percentage": 44.04, "elapsed_time": "22:13:43", "remaining_time": "1 day, 4:14:25"}
|
||||
{"current_steps": 1160, "total_steps": 2611, "loss": 0.2836, "lr": 3.071843508873046e-06, "epoch": 0.4442157414166557, "percentage": 44.43, "elapsed_time": "22:25:14", "remaining_time": "1 day, 4:02:42"}
|
||||
{"current_steps": 1170, "total_steps": 2611, "loss": 0.2732, "lr": 3.0416037501618676e-06, "epoch": 0.448045187463351, "percentage": 44.81, "elapsed_time": "22:36:54", "remaining_time": "1 day, 3:51:11"}
|
||||
{"current_steps": 1180, "total_steps": 2611, "loss": 0.2759, "lr": 3.0112806140342176e-06, "epoch": 0.4518746335100463, "percentage": 45.19, "elapsed_time": "22:48:30", "remaining_time": "1 day, 3:39:36"}
|
||||
{"current_steps": 1190, "total_steps": 2611, "loss": 0.2769, "lr": 2.9808787685980054e-06, "epoch": 0.45570407955674164, "percentage": 45.58, "elapsed_time": "23:00:04", "remaining_time": "1 day, 3:27:57"}
|
||||
{"current_steps": 1200, "total_steps": 2611, "loss": 0.2836, "lr": 2.9504028940780777e-06, "epoch": 0.4595335256034369, "percentage": 45.96, "elapsed_time": "23:11:32", "remaining_time": "1 day, 3:16:13"}
|
||||
{"current_steps": 1210, "total_steps": 2611, "loss": 0.2678, "lr": 2.9198576820957188e-06, "epoch": 0.46336297165013224, "percentage": 46.34, "elapsed_time": "23:25:02", "remaining_time": "1 day, 3:06:49"}
|
||||
{"current_steps": 1220, "total_steps": 2611, "loss": 0.279, "lr": 2.8892478349463987e-06, "epoch": 0.46719241769682757, "percentage": 46.73, "elapsed_time": "23:36:37", "remaining_time": "1 day, 2:55:11"}
|
||||
{"current_steps": 1230, "total_steps": 2611, "loss": 0.2774, "lr": 2.8585780648758745e-06, "epoch": 0.47102186374352284, "percentage": 47.11, "elapsed_time": "23:48:16", "remaining_time": "1 day, 2:43:37"}
|
||||
{"current_steps": 1240, "total_steps": 2611, "loss": 0.2731, "lr": 2.827853093354763e-06, "epoch": 0.47485130979021817, "percentage": 47.49, "elapsed_time": "23:59:50", "remaining_time": "1 day, 2:31:56"}
|
||||
{"current_steps": 1250, "total_steps": 2611, "loss": 0.2781, "lr": 2.79707765035169e-06, "epoch": 0.47868075583691344, "percentage": 47.87, "elapsed_time": "1 day, 0:11:22", "remaining_time": "1 day, 2:20:15"}
|
||||
{"current_steps": 1260, "total_steps": 2611, "loss": 0.2779, "lr": 2.7662564736051378e-06, "epoch": 0.48251020188360877, "percentage": 48.26, "elapsed_time": "1 day, 0:23:01", "remaining_time": "1 day, 2:08:41"}
|
||||
{"current_steps": 1270, "total_steps": 2611, "loss": 0.2755, "lr": 2.7353943078940876e-06, "epoch": 0.4863396479303041, "percentage": 48.64, "elapsed_time": "1 day, 0:34:43", "remaining_time": "1 day, 1:57:10"}
|
||||
{"current_steps": 1280, "total_steps": 2611, "loss": 0.2781, "lr": 2.7044959043075815e-06, "epoch": 0.49016909397699937, "percentage": 49.02, "elapsed_time": "1 day, 0:46:15", "remaining_time": "1 day, 1:45:28"}
|
||||
{"current_steps": 1290, "total_steps": 2611, "loss": 0.2885, "lr": 2.67356601951332e-06, "epoch": 0.4939985400236947, "percentage": 49.41, "elapsed_time": "1 day, 0:57:55", "remaining_time": "1 day, 1:33:55"}
|
||||
{"current_steps": 1300, "total_steps": 2611, "loss": 0.2823, "lr": 2.64260941502539e-06, "epoch": 0.49782798607039, "percentage": 49.79, "elapsed_time": "1 day, 1:09:31", "remaining_time": "1 day, 1:22:18"}
|
||||
{"current_steps": 1310, "total_steps": 2611, "loss": 0.2734, "lr": 2.611630856471252e-06, "epoch": 0.5016574321170854, "percentage": 50.17, "elapsed_time": "1 day, 1:21:14", "remaining_time": "1 day, 1:10:47"}
|
||||
{"current_steps": 1320, "total_steps": 2611, "loss": 0.2775, "lr": 2.5806351128580963e-06, "epoch": 0.5054868781637806, "percentage": 50.56, "elapsed_time": "1 day, 1:32:49", "remaining_time": "1 day, 0:59:08"}
|
||||
{"current_steps": 1330, "total_steps": 2611, "loss": 0.2805, "lr": 2.549626955838673e-06, "epoch": 0.5093163242104759, "percentage": 50.94, "elapsed_time": "1 day, 1:44:23", "remaining_time": "1 day, 0:47:29"}
|
||||
{"current_steps": 1340, "total_steps": 2611, "loss": 0.2715, "lr": 2.5186111589767187e-06, "epoch": 0.5131457702571712, "percentage": 51.32, "elapsed_time": "1 day, 1:56:09", "remaining_time": "1 day, 0:36:01"}
|
||||
{"current_steps": 1350, "total_steps": 2611, "loss": 0.2763, "lr": 2.487592497012089e-06, "epoch": 0.5169752163038666, "percentage": 51.7, "elapsed_time": "1 day, 2:07:41", "remaining_time": "1 day, 0:24:20"}
|
||||
{"current_steps": 1360, "total_steps": 2611, "loss": 0.2845, "lr": 2.456575745125713e-06, "epoch": 0.5208046623505619, "percentage": 52.09, "elapsed_time": "1 day, 2:19:27", "remaining_time": "1 day, 0:12:52"}
|
||||
{"current_steps": 1370, "total_steps": 2611, "loss": 0.2772, "lr": 2.4255656782044644e-06, "epoch": 0.5246341083972571, "percentage": 52.47, "elapsed_time": "1 day, 2:31:03", "remaining_time": "1 day, 0:01:15"}
|
||||
{"current_steps": 1380, "total_steps": 2611, "loss": 0.267, "lr": 2.3945670701061033e-06, "epoch": 0.5284635544439524, "percentage": 52.85, "elapsed_time": "1 day, 2:42:42", "remaining_time": "23:49:39"}
|
||||
{"current_steps": 1390, "total_steps": 2611, "loss": 0.2757, "lr": 2.3635846929243536e-06, "epoch": 0.5322930004906478, "percentage": 53.24, "elapsed_time": "1 day, 2:54:13", "remaining_time": "23:37:57"}
|
||||
{"current_steps": 1400, "total_steps": 2611, "loss": 0.2772, "lr": 2.3326233162542655e-06, "epoch": 0.5361224465373431, "percentage": 53.62, "elapsed_time": "1 day, 3:05:51", "remaining_time": "23:26:21"}
|
||||
{"current_steps": 1410, "total_steps": 2611, "loss": 0.2752, "lr": 2.3016877064579564e-06, "epoch": 0.5399518925840384, "percentage": 54.0, "elapsed_time": "1 day, 3:17:41", "remaining_time": "23:14:56"}
|
||||
{"current_steps": 1420, "total_steps": 2611, "loss": 0.2773, "lr": 2.2707826259308493e-06, "epoch": 0.5437813386307337, "percentage": 54.39, "elapsed_time": "1 day, 3:29:16", "remaining_time": "23:03:17"}
|
||||
{"current_steps": 1430, "total_steps": 2611, "loss": 0.2711, "lr": 2.2399128323685287e-06, "epoch": 0.547610784677429, "percentage": 54.77, "elapsed_time": "1 day, 3:40:48", "remaining_time": "22:51:37"}
|
||||
{"current_steps": 1440, "total_steps": 2611, "loss": 0.2774, "lr": 2.2090830780343116e-06, "epoch": 0.5514402307241243, "percentage": 55.15, "elapsed_time": "1 day, 3:52:19", "remaining_time": "22:39:55"}
|
||||
{"current_steps": 1450, "total_steps": 2611, "loss": 0.2789, "lr": 2.178298109027659e-06, "epoch": 0.5552696767708196, "percentage": 55.53, "elapsed_time": "1 day, 4:03:44", "remaining_time": "22:28:09"}
|
||||
{"current_steps": 1460, "total_steps": 2611, "loss": 0.2744, "lr": 2.147562664553537e-06, "epoch": 0.559099122817515, "percentage": 55.92, "elapsed_time": "1 day, 4:15:35", "remaining_time": "22:16:43"}
|
||||
{"current_steps": 1470, "total_steps": 2611, "loss": 0.2698, "lr": 2.116881476192834e-06, "epoch": 0.5629285688642103, "percentage": 56.3, "elapsed_time": "1 day, 4:27:09", "remaining_time": "22:05:04"}
|
||||
{"current_steps": 1480, "total_steps": 2611, "loss": 0.2756, "lr": 2.086259267173961e-06, "epoch": 0.5667580149109055, "percentage": 56.68, "elapsed_time": "1 day, 4:39:00", "remaining_time": "21:53:38"}
|
||||
{"current_steps": 1490, "total_steps": 2611, "loss": 0.2813, "lr": 2.0557007516457287e-06, "epoch": 0.5705874609576008, "percentage": 57.07, "elapsed_time": "1 day, 4:50:41", "remaining_time": "21:42:05"}
|
||||
{"current_steps": 1500, "total_steps": 2611, "loss": 0.2659, "lr": 2.025210633951627e-06, "epoch": 0.5744169070042962, "percentage": 57.45, "elapsed_time": "1 day, 5:02:26", "remaining_time": "21:30:33"}
|
||||
{"current_steps": 1510, "total_steps": 2611, "loss": 0.2691, "lr": 1.9947936079056118e-06, "epoch": 0.5782463530509915, "percentage": 57.83, "elapsed_time": "1 day, 5:13:59", "remaining_time": "21:18:54"}
|
||||
{"current_steps": 1520, "total_steps": 2611, "loss": 0.2653, "lr": 1.964454356069514e-06, "epoch": 0.5820757990976868, "percentage": 58.22, "elapsed_time": "1 day, 5:25:24", "remaining_time": "21:07:08"}
|
||||
{"current_steps": 1530, "total_steps": 2611, "loss": 0.2753, "lr": 1.934197549032183e-06, "epoch": 0.5859052451443821, "percentage": 58.6, "elapsed_time": "1 day, 5:36:54", "remaining_time": "20:55:26"}
|
||||
{"current_steps": 1540, "total_steps": 2611, "loss": 0.2756, "lr": 1.904027844690468e-06, "epoch": 0.5897346911910774, "percentage": 58.98, "elapsed_time": "1 day, 5:48:32", "remaining_time": "20:43:50"}
|
||||
{"current_steps": 1550, "total_steps": 2611, "loss": 0.2781, "lr": 1.8739498875321563e-06, "epoch": 0.5935641372377727, "percentage": 59.36, "elapsed_time": "1 day, 5:59:59", "remaining_time": "20:32:07"}
|
||||
{"current_steps": 1560, "total_steps": 2611, "loss": 0.2762, "lr": 1.8439683079209789e-06, "epoch": 0.597393583284468, "percentage": 59.75, "elapsed_time": "1 day, 6:11:40", "remaining_time": "20:20:33"}
|
||||
{"current_steps": 1570, "total_steps": 2611, "loss": 0.2671, "lr": 1.8140877213837823e-06, "epoch": 0.6012230293311633, "percentage": 60.13, "elapsed_time": "1 day, 6:23:08", "remaining_time": "20:08:50"}
|
||||
{"current_steps": 1580, "total_steps": 2611, "loss": 0.2656, "lr": 1.7843127278999944e-06, "epoch": 0.6050524753778587, "percentage": 60.51, "elapsed_time": "1 day, 6:34:43", "remaining_time": "19:57:13"}
|
||||
{"current_steps": 1590, "total_steps": 2611, "loss": 0.2742, "lr": 1.7546479111934733e-06, "epoch": 0.6088819214245539, "percentage": 60.9, "elapsed_time": "1 day, 6:46:10", "remaining_time": "19:45:29"}
|
||||
{"current_steps": 1600, "total_steps": 2611, "loss": 0.2703, "lr": 1.7250978380268696e-06, "epoch": 0.6127113674712492, "percentage": 61.28, "elapsed_time": "1 day, 6:57:48", "remaining_time": "19:33:53"}
|
||||
{"current_steps": 1610, "total_steps": 2611, "loss": 0.2778, "lr": 1.6956670574985909e-06, "epoch": 0.6165408135179445, "percentage": 61.66, "elapsed_time": "1 day, 7:09:30", "remaining_time": "19:22:20"}
|
||||
{"current_steps": 1620, "total_steps": 2611, "loss": 0.2751, "lr": 1.6663601003424884e-06, "epoch": 0.6203702595646399, "percentage": 62.05, "elapsed_time": "1 day, 7:21:04", "remaining_time": "19:10:42"}
|
||||
{"current_steps": 1630, "total_steps": 2611, "loss": 0.2697, "lr": 1.6371814782303723e-06, "epoch": 0.6241997056113352, "percentage": 62.43, "elapsed_time": "1 day, 7:32:43", "remaining_time": "18:59:07"}
|
||||
{"current_steps": 1640, "total_steps": 2611, "loss": 0.2728, "lr": 1.6081356830774625e-06, "epoch": 0.6280291516580304, "percentage": 62.81, "elapsed_time": "1 day, 7:44:15", "remaining_time": "18:47:27"}
|
||||
{"current_steps": 1650, "total_steps": 2611, "loss": 0.2725, "lr": 1.5792271863508751e-06, "epoch": 0.6318585977047257, "percentage": 63.19, "elapsed_time": "1 day, 7:55:56", "remaining_time": "18:35:53"}
|
||||
{"current_steps": 1660, "total_steps": 2611, "loss": 0.2665, "lr": 1.5504604383812646e-06, "epoch": 0.6356880437514211, "percentage": 63.58, "elapsed_time": "1 day, 8:07:22", "remaining_time": "18:24:10"}
|
||||
{"current_steps": 1670, "total_steps": 2611, "loss": 0.2676, "lr": 1.5218398676777103e-06, "epoch": 0.6395174897981164, "percentage": 63.96, "elapsed_time": "1 day, 8:19:00", "remaining_time": "18:12:34"}
|
||||
{"current_steps": 1680, "total_steps": 2611, "loss": 0.2682, "lr": 1.493369880245973e-06, "epoch": 0.6433469358448117, "percentage": 64.34, "elapsed_time": "1 day, 8:30:30", "remaining_time": "18:00:54"}
|
||||
{"current_steps": 1690, "total_steps": 2611, "loss": 0.2725, "lr": 1.4650548589102092e-06, "epoch": 0.6471763818915071, "percentage": 64.73, "elapsed_time": "1 day, 8:42:02", "remaining_time": "17:49:15"}
|
||||
{"current_steps": 1700, "total_steps": 2611, "loss": 0.2693, "lr": 1.436899162638255e-06, "epoch": 0.6510058279382023, "percentage": 65.11, "elapsed_time": "1 day, 8:53:50", "remaining_time": "17:37:44"}
|
||||
{"current_steps": 1710, "total_steps": 2611, "loss": 0.2717, "lr": 1.4089071258705782e-06, "epoch": 0.6548352739848976, "percentage": 65.49, "elapsed_time": "1 day, 9:05:38", "remaining_time": "17:26:14"}
|
||||
{"current_steps": 1720, "total_steps": 2611, "loss": 0.2645, "lr": 1.3810830578530226e-06, "epoch": 0.6586647200315929, "percentage": 65.88, "elapsed_time": "1 day, 9:17:18", "remaining_time": "17:14:39"}
|
||||
{"current_steps": 1730, "total_steps": 2611, "loss": 0.2619, "lr": 1.3534312419734066e-06, "epoch": 0.6624941660782883, "percentage": 66.26, "elapsed_time": "1 day, 9:28:52", "remaining_time": "17:03:01"}
|
||||
{"current_steps": 1740, "total_steps": 2611, "loss": 0.2706, "lr": 1.3259559351021249e-06, "epoch": 0.6663236121249836, "percentage": 66.64, "elapsed_time": "1 day, 9:40:35", "remaining_time": "16:51:27"}
|
||||
{"current_steps": 1750, "total_steps": 2611, "loss": 0.2724, "lr": 1.2986613669368159e-06, "epoch": 0.6701530581716788, "percentage": 67.02, "elapsed_time": "1 day, 9:52:17", "remaining_time": "16:39:53"}
|
||||
{"current_steps": 1760, "total_steps": 2611, "loss": 0.2699, "lr": 1.2715517393512239e-06, "epoch": 0.6739825042183741, "percentage": 67.41, "elapsed_time": "1 day, 10:03:52", "remaining_time": "16:28:15"}
|
||||
{"current_steps": 1770, "total_steps": 2611, "loss": 0.2606, "lr": 1.2446312257483358e-06, "epoch": 0.6778119502650695, "percentage": 67.79, "elapsed_time": "1 day, 10:15:34", "remaining_time": "16:16:41"}
|
||||
{"current_steps": 1780, "total_steps": 2611, "loss": 0.2671, "lr": 1.2179039704179119e-06, "epoch": 0.6816413963117648, "percentage": 68.17, "elapsed_time": "1 day, 10:27:19", "remaining_time": "16:05:08"}
|
||||
{"current_steps": 1790, "total_steps": 2611, "loss": 0.2728, "lr": 1.1913740878984818e-06, "epoch": 0.6854708423584601, "percentage": 68.56, "elapsed_time": "1 day, 10:38:50", "remaining_time": "15:53:28"}
|
||||
{"current_steps": 1800, "total_steps": 2611, "loss": 0.2684, "lr": 1.1650456623439368e-06, "epoch": 0.6893002884051553, "percentage": 68.94, "elapsed_time": "1 day, 10:50:35", "remaining_time": "15:41:55"}
|
||||
{"current_steps": 1810, "total_steps": 2611, "loss": 0.271, "lr": 1.1389227468947905e-06, "epoch": 0.6931297344518507, "percentage": 69.32, "elapsed_time": "1 day, 11:03:41", "remaining_time": "15:30:58"}
|
||||
{"current_steps": 1820, "total_steps": 2611, "loss": 0.2657, "lr": 1.11300936305422e-06, "epoch": 0.696959180498546, "percentage": 69.71, "elapsed_time": "1 day, 11:15:22", "remaining_time": "15:19:22"}
|
||||
{"current_steps": 1830, "total_steps": 2611, "loss": 0.2666, "lr": 1.0873095000689676e-06, "epoch": 0.7007886265452413, "percentage": 70.09, "elapsed_time": "1 day, 11:27:02", "remaining_time": "15:07:46"}
|
||||
{"current_steps": 1840, "total_steps": 2611, "loss": 0.2714, "lr": 1.0618271143152185e-06, "epoch": 0.7046180725919367, "percentage": 70.47, "elapsed_time": "1 day, 11:38:30", "remaining_time": "14:56:04"}
|
||||
{"current_steps": 1850, "total_steps": 2611, "loss": 0.2672, "lr": 1.0365661286895364e-06, "epoch": 0.708447518638632, "percentage": 70.85, "elapsed_time": "1 day, 11:50:00", "remaining_time": "14:44:24"}
|
||||
{"current_steps": 1860, "total_steps": 2611, "loss": 0.2639, "lr": 1.011530432004948e-06, "epoch": 0.7122769646853272, "percentage": 71.24, "elapsed_time": "1 day, 12:01:44", "remaining_time": "14:32:49"}
|
||||
{"current_steps": 1870, "total_steps": 2611, "loss": 0.2675, "lr": 9.86723878392279e-07, "epoch": 0.7161064107320225, "percentage": 71.62, "elapsed_time": "1 day, 12:13:09", "remaining_time": "14:21:07"}
|
||||
{"current_steps": 1880, "total_steps": 2611, "loss": 0.2592, "lr": 9.621502867068286e-07, "epoch": 0.7199358567787179, "percentage": 72.0, "elapsed_time": "1 day, 12:24:44", "remaining_time": "14:09:29"}
|
||||
{"current_steps": 1890, "total_steps": 2611, "loss": 0.2676, "lr": 9.378134399404768e-07, "epoch": 0.7237653028254132, "percentage": 72.39, "elapsed_time": "1 day, 12:36:17", "remaining_time": "13:57:50"}
|
||||
{"current_steps": 1900, "total_steps": 2611, "loss": 0.268, "lr": 9.137170846393054e-07, "epoch": 0.7275947488721085, "percentage": 72.77, "elapsed_time": "1 day, 12:47:55", "remaining_time": "13:46:13"}
|
||||
{"current_steps": 1910, "total_steps": 2611, "loss": 0.2752, "lr": 8.898649303268373e-07, "epoch": 0.7314241949188037, "percentage": 73.15, "elapsed_time": "1 day, 12:59:29", "remaining_time": "13:34:35"}
|
||||
{"current_steps": 1920, "total_steps": 2611, "loss": 0.2793, "lr": 8.662606489329712e-07, "epoch": 0.7352536409654991, "percentage": 73.54, "elapsed_time": "1 day, 13:10:52", "remaining_time": "13:22:52"}
|
||||
{"current_steps": 1930, "total_steps": 2611, "loss": 0.2673, "lr": 8.429078742287072e-07, "epoch": 0.7390830870121944, "percentage": 73.92, "elapsed_time": "1 day, 13:22:32", "remaining_time": "13:11:16"}
|
||||
{"current_steps": 1940, "total_steps": 2611, "loss": 0.2662, "lr": 8.198102012667409e-07, "epoch": 0.7429125330588897, "percentage": 74.3, "elapsed_time": "1 day, 13:34:09", "remaining_time": "12:59:39"}
|
||||
{"current_steps": 1950, "total_steps": 2611, "loss": 0.2712, "lr": 7.969711858280251e-07, "epoch": 0.746741979105585, "percentage": 74.68, "elapsed_time": "1 day, 13:45:45", "remaining_time": "12:48:01"}
|
||||
{"current_steps": 1960, "total_steps": 2611, "loss": 0.2634, "lr": 7.743943438743676e-07, "epoch": 0.7505714251522804, "percentage": 75.07, "elapsed_time": "1 day, 13:57:19", "remaining_time": "12:36:23"}
|
||||
{"current_steps": 1970, "total_steps": 2611, "loss": 0.2632, "lr": 7.520831510071744e-07, "epoch": 0.7544008711989756, "percentage": 75.45, "elapsed_time": "1 day, 14:09:08", "remaining_time": "12:24:50"}
|
||||
{"current_steps": 1980, "total_steps": 2611, "loss": 0.2756, "lr": 7.30041041932387e-07, "epoch": 0.7582303172456709, "percentage": 75.83, "elapsed_time": "1 day, 14:20:41", "remaining_time": "12:13:12"}
|
||||
{"current_steps": 1990, "total_steps": 2611, "loss": 0.2664, "lr": 7.082714099317334e-07, "epoch": 0.7620597632923662, "percentage": 76.22, "elapsed_time": "1 day, 14:32:17", "remaining_time": "12:01:34"}
|
||||
{"current_steps": 2000, "total_steps": 2611, "loss": 0.2628, "lr": 6.867776063403411e-07, "epoch": 0.7658892093390616, "percentage": 76.6, "elapsed_time": "1 day, 14:43:54", "remaining_time": "11:49:57"}
|
||||
{"current_steps": 2010, "total_steps": 2611, "loss": 0.2658, "lr": 6.655629400308191e-07, "epoch": 0.7697186553857569, "percentage": 76.98, "elapsed_time": "1 day, 14:55:37", "remaining_time": "11:38:21"}
|
||||
{"current_steps": 2020, "total_steps": 2611, "loss": 0.2669, "lr": 6.44630676903869e-07, "epoch": 0.7735481014324521, "percentage": 77.36, "elapsed_time": "1 day, 15:07:13", "remaining_time": "11:26:44"}
|
||||
{"current_steps": 2030, "total_steps": 2611, "loss": 0.2692, "lr": 6.239840393855185e-07, "epoch": 0.7773775474791474, "percentage": 77.75, "elapsed_time": "1 day, 15:18:46", "remaining_time": "11:15:05"}
|
||||
{"current_steps": 2040, "total_steps": 2611, "loss": 0.2629, "lr": 6.036262059310383e-07, "epoch": 0.7812069935258428, "percentage": 78.13, "elapsed_time": "1 day, 15:30:19", "remaining_time": "11:03:27"}
|
||||
{"current_steps": 2050, "total_steps": 2611, "loss": 0.2678, "lr": 5.835603105356396e-07, "epoch": 0.7850364395725381, "percentage": 78.51, "elapsed_time": "1 day, 15:41:46", "remaining_time": "10:51:47"}
|
||||
{"current_steps": 2060, "total_steps": 2611, "loss": 0.268, "lr": 5.637894422520027e-07, "epoch": 0.7888658856192334, "percentage": 78.9, "elapsed_time": "1 day, 15:53:18", "remaining_time": "10:40:09"}
|
||||
{"current_steps": 2070, "total_steps": 2611, "loss": 0.2652, "lr": 5.443166447147392e-07, "epoch": 0.7926953316659286, "percentage": 79.28, "elapsed_time": "1 day, 16:04:44", "remaining_time": "10:28:29"}
|
||||
{"current_steps": 2080, "total_steps": 2611, "loss": 0.2616, "lr": 5.251449156718313e-07, "epoch": 0.796524777712624, "percentage": 79.66, "elapsed_time": "1 day, 16:16:17", "remaining_time": "10:16:51"}
|
||||
{"current_steps": 2090, "total_steps": 2611, "loss": 0.2664, "lr": 5.062772065231492e-07, "epoch": 0.8003542237593193, "percentage": 80.05, "elapsed_time": "1 day, 16:27:58", "remaining_time": "10:05:15"}
|
||||
{"current_steps": 2100, "total_steps": 2611, "loss": 0.2656, "lr": 4.877164218660901e-07, "epoch": 0.8041836698060146, "percentage": 80.43, "elapsed_time": "1 day, 16:39:36", "remaining_time": "9:53:38"}
|
||||
{"current_steps": 2110, "total_steps": 2611, "loss": 0.2612, "lr": 4.694654190484327e-07, "epoch": 0.80801311585271, "percentage": 80.81, "elapsed_time": "1 day, 16:51:16", "remaining_time": "9:42:01"}
|
||||
{"current_steps": 2120, "total_steps": 2611, "loss": 0.2676, "lr": 4.5152700772845947e-07, "epoch": 0.8118425618994053, "percentage": 81.19, "elapsed_time": "1 day, 17:02:53", "remaining_time": "9:30:24"}
|
||||
{"current_steps": 2130, "total_steps": 2611, "loss": 0.2755, "lr": 4.339039494424263e-07, "epoch": 0.8156720079461005, "percentage": 81.58, "elapsed_time": "1 day, 17:14:25", "remaining_time": "9:18:46"}
|
||||
{"current_steps": 2140, "total_steps": 2611, "loss": 0.2597, "lr": 4.16598957179431e-07, "epoch": 0.8195014539927958, "percentage": 81.96, "elapsed_time": "1 day, 17:26:09", "remaining_time": "9:07:11"}
|
||||
{"current_steps": 2150, "total_steps": 2611, "loss": 0.2592, "lr": 3.9961469496376584e-07, "epoch": 0.8233309000394912, "percentage": 82.34, "elapsed_time": "1 day, 17:37:50", "remaining_time": "8:55:35"}
|
||||
{"current_steps": 2160, "total_steps": 2611, "loss": 0.2714, "lr": 3.829537774448e-07, "epoch": 0.8271603460861865, "percentage": 82.73, "elapsed_time": "1 day, 17:49:26", "remaining_time": "8:43:57"}
|
||||
{"current_steps": 2170, "total_steps": 2611, "loss": 0.2637, "lr": 3.6661876949447006e-07, "epoch": 0.8309897921328818, "percentage": 83.11, "elapsed_time": "1 day, 18:01:03", "remaining_time": "8:32:20"}
|
||||
{"current_steps": 2180, "total_steps": 2611, "loss": 0.2652, "lr": 3.506121858124253e-07, "epoch": 0.834819238179577, "percentage": 83.49, "elapsed_time": "1 day, 18:12:38", "remaining_time": "8:20:43"}
|
||||
{"current_steps": 2190, "total_steps": 2611, "loss": 0.2642, "lr": 3.3493649053890325e-07, "epoch": 0.8386486842262724, "percentage": 83.88, "elapsed_time": "1 day, 18:24:23", "remaining_time": "8:09:07"}
|
||||
{"current_steps": 2200, "total_steps": 2611, "loss": 0.2632, "lr": 3.1959409687538854e-07, "epoch": 0.8424781302729677, "percentage": 84.26, "elapsed_time": "1 day, 18:36:07", "remaining_time": "7:57:31"}
|
||||
{"current_steps": 2210, "total_steps": 2611, "loss": 0.2648, "lr": 3.04587366713108e-07, "epoch": 0.846307576319663, "percentage": 84.64, "elapsed_time": "1 day, 18:47:37", "remaining_time": "7:45:53"}
|
||||
{"current_steps": 2220, "total_steps": 2611, "loss": 0.2741, "lr": 2.8991861026943015e-07, "epoch": 0.8501370223663584, "percentage": 85.02, "elapsed_time": "1 day, 18:59:13", "remaining_time": "7:34:16"}
|
||||
{"current_steps": 2230, "total_steps": 2611, "loss": 0.2645, "lr": 2.755900857322172e-07, "epoch": 0.8539664684130536, "percentage": 85.41, "elapsed_time": "1 day, 19:10:42", "remaining_time": "7:22:37"}
|
||||
{"current_steps": 2240, "total_steps": 2611, "loss": 0.2546, "lr": 2.616039989121899e-07, "epoch": 0.8577959144597489, "percentage": 85.79, "elapsed_time": "1 day, 19:22:27", "remaining_time": "7:11:01"}
|
||||
{"current_steps": 2250, "total_steps": 2611, "loss": 0.2774, "lr": 2.479625029033489e-07, "epoch": 0.8616253605064442, "percentage": 86.17, "elapsed_time": "1 day, 19:34:02", "remaining_time": "6:59:24"}
|
||||
{"current_steps": 2260, "total_steps": 2611, "loss": 0.266, "lr": 2.3466769775151887e-07, "epoch": 0.8654548065531396, "percentage": 86.56, "elapsed_time": "1 day, 19:45:53", "remaining_time": "6:47:49"}
|
||||
{"current_steps": 2270, "total_steps": 2611, "loss": 0.2717, "lr": 2.21721630131054e-07, "epoch": 0.8692842525998349, "percentage": 86.94, "elapsed_time": "1 day, 19:57:23", "remaining_time": "6:36:11"}
|
||||
{"current_steps": 2280, "total_steps": 2611, "loss": 0.2656, "lr": 2.0912629302976494e-07, "epoch": 0.8731136986465302, "percentage": 87.32, "elapsed_time": "1 {"current_steps": 2370, "total_steps": 2611, "loss": 0.2719, "lr": 1.1185302010402105e-07, "epoch": 0.907578713066788, "percentage": 90.77, "elapsed_time": "1 day, 21:54:00", "remaining_time": "4:40:02"}
|
||||
{"current_steps": 2380, "total_steps": 2611, "loss": 0.2627, "lr": 1.0286258288810108e-07, "epoch": 0.9114081591134833, "percentage": 91.15, "elapsed_time": "1 day, 22:05:34", "remaining_time": "4:28:25"}
|
||||
{"current_steps": 2390, "total_steps": 2611, "loss": 0.262, "lr": 9.424117399723432e-08, "epoch": 0.9152376051601786, "percentage": 91.54, "elapsed_time": "1 day, 22:17:10", "remaining_time": "4:16:48"}
|
||||
{"current_steps": 2400, "total_steps": 2611, "loss": 0.271, "lr": 8.599012065782924e-08, "epoch": 0.9190670512068738, "percentage": 91.92, "elapsed_time": "1 day, 22:28:46", "remaining_time": "4:05:10"}
|
||||
{"current_steps": 2410, "total_steps": 2611, "loss": 0.2692, "lr": 7.811069308175156e-08, "epoch": 0.9228964972535691, "percentage": 92.3, "elapsed_time": "1 day, 22:41:55", "remaining_time": "3:53:41"}
|
||||
{"current_steps": 2420, "total_steps": 2611, "loss": 0.2674, "lr": 7.060410427078473e-08, "epoch": 0.9267259433002645, "percentage": 92.68, "elapsed_time": "1 day, 22:53:30", "remaining_time": "3:42:03"}
|
||||
{"current_steps": 2430, "total_steps": 2611, "loss": 0.2625, "lr": 6.347150982989159e-08, "epoch": 0.9305553893469598, "percentage": 93.07, "elapsed_time": "1 day, 23:05:25", "remaining_time": "3:30:27"}
|
||||
{"current_steps": 2440, "total_steps": 2611, "loss": 0.2621, "lr": 5.6714007789314686e-08, "epoch": 0.9343848353936551, "percentage": 93.45, "elapsed_time": "1 day, 23:17:01", "remaining_time": "3:18:49"}
|
||||
{"current_steps": 2450, "total_steps": 2611, "loss": 0.2646, "lr": 5.033263843554015e-08, "epoch": 0.9382142814403504, "percentage": 93.83, "elapsed_time": "1 day, 23:28:30", "remaining_time": "3:07:11"}
|
||||
{"current_steps": 2460, "total_steps": 2611, "loss": 0.2667, "lr": 4.4328384151149094e-08, "epoch": 0.9420437274870457, "percentage": 94.22, "elapsed_time": "1 day, 23:39:59", "remaining_time": "2:55:33"}
|
||||
{"current_steps": 2470, "total_steps": 2611, "loss": 0.2643, "lr": 3.870216926358555e-08, "epoch": 0.945873173533741, "percentage": 94.6, "elapsed_time": "1 day, 23:51:26", "remaining_time": "2:43:54"}
|
||||
{"current_steps": 2480, "total_steps": 2611, "loss": 0.2641, "lr": 3.3454859902860295e-08, "epoch": 0.9497026195804363, "percentage": 94.98, "elapsed_time": "2 days, 0:03:03", "remaining_time": "2:32:17"}
|
||||
{"current_steps": 2490, "total_steps": 2611, "loss": 0.2707, "lr": 2.858726386821359e-08, "epoch": 0.9535320656271317, "percentage": 95.37, "elapsed_time": "2 days, 0:14:27", "remaining_time": "2:20:39"}
|
||||
{"current_steps": 2500, "total_steps": 2611, "loss": 0.2709, "lr": 2.410013050375859e-08, "epoch": 0.9573615116738269, "percentage": 95.75, "elapsed_time": "2 days, 0:25:59", "remaining_time": "2:09:01"}
|
||||
{"current_steps": 2510, "total_steps": 2611, "loss": 0.271, "lr": 1.999415058312276e-08, "epoch": 0.9611909577205222, "percentage": 96.13, "elapsed_time": "2 days, 0:37:34", "remaining_time": "1:57:24"}
|
||||
{"current_steps": 2520, "total_steps": 2611, "loss": 0.2512, "lr": 1.6269956203107117e-08, "epoch": 0.9650204037672175, "percentage": 96.51, "elapsed_time": "2 days, 0:49:16", "remaining_time": "1:45:46"}
|
||||
{"current_steps": 2530, "total_steps": 2611, "loss": 0.2661, "lr": 1.2928120686377388e-08, "epoch": 0.9688498498139129, "percentage": 96.9, "elapsed_time": "2 days, 1:00:58", "remaining_time": "1:34:09"}
|
||||
{"current_steps": 2540, "total_steps": 2611, "loss": 0.2653, "lr": 9.969158493204067e-09, "epoch": 0.9726792958606082, "percentage": 97.28, "elapsed_time": "2 days, 1:12:42", "remaining_time": "1:22:32"}
|
||||
{"current_steps": 2550, "total_steps": 2611, "loss": 0.2691, "lr": 7.393525142262992e-09, "epoch": 0.9765087419073035, "percentage": 97.66, "elapsed_time": "2 days, 1:24:08", "remaining_time": "1:10:54"}
|
||||
{"current_steps": 2560, "total_steps": 2611, "loss": 0.2694, "lr": 5.201617140510318e-09, "epoch": 0.9803381879539987, "percentage": 98.05, "elapsed_time": "2 days, 1:35:43", "remaining_time": "0:59:16"}
|
||||
{"current_steps": 2570, "total_steps": 2611, "loss": 0.2592, "lr": 3.3937719221427413e-09, "epoch": 0.9841676340006941, "percentage": 98.43, "elapsed_time": "2 days, 1:47:20", "remaining_time": "0:47:39"}
|
||||
{"current_steps": 2580, "total_steps": 2611, "loss": 0.2641, "lr": 1.9702677966507157e-09, "epoch": 0.9879970800473894, "percentage": 98.81, "elapsed_time": "2 days, 1:58:58", "remaining_time": "0:36:02"}
|
||||
{"current_steps": 2590, "total_steps": 2611, "loss": 0.2621, "lr": 9.31323905974113e-10, "epoch": 0.9918265260940847, "percentage": 99.2, "elapsed_time": "2 days, 2:10:29", "remaining_time": "0:24:24"}
|
||||
{"current_steps": 2600, "total_steps": 2611, "loss": 0.2672, "lr": 2.7710019076532257e-10, "epoch": 0.99565597214078, "percentage": 99.58, "elapsed_time": "2 days, 2:22:00", "remaining_time": "0:12:47"}
|
||||
{"current_steps": 2610, "total_steps": 2611, "loss": 0.2736, "lr": 7.697365768943865e-12, "epoch": 0.9994854181874753, "percentage": 99.96, "elapsed_time": "2 days, 2:33:39", "remaining_time": "0:01:09"}
|
||||
{"current_steps": 2611, "total_steps": 2611, "epoch": 0.9998683627921449, "percentage": 100.0, "elapsed_time": "2 days, 2:36:29", "remaining_time": "0:00:00"}
|
||||
1861
trainer_state.json
Normal file
1861
trainer_state.json
Normal file
File diff suppressed because it is too large
Load Diff
3
training_args.bin
Normal file
3
training_args.bin
Normal file
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:66b412e370644b56185d16fd7d7d951b6564410c682558ce3ffb394f09f059b3
|
||||
size 7736
|
||||
27
training_config.yaml
Normal file
27
training_config.yaml
Normal file
@@ -0,0 +1,27 @@
|
||||
bf16: true
|
||||
cutoff_len: 4096
|
||||
dataset: tulu3_mixture_math_reasoning
|
||||
ddp_timeout: 180000000
|
||||
deepspeed: examples/deepspeed/ds_z3_config.json
|
||||
do_train: true
|
||||
eval_strategy: 'no'
|
||||
finetuning_type: full
|
||||
gradient_accumulation_steps: 32
|
||||
learning_rate: 5.0e-06
|
||||
logging_steps: 10
|
||||
lr_scheduler_type: cosine
|
||||
model_name_or_path: meta-llama/Llama-3.1-8B
|
||||
num_train_epochs: 1.0
|
||||
output_dir: /scratch/pxm5426/runs/lora-exploration/llama-factory/Llama-3.1-8B_tulu3_mixture_math_reasoning_full_ebs128_lr5e-06
|
||||
overwrite_cache: true
|
||||
overwrite_output_dir: true
|
||||
per_device_train_batch_size: 2
|
||||
plot_loss: true
|
||||
preprocessing_num_workers: 12
|
||||
report_to: wandb
|
||||
save_steps: 600
|
||||
save_strategy: steps
|
||||
stage: sft
|
||||
template: tulu_v3
|
||||
trust_remote_code: true
|
||||
warmup_ratio: 0.03
|
||||
760
zero_to_fp32.py
Normal file
760
zero_to_fp32.py
Normal file
@@ -0,0 +1,760 @@
|
||||
#!/usr/bin/env python
|
||||
|
||||
# Copyright (c) Microsoft Corporation.
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
# DeepSpeed Team
|
||||
|
||||
# This script extracts fp32 consolidated weights from a zero 1, 2 and 3 DeepSpeed checkpoints. It gets
|
||||
# copied into the top level checkpoint dir, so the user can easily do the conversion at any point in
|
||||
# the future. Once extracted, the weights don't require DeepSpeed and can be used in any
|
||||
# application.
|
||||
#
|
||||
# example:
|
||||
# python zero_to_fp32.py . output_dir/
|
||||
# or
|
||||
# python zero_to_fp32.py . output_dir/ --safe_serialization
|
||||
|
||||
import argparse
|
||||
import torch
|
||||
import glob
|
||||
import math
|
||||
import os
|
||||
import re
|
||||
import gc
|
||||
import json
|
||||
import numpy as np
|
||||
from tqdm import tqdm
|
||||
from collections import OrderedDict
|
||||
from dataclasses import dataclass
|
||||
|
||||
# while this script doesn't use deepspeed to recover data, since the checkpoints are pickled with
|
||||
# DeepSpeed data structures it has to be available in the current python environment.
|
||||
from deepspeed.utils import logger
|
||||
from deepspeed.checkpoint.constants import (DS_VERSION, OPTIMIZER_STATE_DICT, SINGLE_PARTITION_OF_FP32_GROUPS,
|
||||
FP32_FLAT_GROUPS, ZERO_STAGE, PARTITION_COUNT, PARAM_SHAPES, BUFFER_NAMES,
|
||||
FROZEN_PARAM_SHAPES, FROZEN_PARAM_FRAGMENTS)
|
||||
|
||||
|
||||
@dataclass
|
||||
class zero_model_state:
|
||||
buffers: dict()
|
||||
param_shapes: dict()
|
||||
shared_params: list
|
||||
ds_version: int
|
||||
frozen_param_shapes: dict()
|
||||
frozen_param_fragments: dict()
|
||||
|
||||
|
||||
debug = 0
|
||||
|
||||
# load to cpu
|
||||
device = torch.device('cpu')
|
||||
|
||||
|
||||
def atoi(text):
|
||||
return int(text) if text.isdigit() else text
|
||||
|
||||
|
||||
def natural_keys(text):
|
||||
'''
|
||||
alist.sort(key=natural_keys) sorts in human order
|
||||
http://nedbatchelder.com/blog/200712/human_sorting.html
|
||||
(See Toothy's implementation in the comments)
|
||||
'''
|
||||
return [atoi(c) for c in re.split(r'(\d+)', text)]
|
||||
|
||||
|
||||
def get_model_state_file(checkpoint_dir, zero_stage):
|
||||
if not os.path.isdir(checkpoint_dir):
|
||||
raise FileNotFoundError(f"Directory '{checkpoint_dir}' doesn't exist")
|
||||
|
||||
# there should be only one file
|
||||
if zero_stage <= 2:
|
||||
file = os.path.join(checkpoint_dir, "mp_rank_00_model_states.pt")
|
||||
elif zero_stage == 3:
|
||||
file = os.path.join(checkpoint_dir, "zero_pp_rank_0_mp_rank_00_model_states.pt")
|
||||
|
||||
if not os.path.exists(file):
|
||||
raise FileNotFoundError(f"can't find model states file at '{file}'")
|
||||
|
||||
return file
|
||||
|
||||
|
||||
def get_checkpoint_files(checkpoint_dir, glob_pattern):
|
||||
# XXX: need to test that this simple glob rule works for multi-node setup too
|
||||
ckpt_files = sorted(glob.glob(os.path.join(checkpoint_dir, glob_pattern)), key=natural_keys)
|
||||
|
||||
if len(ckpt_files) == 0:
|
||||
raise FileNotFoundError(f"can't find {glob_pattern} files in directory '{checkpoint_dir}'")
|
||||
|
||||
return ckpt_files
|
||||
|
||||
|
||||
def get_optim_files(checkpoint_dir):
|
||||
return get_checkpoint_files(checkpoint_dir, "*_optim_states.pt")
|
||||
|
||||
|
||||
def get_model_state_files(checkpoint_dir):
|
||||
return get_checkpoint_files(checkpoint_dir, "*_model_states.pt")
|
||||
|
||||
|
||||
def parse_model_states(files):
|
||||
zero_model_states = []
|
||||
for file in files:
|
||||
state_dict = torch.load(file, map_location=device, weights_only=False)
|
||||
|
||||
if BUFFER_NAMES not in state_dict:
|
||||
raise ValueError(f"{file} is not a model state checkpoint")
|
||||
buffer_names = state_dict[BUFFER_NAMES]
|
||||
if debug:
|
||||
print("Found buffers:", buffer_names)
|
||||
|
||||
# recover just the buffers while restoring them to fp32 if they were saved in fp16
|
||||
buffers = {k: v.float() for k, v in state_dict["module"].items() if k in buffer_names}
|
||||
param_shapes = state_dict[PARAM_SHAPES]
|
||||
|
||||
# collect parameters that are included in param_shapes
|
||||
param_names = []
|
||||
for s in param_shapes:
|
||||
for name in s.keys():
|
||||
param_names.append(name)
|
||||
|
||||
# update with frozen parameters
|
||||
frozen_param_shapes = state_dict.get(FROZEN_PARAM_SHAPES, None)
|
||||
if frozen_param_shapes is not None:
|
||||
if debug:
|
||||
print(f"Found frozen_param_shapes: {frozen_param_shapes}")
|
||||
param_names += list(frozen_param_shapes.keys())
|
||||
|
||||
# handle shared params
|
||||
shared_params = [[k, v] for k, v in state_dict["shared_params"].items()]
|
||||
|
||||
ds_version = state_dict.get(DS_VERSION, None)
|
||||
|
||||
frozen_param_fragments = state_dict.get(FROZEN_PARAM_FRAGMENTS, None)
|
||||
|
||||
z_model_state = zero_model_state(buffers=buffers,
|
||||
param_shapes=param_shapes,
|
||||
shared_params=shared_params,
|
||||
ds_version=ds_version,
|
||||
frozen_param_shapes=frozen_param_shapes,
|
||||
frozen_param_fragments=frozen_param_fragments)
|
||||
zero_model_states.append(z_model_state)
|
||||
|
||||
return zero_model_states
|
||||
|
||||
|
||||
def parse_optim_states(files, ds_checkpoint_dir):
|
||||
total_files = len(files)
|
||||
state_dicts = []
|
||||
for f in tqdm(files, desc='Loading checkpoint shards'):
|
||||
state_dict = torch.load(f, map_location=device, mmap=True, weights_only=False)
|
||||
# immediately discard the potentially huge 2 optimizer states as we only care for fp32 master weights
|
||||
# and also handle the case where it was already removed by another helper script
|
||||
state_dict["optimizer_state_dict"].pop("optimizer_state_dict", None)
|
||||
state_dicts.append(state_dict)
|
||||
|
||||
if not ZERO_STAGE in state_dicts[0][OPTIMIZER_STATE_DICT]:
|
||||
raise ValueError(f"{files[0]} is not a zero checkpoint")
|
||||
zero_stage = state_dicts[0][OPTIMIZER_STATE_DICT][ZERO_STAGE]
|
||||
world_size = state_dicts[0][OPTIMIZER_STATE_DICT][PARTITION_COUNT]
|
||||
|
||||
# For ZeRO-2 each param group can have different partition_count as data parallelism for expert
|
||||
# parameters can be different from data parallelism for non-expert parameters. So we can just
|
||||
# use the max of the partition_count to get the dp world_size.
|
||||
|
||||
if type(world_size) is list:
|
||||
world_size = max(world_size)
|
||||
|
||||
if world_size != total_files:
|
||||
raise ValueError(
|
||||
f"Expected {world_size} of '*_optim_states.pt' under '{ds_checkpoint_dir}' but found {total_files} files. "
|
||||
"Possibly due to an overwrite of an old checkpoint, or a checkpoint didn't get saved by one or more processes."
|
||||
)
|
||||
|
||||
# the groups are named differently in each stage
|
||||
if zero_stage <= 2:
|
||||
fp32_groups_key = SINGLE_PARTITION_OF_FP32_GROUPS
|
||||
elif zero_stage == 3:
|
||||
fp32_groups_key = FP32_FLAT_GROUPS
|
||||
else:
|
||||
raise ValueError(f"unknown zero stage {zero_stage}")
|
||||
|
||||
fp32_flat_groups = [state_dicts[i][OPTIMIZER_STATE_DICT][fp32_groups_key] for i in range(len(state_dicts))]
|
||||
return zero_stage, world_size, fp32_flat_groups
|
||||
|
||||
|
||||
def _get_fp32_state_dict_from_zero_checkpoint(ds_checkpoint_dir, exclude_frozen_parameters):
|
||||
"""
|
||||
Returns fp32 state_dict reconstructed from ds checkpoint
|
||||
|
||||
Args:
|
||||
- ``ds_checkpoint_dir``: path to the deepspeed checkpoint folder (where the optimizer files are)
|
||||
|
||||
"""
|
||||
print(f"Processing zero checkpoint '{ds_checkpoint_dir}'")
|
||||
|
||||
optim_files = get_optim_files(ds_checkpoint_dir)
|
||||
zero_stage, world_size, fp32_flat_groups = parse_optim_states(optim_files, ds_checkpoint_dir)
|
||||
print(f"Detected checkpoint of type zero stage {zero_stage}, world_size: {world_size}")
|
||||
|
||||
model_files = get_model_state_files(ds_checkpoint_dir)
|
||||
|
||||
zero_model_states = parse_model_states(model_files)
|
||||
print(f'Parsing checkpoint created by deepspeed=={zero_model_states[0].ds_version}')
|
||||
|
||||
if zero_stage <= 2:
|
||||
return _get_fp32_state_dict_from_zero2_checkpoint(world_size, fp32_flat_groups, zero_model_states,
|
||||
exclude_frozen_parameters)
|
||||
elif zero_stage == 3:
|
||||
return _get_fp32_state_dict_from_zero3_checkpoint(world_size, fp32_flat_groups, zero_model_states,
|
||||
exclude_frozen_parameters)
|
||||
|
||||
|
||||
def _zero2_merge_frozen_params(state_dict, zero_model_states):
|
||||
if zero_model_states[0].frozen_param_shapes is None or len(zero_model_states[0].frozen_param_shapes) == 0:
|
||||
return
|
||||
|
||||
frozen_param_shapes = zero_model_states[0].frozen_param_shapes
|
||||
frozen_param_fragments = zero_model_states[0].frozen_param_fragments
|
||||
|
||||
if debug:
|
||||
num_elem = sum(s.numel() for s in frozen_param_shapes.values())
|
||||
print(f'rank 0: {FROZEN_PARAM_SHAPES}.numel = {num_elem}')
|
||||
|
||||
wanted_params = len(frozen_param_shapes)
|
||||
wanted_numel = sum(s.numel() for s in frozen_param_shapes.values())
|
||||
avail_numel = sum([p.numel() for p in frozen_param_fragments.values()])
|
||||
print(f'Frozen params: Have {avail_numel} numels to process.')
|
||||
print(f'Frozen params: Need {wanted_numel} numels in {wanted_params} params')
|
||||
|
||||
total_params = 0
|
||||
total_numel = 0
|
||||
for name, shape in frozen_param_shapes.items():
|
||||
total_params += 1
|
||||
unpartitioned_numel = shape.numel()
|
||||
total_numel += unpartitioned_numel
|
||||
|
||||
state_dict[name] = frozen_param_fragments[name]
|
||||
|
||||
if debug:
|
||||
print(f"{name} full shape: {shape} unpartitioned numel {unpartitioned_numel} ")
|
||||
|
||||
print(f"Reconstructed Frozen fp32 state dict with {total_params} params {total_numel} elements")
|
||||
|
||||
|
||||
def _has_callable(obj, fn):
|
||||
attr = getattr(obj, fn, None)
|
||||
return callable(attr)
|
||||
|
||||
|
||||
def _zero2_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states):
|
||||
param_shapes = zero_model_states[0].param_shapes
|
||||
|
||||
# Reconstruction protocol:
|
||||
#
|
||||
# XXX: document this
|
||||
|
||||
if debug:
|
||||
for i in range(world_size):
|
||||
for j in range(len(fp32_flat_groups[0])):
|
||||
print(f"{FP32_FLAT_GROUPS}[{i}][{j}].shape={fp32_flat_groups[i][j].shape}")
|
||||
|
||||
# XXX: memory usage doubles here (zero2)
|
||||
num_param_groups = len(fp32_flat_groups[0])
|
||||
merged_single_partition_of_fp32_groups = []
|
||||
for i in range(num_param_groups):
|
||||
merged_partitions = [sd[i] for sd in fp32_flat_groups]
|
||||
full_single_fp32_vector = torch.cat(merged_partitions, 0)
|
||||
merged_single_partition_of_fp32_groups.append(full_single_fp32_vector)
|
||||
avail_numel = sum(
|
||||
[full_single_fp32_vector.numel() for full_single_fp32_vector in merged_single_partition_of_fp32_groups])
|
||||
|
||||
if debug:
|
||||
wanted_params = sum([len(shapes) for shapes in param_shapes])
|
||||
wanted_numel = sum([sum(shape.numel() for shape in shapes.values()) for shapes in param_shapes])
|
||||
# not asserting if there is a mismatch due to possible padding
|
||||
print(f"Have {avail_numel} numels to process.")
|
||||
print(f"Need {wanted_numel} numels in {wanted_params} params.")
|
||||
|
||||
# params
|
||||
# XXX: for huge models that can't fit into the host's RAM we will have to recode this to support
|
||||
# out-of-core computing solution
|
||||
total_numel = 0
|
||||
total_params = 0
|
||||
for shapes, full_single_fp32_vector in zip(param_shapes, merged_single_partition_of_fp32_groups):
|
||||
offset = 0
|
||||
avail_numel = full_single_fp32_vector.numel()
|
||||
for name, shape in shapes.items():
|
||||
|
||||
unpartitioned_numel = shape.numel() if _has_callable(shape, 'numel') else math.prod(shape)
|
||||
total_numel += unpartitioned_numel
|
||||
total_params += 1
|
||||
|
||||
if debug:
|
||||
print(f"{name} full shape: {shape} unpartitioned numel {unpartitioned_numel} ")
|
||||
state_dict[name] = full_single_fp32_vector.narrow(0, offset, unpartitioned_numel).view(shape)
|
||||
offset += unpartitioned_numel
|
||||
|
||||
# Z2 started to align to 2*world_size to improve nccl performance. Therefore both offset and
|
||||
# avail_numel can differ by anywhere between 0..2*world_size. Due to two unrelated complex
|
||||
# paddings performed in the code it's almost impossible to predict the exact numbers w/o the
|
||||
# live optimizer object, so we are checking that the numbers are within the right range
|
||||
align_to = 2 * world_size
|
||||
|
||||
def zero2_align(x):
|
||||
return align_to * math.ceil(x / align_to)
|
||||
|
||||
if debug:
|
||||
print(f"original offset={offset}, avail_numel={avail_numel}")
|
||||
|
||||
offset = zero2_align(offset)
|
||||
avail_numel = zero2_align(avail_numel)
|
||||
|
||||
if debug:
|
||||
print(f"aligned offset={offset}, avail_numel={avail_numel}")
|
||||
|
||||
# Sanity check
|
||||
if offset != avail_numel:
|
||||
raise ValueError(f"consumed {offset} numels out of {avail_numel} - something is wrong")
|
||||
|
||||
print(f"Reconstructed fp32 state dict with {total_params} params {total_numel} elements")
|
||||
|
||||
|
||||
def _get_fp32_state_dict_from_zero2_checkpoint(world_size, fp32_flat_groups, zero_model_states,
|
||||
exclude_frozen_parameters):
|
||||
state_dict = OrderedDict()
|
||||
|
||||
# buffers
|
||||
buffers = zero_model_states[0].buffers
|
||||
state_dict.update(buffers)
|
||||
if debug:
|
||||
print(f"added {len(buffers)} buffers")
|
||||
|
||||
if not exclude_frozen_parameters:
|
||||
_zero2_merge_frozen_params(state_dict, zero_model_states)
|
||||
|
||||
_zero2_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states)
|
||||
|
||||
# recover shared parameters
|
||||
for pair in zero_model_states[0].shared_params:
|
||||
if pair[1] in state_dict:
|
||||
state_dict[pair[0]] = state_dict[pair[1]]
|
||||
|
||||
return state_dict
|
||||
|
||||
|
||||
def zero3_partitioned_param_info(unpartitioned_numel, world_size):
|
||||
remainder = unpartitioned_numel % world_size
|
||||
padding_numel = (world_size - remainder) if remainder else 0
|
||||
partitioned_numel = math.ceil(unpartitioned_numel / world_size)
|
||||
return partitioned_numel, padding_numel
|
||||
|
||||
|
||||
def _zero3_merge_frozen_params(state_dict, world_size, zero_model_states):
|
||||
if zero_model_states[0].frozen_param_shapes is None or len(zero_model_states[0].frozen_param_shapes) == 0:
|
||||
return
|
||||
|
||||
if debug:
|
||||
for i in range(world_size):
|
||||
num_elem = sum(s.numel() for s in zero_model_states[i].frozen_param_fragments.values())
|
||||
print(f'rank {i}: {FROZEN_PARAM_SHAPES}.numel = {num_elem}')
|
||||
|
||||
frozen_param_shapes = zero_model_states[0].frozen_param_shapes
|
||||
wanted_params = len(frozen_param_shapes)
|
||||
wanted_numel = sum(s.numel() for s in frozen_param_shapes.values())
|
||||
avail_numel = sum([p.numel() for p in zero_model_states[0].frozen_param_fragments.values()]) * world_size
|
||||
print(f'Frozen params: Have {avail_numel} numels to process.')
|
||||
print(f'Frozen params: Need {wanted_numel} numels in {wanted_params} params')
|
||||
|
||||
total_params = 0
|
||||
total_numel = 0
|
||||
for name, shape in zero_model_states[0].frozen_param_shapes.items():
|
||||
total_params += 1
|
||||
unpartitioned_numel = shape.numel()
|
||||
total_numel += unpartitioned_numel
|
||||
|
||||
param_frags = tuple(model_state.frozen_param_fragments[name] for model_state in zero_model_states)
|
||||
state_dict[name] = torch.cat(param_frags, 0).narrow(0, 0, unpartitioned_numel).view(shape)
|
||||
|
||||
partitioned_numel, partitioned_padding_numel = zero3_partitioned_param_info(unpartitioned_numel, world_size)
|
||||
|
||||
if debug:
|
||||
print(
|
||||
f"Frozen params: {total_params} {name} full shape: {shape} partition0 numel={partitioned_numel} partitioned_padding_numel={partitioned_padding_numel}"
|
||||
)
|
||||
|
||||
print(f"Reconstructed Frozen fp32 state dict with {total_params} params {total_numel} elements")
|
||||
|
||||
|
||||
class GatheredTensor:
|
||||
"""
|
||||
A pseudo tensor that collects partitioned weights.
|
||||
It is more memory efficient when there are multiple groups.
|
||||
"""
|
||||
|
||||
def __init__(self, flat_groups, flat_groups_offset, offset, partitioned_numel, shape):
|
||||
self.flat_groups = flat_groups
|
||||
self.flat_groups_offset = flat_groups_offset
|
||||
self.offset = offset
|
||||
self.partitioned_numel = partitioned_numel
|
||||
self.shape = shape
|
||||
self.dtype = self.flat_groups[0][0].dtype
|
||||
|
||||
def contiguous(self):
|
||||
"""
|
||||
Merge partitioned weights from flat_groups into a single tensor.
|
||||
"""
|
||||
end_idx = self.offset + self.partitioned_numel
|
||||
world_size = len(self.flat_groups)
|
||||
pad_flat_param_chunks = []
|
||||
|
||||
for rank_i in range(world_size):
|
||||
# for each rank, we need to collect weights from related group/groups
|
||||
flat_groups_at_rank_i = self.flat_groups[rank_i]
|
||||
start_group_id = None
|
||||
end_group_id = None
|
||||
for group_id in range(len(self.flat_groups_offset)):
|
||||
if self.flat_groups_offset[group_id] <= self.offset < self.flat_groups_offset[group_id + 1]:
|
||||
start_group_id = group_id
|
||||
if self.flat_groups_offset[group_id] < end_idx <= self.flat_groups_offset[group_id + 1]:
|
||||
end_group_id = group_id
|
||||
break
|
||||
# collect weights from related group/groups
|
||||
for group_id in range(start_group_id, end_group_id + 1):
|
||||
flat_tensor = flat_groups_at_rank_i[group_id]
|
||||
start_offset = self.offset - self.flat_groups_offset[group_id]
|
||||
end_offset = min(end_idx, self.flat_groups_offset[group_id + 1]) - self.flat_groups_offset[group_id]
|
||||
pad_flat_param_chunks.append(flat_tensor[start_offset:end_offset])
|
||||
|
||||
# collect weights from all ranks
|
||||
pad_flat_param = torch.cat(pad_flat_param_chunks, dim=0)
|
||||
param = pad_flat_param[:self.shape.numel()].view(self.shape).contiguous()
|
||||
return param
|
||||
|
||||
|
||||
def _zero3_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states):
|
||||
param_shapes = zero_model_states[0].param_shapes
|
||||
avail_numel = sum([flat_group.numel() for flat_group in fp32_flat_groups[0]]) * world_size
|
||||
|
||||
# Reconstruction protocol: For zero3 we need to zip the partitions together at boundary of each
|
||||
# param, re-consolidating each param, while dealing with padding if any
|
||||
|
||||
# merge list of dicts, preserving order
|
||||
param_shapes = {k: v for d in param_shapes for k, v in d.items()}
|
||||
|
||||
if debug:
|
||||
for i in range(world_size):
|
||||
print(f"{FP32_FLAT_GROUPS}[{i}].shape={fp32_flat_groups[i].shape}")
|
||||
|
||||
wanted_params = len(param_shapes)
|
||||
wanted_numel = sum(shape.numel() for shape in param_shapes.values())
|
||||
# not asserting if there is a mismatch due to possible padding
|
||||
avail_numel = fp32_flat_groups[0].numel() * world_size
|
||||
print(f"Trainable params: Have {avail_numel} numels to process.")
|
||||
print(f"Trainable params: Need {wanted_numel} numels in {wanted_params} params.")
|
||||
|
||||
# params
|
||||
# XXX: for huge models that can't fit into the host's RAM we will have to recode this to support
|
||||
# out-of-core computing solution
|
||||
offset = 0
|
||||
total_numel = 0
|
||||
total_params = 0
|
||||
flat_groups_offset = [0] + list(np.cumsum([flat_tensor.numel() for flat_tensor in fp32_flat_groups[0]]))
|
||||
for name, shape in tqdm(param_shapes.items(), desc='Gathering sharded weights'):
|
||||
unpartitioned_numel = shape.numel()
|
||||
total_numel += unpartitioned_numel
|
||||
total_params += 1
|
||||
partitioned_numel, partitioned_padding_numel = zero3_partitioned_param_info(unpartitioned_numel, world_size)
|
||||
|
||||
if debug:
|
||||
print(
|
||||
f"Trainable params: {total_params} {name} full shape: {shape} partition0 numel={partitioned_numel} partitioned_padding_numel={partitioned_padding_numel}"
|
||||
)
|
||||
|
||||
# memory efficient tensor
|
||||
tensor = GatheredTensor(fp32_flat_groups, flat_groups_offset, offset, partitioned_numel, shape)
|
||||
state_dict[name] = tensor
|
||||
offset += partitioned_numel
|
||||
|
||||
offset *= world_size
|
||||
|
||||
# Sanity check
|
||||
if offset != avail_numel:
|
||||
raise ValueError(f"consumed {offset} numels out of {avail_numel} - something is wrong")
|
||||
|
||||
print(f"Reconstructed Trainable fp32 state dict with {total_params} params {total_numel} elements")
|
||||
|
||||
|
||||
def _get_fp32_state_dict_from_zero3_checkpoint(world_size, fp32_flat_groups, zero_model_states,
|
||||
exclude_frozen_parameters):
|
||||
state_dict = OrderedDict()
|
||||
|
||||
# buffers
|
||||
buffers = zero_model_states[0].buffers
|
||||
state_dict.update(buffers)
|
||||
if debug:
|
||||
print(f"added {len(buffers)} buffers")
|
||||
|
||||
if not exclude_frozen_parameters:
|
||||
_zero3_merge_frozen_params(state_dict, world_size, zero_model_states)
|
||||
|
||||
_zero3_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states)
|
||||
|
||||
# recover shared parameters
|
||||
for pair in zero_model_states[0].shared_params:
|
||||
if pair[1] in state_dict:
|
||||
state_dict[pair[0]] = state_dict[pair[1]]
|
||||
|
||||
return state_dict
|
||||
|
||||
|
||||
def to_torch_tensor(state_dict, return_empty_tensor=False):
|
||||
"""
|
||||
Convert state_dict of GatheredTensor to torch tensor
|
||||
"""
|
||||
torch_state_dict = {}
|
||||
converted_tensors = {}
|
||||
for name, tensor in state_dict.items():
|
||||
tensor_id = id(tensor)
|
||||
if tensor_id in converted_tensors: # shared tensors
|
||||
shared_tensor = torch_state_dict[converted_tensors[tensor_id]]
|
||||
torch_state_dict[name] = shared_tensor
|
||||
else:
|
||||
converted_tensors[tensor_id] = name
|
||||
if return_empty_tensor:
|
||||
torch_state_dict[name] = torch.empty(tensor.shape, dtype=tensor.dtype)
|
||||
else:
|
||||
torch_state_dict[name] = tensor.contiguous()
|
||||
return torch_state_dict
|
||||
|
||||
|
||||
def get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir,
|
||||
tag=None,
|
||||
exclude_frozen_parameters=False,
|
||||
lazy_mode=False):
|
||||
"""
|
||||
Convert ZeRO 2 or 3 checkpoint into a single fp32 consolidated state_dict that can be loaded with
|
||||
``load_state_dict()`` and used for training without DeepSpeed or shared with others, for example
|
||||
via a model hub.
|
||||
|
||||
Args:
|
||||
- ``checkpoint_dir``: path to the desired checkpoint folder
|
||||
- ``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``
|
||||
- ``exclude_frozen_parameters``: exclude frozen parameters
|
||||
- ``lazy_mode``: get state_dict in lazy mode. It returns a dict of pesduo tensor instead of torch tensor, which is more memory efficient.
|
||||
Convert the pesduo tensor to torch tensor by ``.contiguous()``
|
||||
|
||||
Returns:
|
||||
- pytorch ``state_dict``
|
||||
|
||||
A typical usage might be ::
|
||||
|
||||
from deepspeed.utils.zero_to_fp32 import get_fp32_state_dict_from_zero_checkpoint
|
||||
# do the training and checkpoint saving
|
||||
state_dict = get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir) # already on cpu
|
||||
model = model.cpu() # move to cpu
|
||||
model.load_state_dict(state_dict)
|
||||
# submit to model hub or save the model to share with others
|
||||
|
||||
In this example the ``model`` will no longer be usable in the deepspeed context of the same
|
||||
application. i.e. you will need to re-initialize the deepspeed engine, since
|
||||
``model.load_state_dict(state_dict)`` will remove all the deepspeed magic from it.
|
||||
|
||||
If you want it all done for you, use ``load_state_dict_from_zero_checkpoint`` instead.
|
||||
|
||||
Note: the above usage may not work if your application doesn't have sufficient free CPU memory.
|
||||
You may need to use the offline approach using the ``zero_to_fp32.py`` script that is saved with
|
||||
the checkpoint. Or you can load state_dict in lazy mode ::
|
||||
|
||||
from deepspeed.utils.zero_to_fp32 import get_fp32_state_dict_from_zero_checkpoint
|
||||
state_dict = get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir, lazy_mode=True) # not on cpu
|
||||
for name, lazy_tensor in state_dict.item():
|
||||
tensor = lazy_tensor.contiguous() # to cpu
|
||||
print(name, tensor)
|
||||
# del tensor to release memory if it no longer in use
|
||||
"""
|
||||
if tag is None:
|
||||
latest_path = os.path.join(checkpoint_dir, 'latest')
|
||||
if os.path.isfile(latest_path):
|
||||
with open(latest_path, 'r') as fd:
|
||||
tag = fd.read().strip()
|
||||
else:
|
||||
raise ValueError(f"Unable to find 'latest' file at {latest_path}")
|
||||
|
||||
ds_checkpoint_dir = os.path.join(checkpoint_dir, tag)
|
||||
|
||||
if not os.path.isdir(ds_checkpoint_dir):
|
||||
raise FileNotFoundError(f"Directory '{ds_checkpoint_dir}' doesn't exist")
|
||||
|
||||
state_dict = _get_fp32_state_dict_from_zero_checkpoint(ds_checkpoint_dir, exclude_frozen_parameters)
|
||||
if lazy_mode:
|
||||
return state_dict
|
||||
else:
|
||||
return to_torch_tensor(state_dict)
|
||||
|
||||
|
||||
def convert_zero_checkpoint_to_fp32_state_dict(checkpoint_dir,
|
||||
output_dir,
|
||||
max_shard_size="5GB",
|
||||
safe_serialization=False,
|
||||
tag=None,
|
||||
exclude_frozen_parameters=False):
|
||||
"""
|
||||
Convert ZeRO 2 or 3 checkpoint into a single fp32 consolidated ``state_dict`` file that can be
|
||||
loaded with ``torch.load(file)`` + ``load_state_dict()`` and used for training without DeepSpeed.
|
||||
|
||||
Args:
|
||||
- ``checkpoint_dir``: path to the desired checkpoint folder. (one that contains the tag-folder, like ``global_step14``)
|
||||
- ``output_dir``: directory to the pytorch fp32 state_dict output files
|
||||
- ``max_shard_size``: the maximum size for a checkpoint before being sharded, default value is 5GB
|
||||
- ``safe_serialization``: whether to save the model using `safetensors` or the traditional PyTorch way (that uses `pickle`).
|
||||
- ``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``
|
||||
- ``exclude_frozen_parameters``: exclude frozen parameters
|
||||
"""
|
||||
|
||||
# Dependency pre-check
|
||||
if safe_serialization:
|
||||
try:
|
||||
from safetensors.torch import save_file
|
||||
except ImportError:
|
||||
print('If you want to use `safe_serialization`, please `pip install safetensors`')
|
||||
raise
|
||||
if max_shard_size is not None:
|
||||
try:
|
||||
from huggingface_hub import split_torch_state_dict_into_shards
|
||||
except ImportError:
|
||||
print('If you want to use `max_shard_size`, please `pip install huggingface_hub`')
|
||||
raise
|
||||
|
||||
# Convert zero checkpoint to state_dict
|
||||
state_dict = get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir,
|
||||
tag,
|
||||
exclude_frozen_parameters,
|
||||
lazy_mode=True)
|
||||
|
||||
# Shard the model if it is too big.
|
||||
weights_name = "model.safetensors" if safe_serialization else "pytorch_model.bin"
|
||||
if max_shard_size is not None:
|
||||
filename_pattern = weights_name.replace(".bin", "{suffix}.bin").replace(".safetensors", "{suffix}.safetensors")
|
||||
# an memory-efficient approach for sharding
|
||||
empty_state_dict = to_torch_tensor(state_dict, return_empty_tensor=True)
|
||||
state_dict_split = split_torch_state_dict_into_shards(empty_state_dict,
|
||||
filename_pattern=filename_pattern,
|
||||
max_shard_size=max_shard_size)
|
||||
else:
|
||||
from collections import namedtuple
|
||||
StateDictSplit = namedtuple("StateDictSplit", ["is_sharded", "filename_to_tensors"])
|
||||
state_dict_split = StateDictSplit(is_sharded=False,
|
||||
filename_to_tensors={weights_name: list(state_dict.keys())})
|
||||
|
||||
# Save the model by shard
|
||||
os.makedirs(output_dir, exist_ok=True)
|
||||
filename_to_tensors = state_dict_split.filename_to_tensors.items()
|
||||
for shard_file, tensors in tqdm(filename_to_tensors, desc="Saving checkpoint shards"):
|
||||
shard_state_dict = {tensor_name: state_dict[tensor_name] for tensor_name in tensors}
|
||||
shard_state_dict = to_torch_tensor(shard_state_dict)
|
||||
output_path = os.path.join(output_dir, shard_file)
|
||||
if safe_serialization:
|
||||
save_file(shard_state_dict, output_path, metadata={"format": "pt"})
|
||||
else:
|
||||
torch.save(shard_state_dict, output_path)
|
||||
# release the memory of current shard
|
||||
for tensor_name in list(shard_state_dict.keys()):
|
||||
del state_dict[tensor_name]
|
||||
del shard_state_dict[tensor_name]
|
||||
del shard_state_dict
|
||||
gc.collect()
|
||||
|
||||
# Save index if sharded
|
||||
if state_dict_split.is_sharded:
|
||||
index = {
|
||||
"metadata": state_dict_split.metadata,
|
||||
"weight_map": state_dict_split.tensor_to_filename,
|
||||
}
|
||||
save_index_file = "model.safetensors.index.json" if safe_serialization else "pytorch_model.bin.index.json"
|
||||
save_index_file = os.path.join(output_dir, save_index_file)
|
||||
with open(save_index_file, "w", encoding="utf-8") as f:
|
||||
content = json.dumps(index, indent=2, sort_keys=True) + "\n"
|
||||
f.write(content)
|
||||
|
||||
|
||||
def load_state_dict_from_zero_checkpoint(model, checkpoint_dir, tag=None):
|
||||
"""
|
||||
1. Put the provided model to cpu
|
||||
2. Convert ZeRO 2 or 3 checkpoint into a single fp32 consolidated ``state_dict``
|
||||
3. Load it into the provided model
|
||||
|
||||
Args:
|
||||
- ``model``: the model object to update
|
||||
- ``checkpoint_dir``: path to the desired checkpoint folder. (one that contains the tag-folder, like ``global_step14``)
|
||||
- ``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``
|
||||
|
||||
Returns:
|
||||
- ``model`: modified model
|
||||
|
||||
Make sure you have plenty of CPU memory available before you call this function. If you don't
|
||||
have enough use the ``zero_to_fp32.py`` utility to do the conversion. You will find it
|
||||
conveniently placed for you in the checkpoint folder.
|
||||
|
||||
A typical usage might be ::
|
||||
|
||||
from deepspeed.utils.zero_to_fp32 import load_state_dict_from_zero_checkpoint
|
||||
model = load_state_dict_from_zero_checkpoint(trainer.model, checkpoint_dir)
|
||||
# submit to model hub or save the model to share with others
|
||||
|
||||
Note, that once this was run, the ``model`` will no longer be usable in the deepspeed context
|
||||
of the same application. i.e. you will need to re-initialize the deepspeed engine, since
|
||||
``model.load_state_dict(state_dict)`` will remove all the deepspeed magic from it.
|
||||
|
||||
"""
|
||||
logger.info(f"Extracting fp32 weights")
|
||||
state_dict = get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir, tag)
|
||||
|
||||
logger.info(f"Overwriting model with fp32 weights")
|
||||
model = model.cpu()
|
||||
model.load_state_dict(state_dict, strict=False)
|
||||
|
||||
return model
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
parser = argparse.ArgumentParser()
|
||||
parser.add_argument("checkpoint_dir",
|
||||
type=str,
|
||||
help="path to the desired checkpoint folder, e.g., path/checkpoint-12")
|
||||
parser.add_argument("output_dir",
|
||||
type=str,
|
||||
help="directory to the pytorch fp32 state_dict output files"
|
||||
"(e.g. path/checkpoint-12-output/)")
|
||||
parser.add_argument(
|
||||
"--max_shard_size",
|
||||
type=str,
|
||||
default="5GB",
|
||||
help="The maximum size for a checkpoint before being sharded. Checkpoints shard will then be each of size"
|
||||
"lower than this size. If expressed as a string, needs to be digits followed by a unit (like `5MB`"
|
||||
"We default it to 5GB in order for models to be able to run easily on free-tier google colab instances"
|
||||
"without CPU OOM issues.")
|
||||
parser.add_argument(
|
||||
"--safe_serialization",
|
||||
default=False,
|
||||
action='store_true',
|
||||
help="Whether to save the model using `safetensors` or the traditional PyTorch way (that uses `pickle`).")
|
||||
parser.add_argument("-t",
|
||||
"--tag",
|
||||
type=str,
|
||||
default=None,
|
||||
help="checkpoint tag used as a unique identifier for checkpoint. e.g., global_step1")
|
||||
parser.add_argument("--exclude_frozen_parameters", action='store_true', help="exclude frozen parameters")
|
||||
parser.add_argument("-d", "--debug", action='store_true', help="enable debug")
|
||||
args = parser.parse_args()
|
||||
|
||||
debug = args.debug
|
||||
|
||||
convert_zero_checkpoint_to_fp32_state_dict(args.checkpoint_dir,
|
||||
args.output_dir,
|
||||
max_shard_size=args.max_shard_size,
|
||||
safe_serialization=args.safe_serialization,
|
||||
tag=args.tag,
|
||||
exclude_frozen_parameters=args.exclude_frozen_parameters)
|
||||
Reference in New Issue
Block a user