From 592a9453a17a2d4ba56aaf7a264ba2d996c8388f Mon Sep 17 00:00:00 2001 From: ModelHub XC Date: Sat, 9 May 2026 00:00:03 +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: varshak1/openrubric-rubric-sft Source: Original Platform --- .gitattributes | 36 +++++++ README.md | 61 +++++++++++ all_results.json | 8 ++ chat_template.jinja | 89 ++++++++++++++++ config.json | 71 +++++++++++++ generation_config.json | 12 +++ model.safetensors | 3 + tokenizer.json | 3 + tokenizer_config.json | 15 +++ train_results.json | 8 ++ trainer_log.jsonl | 28 +++++ trainer_state.json | 232 +++++++++++++++++++++++++++++++++++++++++ training_args.bin | 3 + training_loss.png | Bin 0 -> 32384 bytes 14 files changed, 569 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..3dede04 --- /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: 8b_openrubric-rubric-sft + results: [] +--- + + + +# 8b_openrubric-rubric-sft + +This model is a fine-tuned version of [Qwen/Qwen3-8B](https://huggingface.co/Qwen/Qwen3-8B) on the openrubric-rubric-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: 8e-06 +- train_batch_size: 4 +- eval_batch_size: 8 +- seed: 42 +- distributed_type: multi-GPU +- num_devices: 8 +- gradient_accumulation_steps: 4 +- total_train_batch_size: 128 +- 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.05 +- num_epochs: 1.0 + +### Training results + + + +### Framework versions + +- Transformers 5.2.0 +- Pytorch 2.6.0+cu124 +- Datasets 4.0.0 +- Tokenizers 0.22.2 diff --git a/all_results.json b/all_results.json new file mode 100644 index 0000000..a9f89e6 --- /dev/null +++ b/all_results.json @@ -0,0 +1,8 @@ +{ + "epoch": 1.0, + "total_flos": 3.329238633864495e+18, + "train_loss": 0.37422844500524594, + "train_runtime": 1723.7802, + "train_samples_per_second": 20.659, + "train_steps_per_second": 0.162 +} \ No newline at end of file diff --git a/chat_template.jinja b/chat_template.jinja new file mode 100644 index 0000000..01be9b3 --- /dev/null +++ b/chat_template.jinja @@ -0,0 +1,89 @@ +{%- 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 message.content is string 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.content is string %} + {%- set content = message.content %} + {%- else %} + {%- set content = '' %} + {%- endif %} + {%- if (message.role == "user") or (message.role == "system" and not loop.first) %} + {{- '<|im_start|>' + message.role + '\n' + content + '<|im_end|>' + '\n' }} + {%- elif message.role == "assistant" %} + {%- set reasoning_content = '' %} + {%- if message.reasoning_content is string %} + {%- set reasoning_content = message.reasoning_content %} + {%- else %} + {%- if '' in content %} + {%- set reasoning_content = content.split('')[0].rstrip('\n').split('')[-1].lstrip('\n') %} + {%- set content = content.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' }} + {{- 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..a8e7a96 --- /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.2.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..1701c94 --- /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.2.0" +} diff --git a/model.safetensors b/model.safetensors new file mode 100644 index 0000000..fc49317 --- /dev/null +++ b/model.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:393b850635e1f49697cd110964d5cec60f6eef04cdc49d03dc000764b2e2f054 +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..ea4d101 --- /dev/null +++ b/tokenizer_config.json @@ -0,0 +1,15 @@ +{ + "add_prefix_space": false, + "backend": "tokenizers", + "bos_token": null, + "clean_up_tokenization_spaces": false, + "eos_token": "<|im_end|>", + "errors": "replace", + "is_local": false, + "model_max_length": 131072, + "pad_token": "<|endoftext|>", + "padding_side": "right", + "split_special_tokens": false, + "tokenizer_class": "Qwen2Tokenizer", + "unk_token": null +} diff --git a/train_results.json b/train_results.json new file mode 100644 index 0000000..a9f89e6 --- /dev/null +++ b/train_results.json @@ -0,0 +1,8 @@ +{ + "epoch": 1.0, + "total_flos": 3.329238633864495e+18, + "train_loss": 0.37422844500524594, + "train_runtime": 1723.7802, + "train_samples_per_second": 20.659, + "train_steps_per_second": 0.162 +} \ No newline at end of file diff --git a/trainer_log.jsonl b/trainer_log.jsonl new file mode 100644 index 0000000..be49685 --- /dev/null +++ b/trainer_log.jsonl @@ -0,0 +1,28 @@ +{"current_steps": 10, "total_steps": 279, "loss": 0.9999963760375976, "lr": 5.142857142857143e-06, "epoch": 0.03593890386343217, "percentage": 3.58, "elapsed_time": "0:01:03", "remaining_time": "0:28:32"} +{"current_steps": 20, "total_steps": 279, "loss": 0.5433789730072022, "lr": 7.992974927057286e-06, "epoch": 0.07187780772686433, "percentage": 7.17, "elapsed_time": "0:02:03", "remaining_time": "0:26:35"} +{"current_steps": 30, "total_steps": 279, "loss": 0.4406783103942871, "lr": 7.936922311790387e-06, "epoch": 0.1078167115902965, "percentage": 10.75, "elapsed_time": "0:03:02", "remaining_time": "0:25:10"} +{"current_steps": 40, "total_steps": 279, "loss": 0.4059865951538086, "lr": 7.825603937106089e-06, "epoch": 0.14375561545372867, "percentage": 14.34, "elapsed_time": "0:04:01", "remaining_time": "0:24:00"} +{"current_steps": 50, "total_steps": 279, "loss": 0.38223881721496583, "lr": 7.660582468972073e-06, "epoch": 0.17969451931716082, "percentage": 17.92, "elapsed_time": "0:04:59", "remaining_time": "0:22:53"} +{"current_steps": 60, "total_steps": 279, "loss": 0.37668166160583494, "lr": 7.444174447069421e-06, "epoch": 0.215633423180593, "percentage": 21.51, "elapsed_time": "0:05:59", "remaining_time": "0:21:50"} +{"current_steps": 70, "total_steps": 279, "loss": 0.359727144241333, "lr": 7.179417765653413e-06, "epoch": 0.25157232704402516, "percentage": 25.09, "elapsed_time": "0:06:58", "remaining_time": "0:20:49"} +{"current_steps": 80, "total_steps": 279, "loss": 0.35879950523376464, "lr": 6.870029028177324e-06, "epoch": 0.28751123090745734, "percentage": 28.67, "elapsed_time": "0:07:58", "remaining_time": "0:19:49"} +{"current_steps": 90, "total_steps": 279, "loss": 0.350269079208374, "lr": 6.520351374326845e-06, "epoch": 0.32345013477088946, "percentage": 32.26, "elapsed_time": "0:08:58", "remaining_time": "0:18:50"} +{"current_steps": 100, "total_steps": 279, "loss": 0.35556807518005373, "lr": 6.1352935118591635e-06, "epoch": 0.35938903863432164, "percentage": 35.84, "elapsed_time": "0:09:58", "remaining_time": "0:17:50"} +{"current_steps": 110, "total_steps": 279, "loss": 0.3427577495574951, "lr": 5.720260809106082e-06, "epoch": 0.3953279424977538, "percentage": 39.43, "elapsed_time": "0:10:55", "remaining_time": "0:16:47"} +{"current_steps": 120, "total_steps": 279, "loss": 0.3359182596206665, "lr": 5.28107941545135e-06, "epoch": 0.431266846361186, "percentage": 43.01, "elapsed_time": "0:11:55", "remaining_time": "0:15:47"} +{"current_steps": 130, "total_steps": 279, "loss": 0.3400346040725708, "lr": 4.823914474964393e-06, "epoch": 0.46720575022461813, "percentage": 46.59, "elapsed_time": "0:12:53", "remaining_time": "0:14:47"} +{"current_steps": 140, "total_steps": 279, "loss": 0.3393260478973389, "lr": 4.355183581291739e-06, "epoch": 0.5031446540880503, "percentage": 50.18, "elapsed_time": "0:13:52", "remaining_time": "0:13:46"} +{"current_steps": 150, "total_steps": 279, "loss": 0.33171849250793456, "lr": 3.8814666887097606e-06, "epoch": 0.5390835579514824, "percentage": 53.76, "elapsed_time": "0:14:51", "remaining_time": "0:12:46"} +{"current_steps": 160, "total_steps": 279, "loss": 0.33351149559021, "lr": 3.4094137439900755e-06, "epoch": 0.5750224618149147, "percentage": 57.35, "elapsed_time": "0:15:51", "remaining_time": "0:11:47"} +{"current_steps": 170, "total_steps": 279, "loss": 0.32773785591125487, "lr": 2.94565133572373e-06, "epoch": 0.6109613656783468, "percentage": 60.93, "elapsed_time": "0:16:51", "remaining_time": "0:10:48"} +{"current_steps": 180, "total_steps": 279, "loss": 0.32363770008087156, "lr": 2.496689671543048e-06, "epoch": 0.6469002695417789, "percentage": 64.52, "elapsed_time": "0:17:50", "remaining_time": "0:09:48"} +{"current_steps": 190, "total_steps": 279, "loss": 0.33127546310424805, "lr": 2.068831189077021e-06, "epoch": 0.6828391734052112, "percentage": 68.1, "elapsed_time": "0:18:50", "remaining_time": "0:08:49"} +{"current_steps": 200, "total_steps": 279, "loss": 0.3253414392471313, "lr": 1.6680820835421124e-06, "epoch": 0.7187780772686433, "percentage": 71.68, "elapsed_time": "0:19:50", "remaining_time": "0:07:50"} +{"current_steps": 210, "total_steps": 279, "loss": 0.32832999229431153, "lr": 1.3000679939271586e-06, "epoch": 0.7547169811320755, "percentage": 75.27, "elapsed_time": "0:20:48", "remaining_time": "0:06:50"} +{"current_steps": 220, "total_steps": 279, "loss": 0.33035430908203123, "lr": 9.699550313535194e-07, "epoch": 0.7906558849955077, "percentage": 78.85, "elapsed_time": "0:21:48", "remaining_time": "0:05:50"} +{"current_steps": 230, "total_steps": 279, "loss": 0.31977477073669436, "lr": 6.823772581991929e-07, "epoch": 0.8265947888589398, "percentage": 82.44, "elapsed_time": "0:22:48", "remaining_time": "0:04:51"} +{"current_steps": 240, "total_steps": 279, "loss": 0.32599825859069825, "lr": 4.413716360210111e-07, "epoch": 0.862533692722372, "percentage": 86.02, "elapsed_time": "0:23:47", "remaining_time": "0:03:52"} +{"current_steps": 250, "total_steps": 279, "loss": 0.3147287845611572, "lr": 2.503213554635164e-07, "epoch": 0.8984725965858041, "percentage": 89.61, "elapsed_time": "0:24:47", "remaining_time": "0:02:52"} +{"current_steps": 260, "total_steps": 279, "loss": 0.32068469524383547, "lr": 1.11908343678357e-07, "epoch": 0.9344115004492363, "percentage": 93.19, "elapsed_time": "0:25:47", "remaining_time": "0:01:53"} +{"current_steps": 270, "total_steps": 279, "loss": 0.3222502708435059, "lr": 2.8075615945932328e-08, "epoch": 0.9703504043126685, "percentage": 96.77, "elapsed_time": "0:26:47", "remaining_time": "0:00:53"} +{"current_steps": 279, "total_steps": 279, "epoch": 1.0, "percentage": 100.0, "elapsed_time": "0:28:42", "remaining_time": "0:00:00"} diff --git a/trainer_state.json b/trainer_state.json new file mode 100644 index 0000000..82f19d7 --- /dev/null +++ b/trainer_state.json @@ -0,0 +1,232 @@ +{ + "best_global_step": null, + "best_metric": null, + "best_model_checkpoint": null, + "epoch": 1.0, + "eval_steps": 500, + "global_step": 279, + "is_hyper_param_search": false, + "is_local_process_zero": true, + "is_world_process_zero": true, + "log_history": [ + { + "epoch": 0.03593890386343217, + "grad_norm": 3.182513952255249, + "learning_rate": 5.142857142857143e-06, + "loss": 0.9999963760375976, + "step": 10 + }, + { + "epoch": 0.07187780772686433, + "grad_norm": 1.173149585723877, + "learning_rate": 7.992974927057286e-06, + "loss": 0.5433789730072022, + "step": 20 + }, + { + "epoch": 0.1078167115902965, + "grad_norm": 0.8281139731407166, + "learning_rate": 7.936922311790387e-06, + "loss": 0.4406783103942871, + "step": 30 + }, + { + "epoch": 0.14375561545372867, + "grad_norm": 0.8478610515594482, + "learning_rate": 7.825603937106089e-06, + "loss": 0.4059865951538086, + "step": 40 + }, + { + "epoch": 0.17969451931716082, + "grad_norm": 0.8095178604125977, + "learning_rate": 7.660582468972073e-06, + "loss": 0.38223881721496583, + "step": 50 + }, + { + "epoch": 0.215633423180593, + "grad_norm": 0.7364096641540527, + "learning_rate": 7.444174447069421e-06, + "loss": 0.37668166160583494, + "step": 60 + }, + { + "epoch": 0.25157232704402516, + "grad_norm": 0.7268216609954834, + "learning_rate": 7.179417765653413e-06, + "loss": 0.359727144241333, + "step": 70 + }, + { + "epoch": 0.28751123090745734, + "grad_norm": 0.7387126684188843, + "learning_rate": 6.870029028177324e-06, + "loss": 0.35879950523376464, + "step": 80 + }, + { + "epoch": 0.32345013477088946, + "grad_norm": 0.8118855953216553, + "learning_rate": 6.520351374326845e-06, + "loss": 0.350269079208374, + "step": 90 + }, + { + "epoch": 0.35938903863432164, + "grad_norm": 0.7069733738899231, + "learning_rate": 6.1352935118591635e-06, + "loss": 0.35556807518005373, + "step": 100 + }, + { + "epoch": 0.3953279424977538, + "grad_norm": 0.7542175650596619, + "learning_rate": 5.720260809106082e-06, + "loss": 0.3427577495574951, + "step": 110 + }, + { + "epoch": 0.431266846361186, + "grad_norm": 0.8069055080413818, + "learning_rate": 5.28107941545135e-06, + "loss": 0.3359182596206665, + "step": 120 + }, + { + "epoch": 0.46720575022461813, + "grad_norm": 0.8552827835083008, + "learning_rate": 4.823914474964393e-06, + "loss": 0.3400346040725708, + "step": 130 + }, + { + "epoch": 0.5031446540880503, + "grad_norm": 0.7165119647979736, + "learning_rate": 4.355183581291739e-06, + "loss": 0.3393260478973389, + "step": 140 + }, + { + "epoch": 0.5390835579514824, + "grad_norm": 0.7520389556884766, + "learning_rate": 3.8814666887097606e-06, + "loss": 0.33171849250793456, + "step": 150 + }, + { + "epoch": 0.5750224618149147, + "grad_norm": 0.6773005723953247, + "learning_rate": 3.4094137439900755e-06, + "loss": 0.33351149559021, + "step": 160 + }, + { + "epoch": 0.6109613656783468, + "grad_norm": 0.7068390846252441, + "learning_rate": 2.94565133572373e-06, + "loss": 0.32773785591125487, + "step": 170 + }, + { + "epoch": 0.6469002695417789, + "grad_norm": 0.8255635499954224, + "learning_rate": 2.496689671543048e-06, + "loss": 0.32363770008087156, + "step": 180 + }, + { + "epoch": 0.6828391734052112, + "grad_norm": 0.6686235070228577, + "learning_rate": 2.068831189077021e-06, + "loss": 0.33127546310424805, + "step": 190 + }, + { + "epoch": 0.7187780772686433, + "grad_norm": 0.7526047229766846, + "learning_rate": 1.6680820835421124e-06, + "loss": 0.3253414392471313, + "step": 200 + }, + { + "epoch": 0.7547169811320755, + "grad_norm": 0.6801684498786926, + "learning_rate": 1.3000679939271586e-06, + "loss": 0.32832999229431153, + "step": 210 + }, + { + "epoch": 0.7906558849955077, + "grad_norm": 0.6622071266174316, + "learning_rate": 9.699550313535194e-07, + "loss": 0.33035430908203123, + "step": 220 + }, + { + "epoch": 0.8265947888589398, + "grad_norm": 0.6161302924156189, + "learning_rate": 6.823772581991929e-07, + "loss": 0.31977477073669436, + "step": 230 + }, + { + "epoch": 0.862533692722372, + "grad_norm": 0.6483022570610046, + "learning_rate": 4.413716360210111e-07, + "loss": 0.32599825859069825, + "step": 240 + }, + { + "epoch": 0.8984725965858041, + "grad_norm": 0.6623414158821106, + "learning_rate": 2.503213554635164e-07, + "loss": 0.3147287845611572, + "step": 250 + }, + { + "epoch": 0.9344115004492363, + "grad_norm": 0.6427763104438782, + "learning_rate": 1.11908343678357e-07, + "loss": 0.32068469524383547, + "step": 260 + }, + { + "epoch": 0.9703504043126685, + "grad_norm": 0.6542255878448486, + "learning_rate": 2.8075615945932328e-08, + "loss": 0.3222502708435059, + "step": 270 + }, + { + "epoch": 1.0, + "step": 279, + "total_flos": 3.329238633864495e+18, + "train_loss": 0.37422844500524594, + "train_runtime": 1723.7802, + "train_samples_per_second": 20.659, + "train_steps_per_second": 0.162 + } + ], + "logging_steps": 10, + "max_steps": 279, + "num_input_tokens_seen": 0, + "num_train_epochs": 1, + "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": 3.329238633864495e+18, + "train_batch_size": 4, + "trial_name": null, + "trial_params": null +} diff --git a/training_args.bin b/training_args.bin new file mode 100644 index 0000000..6f9145a --- /dev/null +++ b/training_args.bin @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b15790e8a7fa7712c1cbb8951995a11388e47338b6637b38d72415ff3f909e07 +size 6776 diff --git a/training_loss.png b/training_loss.png new file mode 100644 index 0000000000000000000000000000000000000000..564c3929e1210faead23afd62ac451676609ba8d GIT binary patch literal 32384 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

h+^gV&CNU)z?GJ>+LI8DL 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 literal 0 HcmV?d00001