From 277bab5a50ff36b5441a45a7891b04b30e7f36d5 Mon Sep 17 00:00:00 2001 From: ModelHub XC Date: Sat, 18 Jul 2026 20:49:10 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=9D=E5=A7=8B=E5=8C=96=E9=A1=B9=E7=9B=AE?= =?UTF-8?q?=EF=BC=8C=E7=94=B1ModelHub=20XC=E7=A4=BE=E5=8C=BA=E6=8F=90?= =?UTF-8?q?=E4=BE=9B=E6=A8=A1=E5=9E=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Model: miiikiik/Qwen3-8B-music-coa-sft Source: Original Platform --- .gitattributes | 36 ++++++ README.md | 61 +++++++++ all_results.json | 8 ++ chat_template.jinja | 85 +++++++++++++ config.json | 71 +++++++++++ generation_config.json | 12 ++ model.safetensors | 3 + tokenizer.json | 3 + tokenizer_config.json | 16 +++ train_results.json | 8 ++ trainer_log.jsonl | 35 +++++ trainer_state.json | 281 +++++++++++++++++++++++++++++++++++++++++ training_args.bin | 3 + training_loss.png | Bin 0 -> 35328 bytes 14 files changed, 622 insertions(+) create mode 100644 .gitattributes create mode 100644 README.md create mode 100644 all_results.json create mode 100644 chat_template.jinja create mode 100644 config.json create mode 100644 generation_config.json create mode 100644 model.safetensors create mode 100644 tokenizer.json create mode 100644 tokenizer_config.json create mode 100644 train_results.json create mode 100644 trainer_log.jsonl create mode 100644 trainer_state.json create mode 100644 training_args.bin create mode 100644 training_loss.png diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..52373fe --- /dev/null +++ b/.gitattributes @@ -0,0 +1,36 @@ +*.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 diff --git a/README.md b/README.md new file mode 100644 index 0000000..26e2a24 --- /dev/null +++ b/README.md @@ -0,0 +1,61 @@ +--- +library_name: transformers +license: other +base_model: Qwen/Qwen3-8B +tags: +- llama-factory +- full +- generated_from_trainer +model-index: +- name: Qwen3-8B-music-coa-sft + results: [] +--- + + + +# Qwen3-8B-music-coa-sft + +This model is a fine-tuned version of [/mnt/tidal-alsh01/usr/zhongmeizhi/meiwangyi/models/Qwen3-8B-onto-fixed-traj](https://huggingface.co//mnt/tidal-alsh01/usr/zhongmeizhi/meiwangyi/models/Qwen3-8B-onto-fixed-traj) on the music_coa_sft dataset. + +## Model description + +More information needed + +## Intended uses & limitations + +More information needed + +## Training and evaluation data + +More information needed + +## Training procedure + +### Training hyperparameters + +The following hyperparameters were used during training: +- learning_rate: 1e-05 +- train_batch_size: 2 +- eval_batch_size: 8 +- seed: 42 +- distributed_type: multi-GPU +- num_devices: 8 +- gradient_accumulation_steps: 4 +- total_train_batch_size: 64 +- total_eval_batch_size: 64 +- optimizer: Use OptimizerNames.ADAMW_TORCH with betas=(0.9,0.999) and epsilon=1e-08 and optimizer_args=No additional optimizer arguments +- lr_scheduler_type: cosine +- lr_scheduler_warmup_steps: 0.1 +- num_epochs: 3.0 + +### Training results + + + +### Framework versions + +- Transformers 5.6.0 +- Pytorch 2.7.1+cu126 +- Datasets 3.4.1 +- Tokenizers 0.22.1 diff --git a/all_results.json b/all_results.json new file mode 100644 index 0000000..4130956 --- /dev/null +++ b/all_results.json @@ -0,0 +1,8 @@ +{ + "epoch": 3.0, + "total_flos": 76776714797056.0, + "train_loss": 0.08690919660139775, + "train_runtime": 2313.134, + "train_samples_per_second": 9.525, + "train_steps_per_second": 0.149 +} \ No newline at end of file diff --git a/chat_template.jinja b/chat_template.jinja new file mode 100644 index 0000000..699ff8d --- /dev/null +++ b/chat_template.jinja @@ -0,0 +1,85 @@ +{%- if tools %} + {{- '<|im_start|>system\n' }} + {%- if messages[0].role == 'system' %} + {{- messages[0].content + '\n\n' }} + {%- endif %} + {{- "# Tools\n\nYou may call one or more functions to assist with the user query.\n\nYou are provided with function signatures within XML tags:\n" }} + {%- for tool in tools %} + {{- "\n" }} + {{- tool | tojson }} + {%- endfor %} + {{- "\n\n\nFor each function call, return a json object with function name and arguments within XML tags:\n\n{\"name\": , \"arguments\": }\n<|im_end|>\n" }} +{%- else %} + {%- if messages[0].role == 'system' %} + {{- '<|im_start|>system\n' + messages[0].content + '<|im_end|>\n' }} + {%- endif %} +{%- endif %} +{%- set ns = namespace(multi_step_tool=true, last_query_index=messages|length - 1) %} +{%- for message in messages[::-1] %} + {%- set index = (messages|length - 1) - loop.index0 %} + {%- if ns.multi_step_tool and message.role == "user" and not(message.content.startswith('') and message.content.endswith('')) %} + {%- set ns.multi_step_tool = false %} + {%- set ns.last_query_index = index %} + {%- endif %} +{%- endfor %} +{%- for message in messages %} + {%- if (message.role == "user") or (message.role == "system" and not loop.first) %} + {{- '<|im_start|>' + message.role + '\n' + message.content + '<|im_end|>' + '\n' }} + {%- elif message.role == "assistant" %} + {%- set content = message.content %} + {%- set reasoning_content = '' %} + {%- if message.reasoning_content is defined and message.reasoning_content is not none %} + {%- set reasoning_content = message.reasoning_content %} + {%- else %} + {%- if '' in message.content %} + {%- set content = message.content.split('')[-1].lstrip('\n') %} + {%- set reasoning_content = message.content.split('')[0].rstrip('\n').split('')[-1].lstrip('\n') %} + {%- endif %} + {%- endif %} + {%- if loop.index0 > ns.last_query_index %} + {%- if loop.last or (not loop.last and reasoning_content) %} + {{- '<|im_start|>' + message.role + '\n\n' + reasoning_content.strip('\n') + '\n\n\n' + content.lstrip('\n') }} + {%- else %} + {{- '<|im_start|>' + message.role + '\n' + content }} + {%- endif %} + {%- else %} + {{- '<|im_start|>' + message.role + '\n' + content }} + {%- endif %} + {%- if message.tool_calls %} + {%- for tool_call in message.tool_calls %} + {%- if (loop.first and content) or (not loop.first) %} + {{- '\n' }} + {%- endif %} + {%- if tool_call.function %} + {%- set tool_call = tool_call.function %} + {%- endif %} + {{- '\n{"name": "' }} + {{- tool_call.name }} + {{- '", "arguments": ' }} + {%- if tool_call.arguments is string %} + {{- tool_call.arguments }} + {%- else %} + {{- tool_call.arguments | tojson }} + {%- endif %} + {{- '}\n' }} + {%- endfor %} + {%- endif %} + {{- '<|im_end|>\n' }} + {%- elif message.role == "tool" %} + {%- if loop.first or (messages[loop.index0 - 1].role != "tool") %} + {{- '<|im_start|>user' }} + {%- endif %} + {{- '\n\n' }} + {{- message.content }} + {{- '\n' }} + {%- if loop.last or (messages[loop.index0 + 1].role != "tool") %} + {{- '<|im_end|>\n' }} + {%- endif %} + {%- endif %} +{%- endfor %} +{%- if add_generation_prompt %} + {{- '<|im_start|>assistant\n' }} + {%- if enable_thinking is defined and enable_thinking is false %} + {{- '\n\n\n\n' }} + {%- endif %} +{%- endif %} \ No newline at end of file diff --git a/config.json b/config.json new file mode 100644 index 0000000..746f56e --- /dev/null +++ b/config.json @@ -0,0 +1,71 @@ +{ + "architectures": [ + "Qwen3ForCausalLM" + ], + "attention_bias": false, + "attention_dropout": 0.0, + "bos_token_id": null, + "dtype": "bfloat16", + "eos_token_id": 151645, + "head_dim": 128, + "hidden_act": "silu", + "hidden_size": 4096, + "initializer_range": 0.02, + "intermediate_size": 12288, + "layer_types": [ + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention" + ], + "max_position_embeddings": 40960, + "max_window_layers": 36, + "model_type": "qwen3", + "num_attention_heads": 32, + "num_hidden_layers": 36, + "num_key_value_heads": 8, + "pad_token_id": 151643, + "rms_norm_eps": 1e-06, + "rope_parameters": { + "rope_theta": 1000000, + "rope_type": "default" + }, + "sliding_window": null, + "tie_word_embeddings": false, + "transformers_version": "5.6.0", + "use_cache": false, + "use_sliding_window": false, + "vocab_size": 151936 +} diff --git a/generation_config.json b/generation_config.json new file mode 100644 index 0000000..cf5bf49 --- /dev/null +++ b/generation_config.json @@ -0,0 +1,12 @@ +{ + "do_sample": true, + "eos_token_id": [ + 151645, + 151643 + ], + "pad_token_id": 151643, + "temperature": 0.6, + "top_k": 20, + "top_p": 0.95, + "transformers_version": "5.6.0" +} diff --git a/model.safetensors b/model.safetensors new file mode 100644 index 0000000..bd5153f --- /dev/null +++ b/model.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:49085b381db57f95f5024195e46a62b6d94e7f61078ac10211fc017ba42f446f +size 16381517208 diff --git a/tokenizer.json b/tokenizer.json new file mode 100644 index 0000000..c7afbed --- /dev/null +++ b/tokenizer.json @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:be75606093db2094d7cd20f3c2f385c212750648bd6ea4fb2bf507a6a4c55506 +size 11422650 diff --git a/tokenizer_config.json b/tokenizer_config.json new file mode 100644 index 0000000..c8c14f0 --- /dev/null +++ b/tokenizer_config.json @@ -0,0 +1,16 @@ +{ + "add_prefix_space": false, + "backend": "tokenizers", + "bos_token": null, + "clean_up_tokenization_spaces": false, + "eos_token": "<|im_end|>", + "errors": "replace", + "is_local": true, + "local_files_only": false, + "model_max_length": 131072, + "pad_token": "<|endoftext|>", + "padding_side": "right", + "split_special_tokens": false, + "tokenizer_class": "Qwen2Tokenizer", + "unk_token": null +} \ No newline at end of file diff --git a/train_results.json b/train_results.json new file mode 100644 index 0000000..4130956 --- /dev/null +++ b/train_results.json @@ -0,0 +1,8 @@ +{ + "epoch": 3.0, + "total_flos": 76776714797056.0, + "train_loss": 0.08690919660139775, + "train_runtime": 2313.134, + "train_samples_per_second": 9.525, + "train_steps_per_second": 0.149 +} \ No newline at end of file diff --git a/trainer_log.jsonl b/trainer_log.jsonl new file mode 100644 index 0000000..8d8eead --- /dev/null +++ b/trainer_log.jsonl @@ -0,0 +1,35 @@ +{"current_steps": 10, "total_steps": 345, "loss": 0.6153196334838867, "lr": 2.571428571428571e-06, "epoch": 0.08714596949891068, "percentage": 2.9, "elapsed_time": "0:01:09", "remaining_time": "0:38:47"} +{"current_steps": 20, "total_steps": 345, "loss": 0.28919568061828616, "lr": 5.428571428571429e-06, "epoch": 0.17429193899782136, "percentage": 5.8, "elapsed_time": "0:02:16", "remaining_time": "0:36:57"} +{"current_steps": 30, "total_steps": 345, "loss": 0.17522474527359008, "lr": 8.285714285714287e-06, "epoch": 0.26143790849673204, "percentage": 8.7, "elapsed_time": "0:03:29", "remaining_time": "0:36:36"} +{"current_steps": 40, "total_steps": 345, "loss": 0.14669673442840575, "lr": 9.995892506564461e-06, "epoch": 0.3485838779956427, "percentage": 11.59, "elapsed_time": "0:04:34", "remaining_time": "0:34:52"} +{"current_steps": 50, "total_steps": 345, "loss": 0.12744725942611695, "lr": 9.949760673863846e-06, "epoch": 0.4357298474945534, "percentage": 14.49, "elapsed_time": "0:05:41", "remaining_time": "0:33:37"} +{"current_steps": 60, "total_steps": 345, "loss": 0.11766195297241211, "lr": 9.85283759855301e-06, "epoch": 0.5228758169934641, "percentage": 17.39, "elapsed_time": "0:06:44", "remaining_time": "0:32:02"} +{"current_steps": 70, "total_steps": 345, "loss": 0.10788841247558593, "lr": 9.706117842542517e-06, "epoch": 0.6100217864923747, "percentage": 20.29, "elapsed_time": "0:07:49", "remaining_time": "0:30:42"} +{"current_steps": 80, "total_steps": 345, "loss": 0.09764145016670227, "lr": 9.511106949072588e-06, "epoch": 0.6971677559912854, "percentage": 23.19, "elapsed_time": "0:09:00", "remaining_time": "0:29:50"} +{"current_steps": 90, "total_steps": 345, "loss": 0.10603783130645753, "lr": 9.26980599380213e-06, "epoch": 0.7843137254901961, "percentage": 26.09, "elapsed_time": "0:10:04", "remaining_time": "0:28:31"} +{"current_steps": 100, "total_steps": 345, "loss": 0.09546730518341065, "lr": 8.984691051064576e-06, "epoch": 0.8714596949891068, "percentage": 28.99, "elapsed_time": "0:11:13", "remaining_time": "0:27:29"} +{"current_steps": 110, "total_steps": 345, "loss": 0.092532217502594, "lr": 8.658687785994579e-06, "epoch": 0.9586056644880174, "percentage": 31.88, "elapsed_time": "0:12:12", "remaining_time": "0:26:05"} +{"current_steps": 120, "total_steps": 345, "loss": 0.08056190013885497, "lr": 8.29514143324466e-06, "epoch": 1.0435729847494553, "percentage": 34.78, "elapsed_time": "0:13:14", "remaining_time": "0:24:49"} +{"current_steps": 130, "total_steps": 345, "loss": 0.07299971580505371, "lr": 7.89778247035085e-06, "epoch": 1.130718954248366, "percentage": 37.68, "elapsed_time": "0:14:16", "remaining_time": "0:23:37"} +{"current_steps": 140, "total_steps": 345, "loss": 0.07079986333847046, "lr": 7.470688337985029e-06, "epoch": 1.2178649237472767, "percentage": 40.58, "elapsed_time": "0:15:20", "remaining_time": "0:22:27"} +{"current_steps": 150, "total_steps": 345, "loss": 0.06660881042480468, "lr": 7.018241599895974e-06, "epoch": 1.3050108932461875, "percentage": 43.48, "elapsed_time": "0:16:26", "remaining_time": "0:21:22"} +{"current_steps": 160, "total_steps": 345, "loss": 0.0653923749923706, "lr": 6.545084971874738e-06, "epoch": 1.392156862745098, "percentage": 46.38, "elapsed_time": "0:17:31", "remaining_time": "0:20:16"} +{"current_steps": 170, "total_steps": 345, "loss": 0.06376279592514038, "lr": 6.056073681208038e-06, "epoch": 1.4793028322440087, "percentage": 49.28, "elapsed_time": "0:18:36", "remaining_time": "0:19:09"} +{"current_steps": 180, "total_steps": 345, "loss": 0.06115278005599976, "lr": 5.556225645476119e-06, "epoch": 1.5664488017429194, "percentage": 52.17, "elapsed_time": "0:19:45", "remaining_time": "0:18:07"} +{"current_steps": 190, "total_steps": 345, "loss": 0.05721602439880371, "lr": 5.050669981928056e-06, "epoch": 1.65359477124183, "percentage": 55.07, "elapsed_time": "0:20:57", "remaining_time": "0:17:05"} +{"current_steps": 200, "total_steps": 345, "loss": 0.05891573429107666, "lr": 4.544594375797969e-06, "epoch": 1.7407407407407407, "percentage": 57.97, "elapsed_time": "0:22:06", "remaining_time": "0:16:01"} +{"current_steps": 210, "total_steps": 345, "loss": 0.053774547576904294, "lr": 4.043191847634469e-06, "epoch": 1.8278867102396514, "percentage": 60.87, "elapsed_time": "0:23:14", "remaining_time": "0:14:56"} +{"current_steps": 220, "total_steps": 345, "loss": 0.05282905101776123, "lr": 3.55160746588254e-06, "epoch": 1.915032679738562, "percentage": 63.77, "elapsed_time": "0:24:16", "remaining_time": "0:13:47"} +{"current_steps": 230, "total_steps": 345, "loss": 0.04842503666877747, "lr": 3.0748855515189104e-06, "epoch": 2.0, "percentage": 66.67, "elapsed_time": "0:25:21", "remaining_time": "0:12:40"} +{"current_steps": 240, "total_steps": 345, "loss": 0.030383211374282838, "lr": 2.617917916492776e-06, "epoch": 2.0871459694989105, "percentage": 69.57, "elapsed_time": "0:26:29", "remaining_time": "0:11:35"} +{"current_steps": 250, "total_steps": 345, "loss": 0.027488625049591063, "lr": 2.185393667115513e-06, "epoch": 2.1742919389978215, "percentage": 72.46, "elapsed_time": "0:27:37", "remaining_time": "0:10:30"} +{"current_steps": 260, "total_steps": 345, "loss": 0.02891799509525299, "lr": 1.7817510874845585e-06, "epoch": 2.261437908496732, "percentage": 75.36, "elapsed_time": "0:28:38", "remaining_time": "0:09:21"} +{"current_steps": 270, "total_steps": 345, "loss": 0.025755631923675536, "lr": 1.411132096682606e-06, "epoch": 2.348583877995643, "percentage": 78.26, "elapsed_time": "0:29:39", "remaining_time": "0:08:14"} +{"current_steps": 280, "total_steps": 345, "loss": 0.02339869737625122, "lr": 1.0773397470829145e-06, "epoch": 2.4357298474945535, "percentage": 81.16, "elapsed_time": "0:30:50", "remaining_time": "0:07:09"} +{"current_steps": 290, "total_steps": 345, "loss": 0.02193155437707901, "lr": 7.837991998855899e-07, "epoch": 2.522875816993464, "percentage": 84.06, "elapsed_time": "0:31:55", "remaining_time": "0:06:03"} +{"current_steps": 300, "total_steps": 345, "loss": 0.022859147191047667, "lr": 5.335225783287051e-07, "epoch": 2.610021786492375, "percentage": 86.96, "elapsed_time": "0:32:56", "remaining_time": "0:04:56"} +{"current_steps": 310, "total_steps": 345, "loss": 0.022240425646305084, "lr": 3.290780592278148e-07, "epoch": 2.6971677559912854, "percentage": 89.86, "elapsed_time": "0:34:06", "remaining_time": "0:03:51"} +{"current_steps": 320, "total_steps": 345, "loss": 0.021587590873241424, "lr": 1.725635200065323e-07, "epoch": 2.784313725490196, "percentage": 92.75, "elapsed_time": "0:35:07", "remaining_time": "0:02:44"} +{"current_steps": 330, "total_steps": 345, "loss": 0.020273779332637788, "lr": 6.558501163527964e-08, "epoch": 2.871459694989107, "percentage": 95.65, "elapsed_time": "0:36:20", "remaining_time": "0:01:39"} +{"current_steps": 340, "total_steps": 345, "loss": 0.019534435868263245, "lr": 9.240278374995637e-09, "epoch": 2.9586056644880174, "percentage": 98.55, "elapsed_time": "0:37:25", "remaining_time": "0:00:33"} +{"current_steps": 345, "total_steps": 345, "epoch": 3.0, "percentage": 100.0, "elapsed_time": "0:38:33", "remaining_time": "0:00:00"} diff --git a/trainer_state.json b/trainer_state.json new file mode 100644 index 0000000..481a35d --- /dev/null +++ b/trainer_state.json @@ -0,0 +1,281 @@ +{ + "best_global_step": null, + "best_metric": null, + "best_model_checkpoint": null, + "epoch": 3.0, + "eval_steps": 500, + "global_step": 345, + "is_hyper_param_search": false, + "is_local_process_zero": true, + "is_world_process_zero": true, + "log_history": [ + { + "epoch": 0.08714596949891068, + "grad_norm": 5.177986166517991, + "learning_rate": 2.571428571428571e-06, + "loss": 0.6153196334838867, + "step": 10 + }, + { + "epoch": 0.17429193899782136, + "grad_norm": 1.44175757217302, + "learning_rate": 5.428571428571429e-06, + "loss": 0.28919568061828616, + "step": 20 + }, + { + "epoch": 0.26143790849673204, + "grad_norm": 0.9165793261415883, + "learning_rate": 8.285714285714287e-06, + "loss": 0.17522474527359008, + "step": 30 + }, + { + "epoch": 0.3485838779956427, + "grad_norm": 0.6521905966085462, + "learning_rate": 9.995892506564461e-06, + "loss": 0.14669673442840575, + "step": 40 + }, + { + "epoch": 0.4357298474945534, + "grad_norm": 0.607127669832236, + "learning_rate": 9.949760673863846e-06, + "loss": 0.12744725942611695, + "step": 50 + }, + { + "epoch": 0.5228758169934641, + "grad_norm": 0.5498782876340255, + "learning_rate": 9.85283759855301e-06, + "loss": 0.11766195297241211, + "step": 60 + }, + { + "epoch": 0.6100217864923747, + "grad_norm": 0.5918131618600547, + "learning_rate": 9.706117842542517e-06, + "loss": 0.10788841247558593, + "step": 70 + }, + { + "epoch": 0.6971677559912854, + "grad_norm": 0.4439997345152047, + "learning_rate": 9.511106949072588e-06, + "loss": 0.09764145016670227, + "step": 80 + }, + { + "epoch": 0.7843137254901961, + "grad_norm": 0.5075520825167553, + "learning_rate": 9.26980599380213e-06, + "loss": 0.10603783130645753, + "step": 90 + }, + { + "epoch": 0.8714596949891068, + "grad_norm": 0.5140097183992045, + "learning_rate": 8.984691051064576e-06, + "loss": 0.09546730518341065, + "step": 100 + }, + { + "epoch": 0.9586056644880174, + "grad_norm": 0.5703007918047962, + "learning_rate": 8.658687785994579e-06, + "loss": 0.092532217502594, + "step": 110 + }, + { + "epoch": 1.0435729847494553, + "grad_norm": 0.5044506688179623, + "learning_rate": 8.29514143324466e-06, + "loss": 0.08056190013885497, + "step": 120 + }, + { + "epoch": 1.130718954248366, + "grad_norm": 0.45897327652678604, + "learning_rate": 7.89778247035085e-06, + "loss": 0.07299971580505371, + "step": 130 + }, + { + "epoch": 1.2178649237472767, + "grad_norm": 0.512980363314234, + "learning_rate": 7.470688337985029e-06, + "loss": 0.07079986333847046, + "step": 140 + }, + { + "epoch": 1.3050108932461875, + "grad_norm": 0.47351565581785493, + "learning_rate": 7.018241599895974e-06, + "loss": 0.06660881042480468, + "step": 150 + }, + { + "epoch": 1.392156862745098, + "grad_norm": 0.5370628072208776, + "learning_rate": 6.545084971874738e-06, + "loss": 0.0653923749923706, + "step": 160 + }, + { + "epoch": 1.4793028322440087, + "grad_norm": 0.48059037186135045, + "learning_rate": 6.056073681208038e-06, + "loss": 0.06376279592514038, + "step": 170 + }, + { + "epoch": 1.5664488017429194, + "grad_norm": 0.5064023315317826, + "learning_rate": 5.556225645476119e-06, + "loss": 0.06115278005599976, + "step": 180 + }, + { + "epoch": 1.65359477124183, + "grad_norm": 0.42527473207127103, + "learning_rate": 5.050669981928056e-06, + "loss": 0.05721602439880371, + "step": 190 + }, + { + "epoch": 1.7407407407407407, + "grad_norm": 0.6697126311013827, + "learning_rate": 4.544594375797969e-06, + "loss": 0.05891573429107666, + "step": 200 + }, + { + "epoch": 1.8278867102396514, + "grad_norm": 0.5279032397256536, + "learning_rate": 4.043191847634469e-06, + "loss": 0.053774547576904294, + "step": 210 + }, + { + "epoch": 1.915032679738562, + "grad_norm": 0.5503203177829016, + "learning_rate": 3.55160746588254e-06, + "loss": 0.05282905101776123, + "step": 220 + }, + { + "epoch": 2.0, + "grad_norm": 0.5834909575577394, + "learning_rate": 3.0748855515189104e-06, + "loss": 0.04842503666877747, + "step": 230 + }, + { + "epoch": 2.0871459694989105, + "grad_norm": 0.45637637277474224, + "learning_rate": 2.617917916492776e-06, + "loss": 0.030383211374282838, + "step": 240 + }, + { + "epoch": 2.1742919389978215, + "grad_norm": 0.5460303567191565, + "learning_rate": 2.185393667115513e-06, + "loss": 0.027488625049591063, + "step": 250 + }, + { + "epoch": 2.261437908496732, + "grad_norm": 0.5299369784489509, + "learning_rate": 1.7817510874845585e-06, + "loss": 0.02891799509525299, + "step": 260 + }, + { + "epoch": 2.348583877995643, + "grad_norm": 0.47946594564717776, + "learning_rate": 1.411132096682606e-06, + "loss": 0.025755631923675536, + "step": 270 + }, + { + "epoch": 2.4357298474945535, + "grad_norm": 0.5587855844190783, + "learning_rate": 1.0773397470829145e-06, + "loss": 0.02339869737625122, + "step": 280 + }, + { + "epoch": 2.522875816993464, + "grad_norm": 0.5415169503522139, + "learning_rate": 7.837991998855899e-07, + "loss": 0.02193155437707901, + "step": 290 + }, + { + "epoch": 2.610021786492375, + "grad_norm": 0.5047370934641092, + "learning_rate": 5.335225783287051e-07, + "loss": 0.022859147191047667, + "step": 300 + }, + { + "epoch": 2.6971677559912854, + "grad_norm": 0.5339811061748208, + "learning_rate": 3.290780592278148e-07, + "loss": 0.022240425646305084, + "step": 310 + }, + { + "epoch": 2.784313725490196, + "grad_norm": 0.5269387231320517, + "learning_rate": 1.725635200065323e-07, + "loss": 0.021587590873241424, + "step": 320 + }, + { + "epoch": 2.871459694989107, + "grad_norm": 0.4475061358613248, + "learning_rate": 6.558501163527964e-08, + "loss": 0.020273779332637788, + "step": 330 + }, + { + "epoch": 2.9586056644880174, + "grad_norm": 0.38102973450948285, + "learning_rate": 9.240278374995637e-09, + "loss": 0.019534435868263245, + "step": 340 + }, + { + "epoch": 3.0, + "step": 345, + "total_flos": 76776714797056.0, + "train_loss": 0.08690919660139775, + "train_runtime": 2313.134, + "train_samples_per_second": 9.525, + "train_steps_per_second": 0.149 + } + ], + "logging_steps": 10, + "max_steps": 345, + "num_input_tokens_seen": 0, + "num_train_epochs": 3, + "save_steps": 500, + "stateful_callbacks": { + "TrainerControl": { + "args": { + "should_epoch_stop": false, + "should_evaluate": false, + "should_log": false, + "should_save": true, + "should_training_stop": true + }, + "attributes": {} + } + }, + "total_flos": 76776714797056.0, + "train_batch_size": 2, + "trial_name": null, + "trial_params": null +} diff --git a/training_args.bin b/training_args.bin new file mode 100644 index 0000000..95ce810 --- /dev/null +++ b/training_args.bin @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:67d769ee4536f0f8d9ef008b0a55032c2f50341f48b3ac9af78bde5aabaf1ce5 +size 7761 diff --git a/training_loss.png b/training_loss.png new file mode 100644 index 0000000000000000000000000000000000000000..a613aaeb5d7d9dfcb37d22a04a1e8b599a8e6b8d GIT binary patch literal 35328 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 ZwamMF+%-|~=O_jL?A~FZU8H3n{9kC#`LX~2 literal 0 HcmV?d00001