From 2c3457eb48933709f557328af1e1dfba92692eda Mon Sep 17 00:00:00 2001 From: Cherrytest Date: Fri, 10 Oct 2025 08:17:34 +0000 Subject: [PATCH] Upload folder using ModelScope SDK --- .gitattributes | 9 + README.md | 101 +++--- added_tokens.json | 24 ++ all_results.json | 8 + config.json | 29 ++ configs.yaml | 37 +++ configuration.json | 1 + generation_config.json | 14 + merges.txt | 3 + model-00001-of-00004.safetensors | 3 + model-00002-of-00004.safetensors | 3 + model-00003-of-00004.safetensors | 3 + model-00004-of-00004.safetensors | 3 + model.safetensors.index.json | 346 ++++++++++++++++++++ special_tokens_map.json | 31 ++ tokenizer.json | 3 + tokenizer_config.json | 208 ++++++++++++ train_results.json | 8 + trainer_log.jsonl | 71 +++++ trainer_state.json | 532 +++++++++++++++++++++++++++++++ training_args.bin | 3 + training_loss.png | Bin 0 -> 40946 bytes vocab.json | 3 + 23 files changed, 1399 insertions(+), 44 deletions(-) create mode 100644 added_tokens.json create mode 100644 all_results.json create mode 100644 config.json create mode 100644 configs.yaml create mode 100644 configuration.json create mode 100644 generation_config.json create mode 100644 merges.txt create mode 100644 model-00001-of-00004.safetensors create mode 100644 model-00002-of-00004.safetensors create mode 100644 model-00003-of-00004.safetensors create mode 100644 model-00004-of-00004.safetensors create mode 100644 model.safetensors.index.json create mode 100644 special_tokens_map.json 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 create mode 100644 vocab.json diff --git a/.gitattributes b/.gitattributes index d18ea26..467e083 100644 --- a/.gitattributes +++ b/.gitattributes @@ -45,3 +45,12 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text *.wasm filter=lfs diff=lfs merge=lfs -text *.zst filter=lfs diff=lfs merge=lfs -text *tfevents* filter=lfs diff=lfs merge=lfs -text + +training_args.bin filter=lfs diff=lfs merge=lfs -text +vocab.json filter=lfs diff=lfs merge=lfs -text +tokenizer.json filter=lfs diff=lfs merge=lfs -text +model-00002-of-00004.safetensors filter=lfs diff=lfs merge=lfs -text +model-00003-of-00004.safetensors filter=lfs diff=lfs merge=lfs -text +model-00004-of-00004.safetensors filter=lfs diff=lfs merge=lfs -text +model-00001-of-00004.safetensors filter=lfs diff=lfs merge=lfs -text +merges.txt filter=lfs diff=lfs merge=lfs -text \ No newline at end of file diff --git a/README.md b/README.md index d3512d8..1524bec 100644 --- a/README.md +++ b/README.md @@ -1,48 +1,61 @@ --- -license: Apache License 2.0 -tags: [] - -#model-type: -##如 gpt、phi、llama、chatglm、baichuan 等 -#- gpt - -#domain: -##如 nlp、cv、audio、multi-modal -#- nlp - -#language: -##语言代码列表 https://help.aliyun.com/document_detail/215387.html?spm=a2c4g.11186623.0.0.9f8d7467kni6Aa -#- cn - -#metrics: -##如 CIDEr、Blue、ROUGE 等 -#- CIDEr - -#tags: -##各种自定义,包括 pretrained、fine-tuned、instruction-tuned、RL-tuned 等训练方法和其他 -#- pretrained - -#tools: -##如 vllm、fastchat、llamacpp、AdaSeq 等 -#- vllm +library_name: transformers +license: apache-2.0 +base_model: Qwen/Qwen2.5-7B-Instruct +tags: +- llama-factory +- full +- generated_from_trainer +model-index: +- name: e1_code_fasttext_r1_1k + results: [] --- -### 当前模型的贡献者未提供更加详细的模型介绍。模型文件和权重,可浏览“模型文件”页面获取。 -#### 您可以通过如下git clone命令,或者ModelScope SDK来下载模型 -SDK下载 -```bash -#安装ModelScope -pip install modelscope -``` -```python -#SDK模型下载 -from modelscope import snapshot_download -model_dir = snapshot_download('mlfoundations-dev/e1_code_fasttext_r1_1k') -``` -Git下载 -``` -#Git模型下载 -git clone https://www.modelscope.cn/mlfoundations-dev/e1_code_fasttext_r1_1k.git -``` + -

如果您是本模型的贡献者,我们邀请您根据模型贡献文档,及时完善模型卡片内容。

\ No newline at end of file +# e1_code_fasttext_r1_1k + +This model is a fine-tuned version of [Qwen/Qwen2.5-7B-Instruct](https://huggingface.co/Qwen/Qwen2.5-7B-Instruct) on the mlfoundations-dev/e1_code_fasttext_r1_1k 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: 2e-05 +- train_batch_size: 1 +- eval_batch_size: 8 +- seed: 42 +- distributed_type: multi-GPU +- num_devices: 4 +- gradient_accumulation_steps: 24 +- total_train_batch_size: 96 +- total_eval_batch_size: 32 +- optimizer: Use 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_ratio: 0.1 +- num_epochs: 7.0 + +### Training results + + + +### Framework versions + +- Transformers 4.46.1 +- Pytorch 2.6.0+cu124 +- Datasets 3.1.0 +- Tokenizers 0.20.3 diff --git a/added_tokens.json b/added_tokens.json new file mode 100644 index 0000000..482ced4 --- /dev/null +++ b/added_tokens.json @@ -0,0 +1,24 @@ +{ + "": 151658, + "": 151657, + "<|box_end|>": 151649, + "<|box_start|>": 151648, + "<|endoftext|>": 151643, + "<|file_sep|>": 151664, + "<|fim_middle|>": 151660, + "<|fim_pad|>": 151662, + "<|fim_prefix|>": 151659, + "<|fim_suffix|>": 151661, + "<|im_end|>": 151645, + "<|im_start|>": 151644, + "<|image_pad|>": 151655, + "<|object_ref_end|>": 151647, + "<|object_ref_start|>": 151646, + "<|quad_end|>": 151651, + "<|quad_start|>": 151650, + "<|repo_name|>": 151663, + "<|video_pad|>": 151656, + "<|vision_end|>": 151653, + "<|vision_pad|>": 151654, + "<|vision_start|>": 151652 +} diff --git a/all_results.json b/all_results.json new file mode 100644 index 0000000..75dca85 --- /dev/null +++ b/all_results.json @@ -0,0 +1,8 @@ +{ + "epoch": 6.72, + "total_flos": 2.7617679424199066e+17, + "train_loss": 0.639291496362005, + "train_runtime": 11118.3141, + "train_samples_per_second": 0.63, + "train_steps_per_second": 0.006 +} \ No newline at end of file diff --git a/config.json b/config.json new file mode 100644 index 0000000..6c52571 --- /dev/null +++ b/config.json @@ -0,0 +1,29 @@ +{ + "_name_or_path": "Qwen/Qwen2.5-7B-Instruct", + "architectures": [ + "Qwen2ForCausalLM" + ], + "attention_dropout": 0.0, + "bos_token_id": 151643, + "eos_token_id": 151645, + "hidden_act": "silu", + "hidden_size": 3584, + "initializer_range": 0.02, + "intermediate_size": 18944, + "max_position_embeddings": 32768, + "max_window_layers": 28, + "model_type": "qwen2", + "num_attention_heads": 28, + "num_hidden_layers": 28, + "num_key_value_heads": 4, + "rms_norm_eps": 1e-06, + "rope_scaling": null, + "rope_theta": 1000000.0, + "sliding_window": null, + "tie_word_embeddings": false, + "torch_dtype": "bfloat16", + "transformers_version": "4.46.1", + "use_cache": false, + "use_sliding_window": false, + "vocab_size": 152064 +} diff --git a/configs.yaml b/configs.yaml new file mode 100644 index 0000000..5f04853 --- /dev/null +++ b/configs.yaml @@ -0,0 +1,37 @@ +assistant_tag: gpt +bf16: true +content_tag: value +cutoff_len: 16384 +dataloader_num_workers: 4 +dataloader_persistent_workers: true +dataloader_pin_memory: true +dataset: mlfoundations-dev/e1_code_fasttext_r1_1k +dataset_dir: ONLINE +ddp_timeout: 180000000 +deepspeed: dcft/train/zero3.json +do_train: true +enable_liger_kernel: true +finetuning_type: full +global_batch_size: 96 +gradient_accumulation_steps: 24 +hub_model_id: mlfoundations-dev/e1_code_fasttext_r1_1k +learning_rate: 2.0e-05 +logging_steps: 1 +lr_scheduler_type: cosine +messages: conversations +model_name_or_path: Qwen/Qwen2.5-7B-Instruct +num_train_epochs: 7.0 +output_dir: /data/cat/ws/ryma833h-dcft/checkpoints/e1_code_fasttext_r1_1k +overwrite_cache: true +per_device_train_batch_size: 1 +plot_loss: true +preprocessing_num_workers: 16 +push_to_db: true +push_to_hub: true +report_to: wandb +role_tag: from +save_strategy: epoch +stage: sft +template: qwen25 +user_tag: human +warmup_ratio: 0.1 diff --git a/configuration.json b/configuration.json new file mode 100644 index 0000000..bbeeda1 --- /dev/null +++ b/configuration.json @@ -0,0 +1 @@ +{"framework": "pytorch", "task": "text-generation", "allow_remote": true} \ No newline at end of file diff --git a/generation_config.json b/generation_config.json new file mode 100644 index 0000000..a753841 --- /dev/null +++ b/generation_config.json @@ -0,0 +1,14 @@ +{ + "bos_token_id": 151643, + "do_sample": true, + "eos_token_id": [ + 151645, + 151643 + ], + "pad_token_id": 151643, + "repetition_penalty": 1.05, + "temperature": 0.7, + "top_k": 20, + "top_p": 0.8, + "transformers_version": "4.46.1" +} diff --git a/merges.txt b/merges.txt new file mode 100644 index 0000000..80c1a19 --- /dev/null +++ b/merges.txt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8831e4f1a044471340f7c0a83d7bd71306a5b867e95fd870f74d0c5308a904d5 +size 1671853 diff --git a/model-00001-of-00004.safetensors b/model-00001-of-00004.safetensors new file mode 100644 index 0000000..f6657b5 --- /dev/null +++ b/model-00001-of-00004.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2569f011270995f82521249f9677034c9d332ddd16bf6cbe6839918ad091138a +size 4877660776 diff --git a/model-00002-of-00004.safetensors b/model-00002-of-00004.safetensors new file mode 100644 index 0000000..7d89367 --- /dev/null +++ b/model-00002-of-00004.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b8b35e427e97e39113e9b6dd71835b21fc68185bbda5af515d94ad5f43b39981 +size 4932751008 diff --git a/model-00003-of-00004.safetensors b/model-00003-of-00004.safetensors new file mode 100644 index 0000000..008476a --- /dev/null +++ b/model-00003-of-00004.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:079d9839d51b461dea0e996065f7fcabf77888ac6c4c1550e3184eb9d9d69305 +size 4330865200 diff --git a/model-00004-of-00004.safetensors b/model-00004-of-00004.safetensors new file mode 100644 index 0000000..7c3d43c --- /dev/null +++ b/model-00004-of-00004.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ee93cdf62d0582cf3cc195cac2270f14f04a3252ebaa0905a7cd7030d430b1c5 +size 1089994880 diff --git a/model.safetensors.index.json b/model.safetensors.index.json new file mode 100644 index 0000000..6ca5084 --- /dev/null +++ b/model.safetensors.index.json @@ -0,0 +1,346 @@ +{ + "metadata": { + "total_size": 15231233024 + }, + "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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-00003-of-00004.safetensors", + "model.layers.18.mlp.down_proj.weight": "model-00003-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-00003-of-00004.safetensors", + "model.layers.18.self_attn.k_proj.bias": "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.bias": "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.bias": "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-00003-of-00004.safetensors", + "model.layers.19.mlp.down_proj.weight": "model-00003-of-00004.safetensors", + "model.layers.19.mlp.gate_proj.weight": "model-00003-of-00004.safetensors", + "model.layers.19.mlp.up_proj.weight": "model-00003-of-00004.safetensors", + "model.layers.19.post_attention_layernorm.weight": "model-00003-of-00004.safetensors", + "model.layers.19.self_attn.k_proj.bias": "model-00003-of-00004.safetensors", + "model.layers.19.self_attn.k_proj.weight": "model-00003-of-00004.safetensors", + "model.layers.19.self_attn.o_proj.weight": "model-00003-of-00004.safetensors", + "model.layers.19.self_attn.q_proj.bias": "model-00003-of-00004.safetensors", + "model.layers.19.self_attn.q_proj.weight": "model-00003-of-00004.safetensors", + "model.layers.19.self_attn.v_proj.bias": "model-00003-of-00004.safetensors", + "model.layers.19.self_attn.v_proj.weight": "model-00003-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.bias": "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.bias": "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.bias": "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-00003-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.bias": "model-00003-of-00004.safetensors", + "model.layers.20.self_attn.k_proj.weight": "model-00003-of-00004.safetensors", + "model.layers.20.self_attn.o_proj.weight": "model-00003-of-00004.safetensors", + "model.layers.20.self_attn.q_proj.bias": "model-00003-of-00004.safetensors", + "model.layers.20.self_attn.q_proj.weight": "model-00003-of-00004.safetensors", + "model.layers.20.self_attn.v_proj.bias": "model-00003-of-00004.safetensors", + "model.layers.20.self_attn.v_proj.weight": "model-00003-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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "model-00003-of-00004.safetensors", + "model.layers.27.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.bias": "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.bias": "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.bias": "model-00001-of-00004.safetensors", + "model.layers.3.self_attn.v_proj.weight": "model-00001-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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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-00002-of-00004.safetensors", + "model.layers.8.mlp.down_proj.weight": "model-00002-of-00004.safetensors", + "model.layers.8.mlp.gate_proj.weight": "model-00002-of-00004.safetensors", + "model.layers.8.mlp.up_proj.weight": "model-00002-of-00004.safetensors", + "model.layers.8.post_attention_layernorm.weight": "model-00002-of-00004.safetensors", + "model.layers.8.self_attn.k_proj.bias": "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.bias": "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.bias": "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.bias": "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.bias": "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.bias": "model-00002-of-00004.safetensors", + "model.layers.9.self_attn.v_proj.weight": "model-00002-of-00004.safetensors", + "model.norm.weight": "model-00003-of-00004.safetensors" + } +} diff --git a/special_tokens_map.json b/special_tokens_map.json new file mode 100644 index 0000000..17305b3 --- /dev/null +++ b/special_tokens_map.json @@ -0,0 +1,31 @@ +{ + "additional_special_tokens": [ + "<|im_start|>", + "<|im_end|>", + "<|object_ref_start|>", + "<|object_ref_end|>", + "<|box_start|>", + "<|box_end|>", + "<|quad_start|>", + "<|quad_end|>", + "<|vision_start|>", + "<|vision_end|>", + "<|vision_pad|>", + "<|image_pad|>", + "<|video_pad|>" + ], + "eos_token": { + "content": "<|endoftext|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false + }, + "pad_token": { + "content": "<|endoftext|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false + } +} diff --git a/tokenizer.json b/tokenizer.json new file mode 100644 index 0000000..51ebb3b --- /dev/null +++ b/tokenizer.json @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9c5ae00e602b8860cbd784ba82a8aa14e8feecec692e7076590d014d7b7fdafa +size 11421896 diff --git a/tokenizer_config.json b/tokenizer_config.json new file mode 100644 index 0000000..b84f53a --- /dev/null +++ b/tokenizer_config.json @@ -0,0 +1,208 @@ +{ + "add_bos_token": false, + "add_prefix_space": false, + "added_tokens_decoder": { + "151643": { + "content": "<|endoftext|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": true + }, + "151644": { + "content": "<|im_start|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": true + }, + "151645": { + "content": "<|im_end|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": true + }, + "151646": { + "content": "<|object_ref_start|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": true + }, + "151647": { + "content": "<|object_ref_end|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": true + }, + "151648": { + "content": "<|box_start|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": true + }, + "151649": { + "content": "<|box_end|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": true + }, + "151650": { + "content": "<|quad_start|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": true + }, + "151651": { + "content": "<|quad_end|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": true + }, + "151652": { + "content": "<|vision_start|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": true + }, + "151653": { + "content": "<|vision_end|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": true + }, + "151654": { + "content": "<|vision_pad|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": true + }, + "151655": { + "content": "<|image_pad|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": true + }, + "151656": { + "content": "<|video_pad|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": true + }, + "151657": { + "content": "", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": false + }, + "151658": { + "content": "", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": false + }, + "151659": { + "content": "<|fim_prefix|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": false + }, + "151660": { + "content": "<|fim_middle|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": false + }, + "151661": { + "content": "<|fim_suffix|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": false + }, + "151662": { + "content": "<|fim_pad|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": false + }, + "151663": { + "content": "<|repo_name|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": false + }, + "151664": { + "content": "<|file_sep|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": false + } + }, + "additional_special_tokens": [ + "<|im_start|>", + "<|im_end|>", + "<|object_ref_start|>", + "<|object_ref_end|>", + "<|box_start|>", + "<|box_end|>", + "<|quad_start|>", + "<|quad_end|>", + "<|vision_start|>", + "<|vision_end|>", + "<|vision_pad|>", + "<|image_pad|>", + "<|video_pad|>" + ], + "bos_token": null, + "chat_template": "{%- if tools %}\n {{- '<|im_start|>system\\n' }}\n {%- if messages[0]['role'] == 'system' %}\n {{- messages[0]['content'] }}\n {%- else %}\n {{- 'You are Qwen, created by Alibaba Cloud. You are a helpful assistant.' }}\n {%- endif %}\n {{- \"\\n\\n# 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\" }}\n {%- for tool in tools %}\n {{- \"\\n\" }}\n {{- tool | tojson }}\n {%- endfor %}\n {{- \"\\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\" }}\n{%- else %}\n {%- if messages[0]['role'] == 'system' %}\n {{- '<|im_start|>system\\n' + messages[0]['content'] + '<|im_end|>\\n' }}\n {%- else %}\n {{- '<|im_start|>system\\nYou are Qwen, created by Alibaba Cloud. You are a helpful assistant.<|im_end|>\\n' }}\n {%- endif %}\n{%- endif %}\n{%- for message in messages %}\n {%- if (message.role == \"user\") or (message.role == \"system\" and not loop.first) or (message.role == \"assistant\" and not message.tool_calls) %}\n {{- '<|im_start|>' + message.role + '\\n' + message.content + '<|im_end|>' + '\\n' }}\n {%- elif message.role == \"assistant\" %}\n {{- '<|im_start|>' + message.role }}\n {%- if message.content %}\n {{- '\\n' + message.content }}\n {%- endif %}\n {%- for tool_call in message.tool_calls %}\n {%- if tool_call.function is defined %}\n {%- set tool_call = tool_call.function %}\n {%- endif %}\n {{- '\\n\\n{\"name\": \"' }}\n {{- tool_call.name }}\n {{- '\", \"arguments\": ' }}\n {{- tool_call.arguments | tojson }}\n {{- '}\\n' }}\n {%- endfor %}\n {{- '<|im_end|>\\n' }}\n {%- elif message.role == \"tool\" %}\n {%- if (loop.index0 == 0) or (messages[loop.index0 - 1].role != \"tool\") %}\n {{- '<|im_start|>user' }}\n {%- endif %}\n {{- '\\n\\n' }}\n {{- message.content }}\n {{- '\\n' }}\n {%- if loop.last or (messages[loop.index0 + 1].role != \"tool\") %}\n {{- '<|im_end|>\\n' }}\n {%- endif %}\n {%- endif %}\n{%- endfor %}\n{%- if add_generation_prompt %}\n {{- '<|im_start|>assistant\\n' }}\n{%- endif %}\n", + "clean_up_tokenization_spaces": false, + "eos_token": "<|endoftext|>", + "errors": "replace", + "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..75dca85 --- /dev/null +++ b/train_results.json @@ -0,0 +1,8 @@ +{ + "epoch": 6.72, + "total_flos": 2.7617679424199066e+17, + "train_loss": 0.639291496362005, + "train_runtime": 11118.3141, + "train_samples_per_second": 0.63, + "train_steps_per_second": 0.006 +} \ No newline at end of file diff --git a/trainer_log.jsonl b/trainer_log.jsonl new file mode 100644 index 0000000..58d3f6b --- /dev/null +++ b/trainer_log.jsonl @@ -0,0 +1,71 @@ +{"current_steps": 1, "total_steps": 70, "loss": 1.0519, "lr": 2.8571428571428573e-06, "epoch": 0.096, "percentage": 1.43, "elapsed_time": "0:02:34", "remaining_time": "2:57:49"} +{"current_steps": 2, "total_steps": 70, "loss": 1.0335, "lr": 5.7142857142857145e-06, "epoch": 0.192, "percentage": 2.86, "elapsed_time": "0:05:08", "remaining_time": "2:54:35"} +{"current_steps": 3, "total_steps": 70, "loss": 1.0137, "lr": 8.571428571428571e-06, "epoch": 0.288, "percentage": 4.29, "elapsed_time": "0:07:35", "remaining_time": "2:49:28"} +{"current_steps": 4, "total_steps": 70, "loss": 0.9749, "lr": 1.1428571428571429e-05, "epoch": 0.384, "percentage": 5.71, "elapsed_time": "0:10:04", "remaining_time": "2:46:13"} +{"current_steps": 5, "total_steps": 70, "loss": 0.9427, "lr": 1.4285714285714287e-05, "epoch": 0.48, "percentage": 7.14, "elapsed_time": "0:12:38", "remaining_time": "2:44:23"} +{"current_steps": 6, "total_steps": 70, "loss": 0.9398, "lr": 1.7142857142857142e-05, "epoch": 0.576, "percentage": 8.57, "elapsed_time": "0:15:23", "remaining_time": "2:44:08"} +{"current_steps": 7, "total_steps": 70, "loss": 0.9153, "lr": 2e-05, "epoch": 0.672, "percentage": 10.0, "elapsed_time": "0:17:45", "remaining_time": "2:39:47"} +{"current_steps": 8, "total_steps": 70, "loss": 0.9034, "lr": 1.9987569212189224e-05, "epoch": 0.768, "percentage": 11.43, "elapsed_time": "0:20:17", "remaining_time": "2:37:16"} +{"current_steps": 9, "total_steps": 70, "loss": 0.8591, "lr": 1.9950307753654016e-05, "epoch": 0.864, "percentage": 12.86, "elapsed_time": "0:22:57", "remaining_time": "2:35:34"} +{"current_steps": 10, "total_steps": 70, "loss": 0.8049, "lr": 1.9888308262251286e-05, "epoch": 0.96, "percentage": 14.29, "elapsed_time": "0:25:24", "remaining_time": "2:32:28"} +{"current_steps": 11, "total_steps": 70, "loss": 0.7908, "lr": 1.9801724878485438e-05, "epoch": 1.056, "percentage": 15.71, "elapsed_time": "0:28:31", "remaining_time": "2:33:00"} +{"current_steps": 12, "total_steps": 70, "loss": 0.7886, "lr": 1.969077286229078e-05, "epoch": 1.152, "percentage": 17.14, "elapsed_time": "0:30:56", "remaining_time": "2:29:34"} +{"current_steps": 13, "total_steps": 70, "loss": 0.7647, "lr": 1.955572805786141e-05, "epoch": 1.248, "percentage": 18.57, "elapsed_time": "0:33:35", "remaining_time": "2:27:15"} +{"current_steps": 14, "total_steps": 70, "loss": 0.7351, "lr": 1.9396926207859085e-05, "epoch": 1.3439999999999999, "percentage": 20.0, "elapsed_time": "0:36:04", "remaining_time": "2:24:18"} +{"current_steps": 15, "total_steps": 70, "loss": 0.745, "lr": 1.921476211870408e-05, "epoch": 1.44, "percentage": 21.43, "elapsed_time": "0:38:40", "remaining_time": "2:21:49"} +{"current_steps": 16, "total_steps": 70, "loss": 0.7438, "lr": 1.900968867902419e-05, "epoch": 1.536, "percentage": 22.86, "elapsed_time": "0:41:08", "remaining_time": "2:18:50"} +{"current_steps": 17, "total_steps": 70, "loss": 0.7215, "lr": 1.8782215733702286e-05, "epoch": 1.6320000000000001, "percentage": 24.29, "elapsed_time": "0:43:46", "remaining_time": "2:16:27"} +{"current_steps": 18, "total_steps": 70, "loss": 0.7282, "lr": 1.8532908816321557e-05, "epoch": 1.728, "percentage": 25.71, "elapsed_time": "0:46:19", "remaining_time": "2:13:49"} +{"current_steps": 19, "total_steps": 70, "loss": 0.7154, "lr": 1.826238774315995e-05, "epoch": 1.8239999999999998, "percentage": 27.14, "elapsed_time": "0:48:45", "remaining_time": "2:10:53"} +{"current_steps": 20, "total_steps": 70, "loss": 0.6982, "lr": 1.7971325072229227e-05, "epoch": 1.92, "percentage": 28.57, "elapsed_time": "0:51:07", "remaining_time": "2:07:48"} +{"current_steps": 21, "total_steps": 70, "loss": 0.7014, "lr": 1.766044443118978e-05, "epoch": 2.016, "percentage": 30.0, "elapsed_time": "0:54:32", "remaining_time": "2:07:15"} +{"current_steps": 22, "total_steps": 70, "loss": 0.6724, "lr": 1.7330518718298263e-05, "epoch": 2.112, "percentage": 31.43, "elapsed_time": "0:57:02", "remaining_time": "2:04:27"} +{"current_steps": 23, "total_steps": 70, "loss": 0.6739, "lr": 1.698236818086073e-05, "epoch": 2.208, "percentage": 32.86, "elapsed_time": "0:59:35", "remaining_time": "2:01:46"} +{"current_steps": 24, "total_steps": 70, "loss": 0.6576, "lr": 1.6616858375968596e-05, "epoch": 2.304, "percentage": 34.29, "elapsed_time": "1:02:21", "remaining_time": "1:59:32"} +{"current_steps": 25, "total_steps": 70, "loss": 0.6357, "lr": 1.6234898018587336e-05, "epoch": 2.4, "percentage": 35.71, "elapsed_time": "1:04:48", "remaining_time": "1:56:38"} +{"current_steps": 26, "total_steps": 70, "loss": 0.6485, "lr": 1.5837436722347902e-05, "epoch": 2.496, "percentage": 37.14, "elapsed_time": "1:07:17", "remaining_time": "1:53:53"} +{"current_steps": 27, "total_steps": 70, "loss": 0.6373, "lr": 1.5425462638657597e-05, "epoch": 2.592, "percentage": 38.57, "elapsed_time": "1:09:55", "remaining_time": "1:51:22"} +{"current_steps": 28, "total_steps": 70, "loss": 0.6327, "lr": 1.5000000000000002e-05, "epoch": 2.6879999999999997, "percentage": 40.0, "elapsed_time": "1:12:18", "remaining_time": "1:48:27"} +{"current_steps": 29, "total_steps": 70, "loss": 0.638, "lr": 1.4562106573531632e-05, "epoch": 2.784, "percentage": 41.43, "elapsed_time": "1:15:00", "remaining_time": "1:46:02"} +{"current_steps": 30, "total_steps": 70, "loss": 0.6268, "lr": 1.4112871031306118e-05, "epoch": 2.88, "percentage": 42.86, "elapsed_time": "1:17:31", "remaining_time": "1:43:22"} +{"current_steps": 31, "total_steps": 70, "loss": 0.6262, "lr": 1.3653410243663953e-05, "epoch": 2.976, "percentage": 44.29, "elapsed_time": "1:20:07", "remaining_time": "1:40:47"} +{"current_steps": 32, "total_steps": 70, "loss": 0.5969, "lr": 1.3184866502516846e-05, "epoch": 3.072, "percentage": 45.71, "elapsed_time": "1:23:27", "remaining_time": "1:39:06"} +{"current_steps": 33, "total_steps": 70, "loss": 0.5954, "lr": 1.2708404681430054e-05, "epoch": 3.168, "percentage": 47.14, "elapsed_time": "1:26:02", "remaining_time": "1:36:27"} +{"current_steps": 34, "total_steps": 70, "loss": 0.5805, "lr": 1.2225209339563144e-05, "epoch": 3.2640000000000002, "percentage": 48.57, "elapsed_time": "1:28:31", "remaining_time": "1:33:43"} +{"current_steps": 35, "total_steps": 70, "loss": 0.5929, "lr": 1.1736481776669307e-05, "epoch": 3.36, "percentage": 50.0, "elapsed_time": "1:31:09", "remaining_time": "1:31:09"} +{"current_steps": 36, "total_steps": 70, "loss": 0.5865, "lr": 1.1243437046474854e-05, "epoch": 3.456, "percentage": 51.43, "elapsed_time": "1:33:35", "remaining_time": "1:28:23"} +{"current_steps": 37, "total_steps": 70, "loss": 0.5861, "lr": 1.0747300935864245e-05, "epoch": 3.552, "percentage": 52.86, "elapsed_time": "1:36:19", "remaining_time": "1:25:54"} +{"current_steps": 38, "total_steps": 70, "loss": 0.5732, "lr": 1.0249306917380731e-05, "epoch": 3.648, "percentage": 54.29, "elapsed_time": "1:38:50", "remaining_time": "1:23:13"} +{"current_steps": 39, "total_steps": 70, "loss": 0.5584, "lr": 9.750693082619274e-06, "epoch": 3.7439999999999998, "percentage": 55.71, "elapsed_time": "1:41:32", "remaining_time": "1:20:42"} +{"current_steps": 40, "total_steps": 70, "loss": 0.5548, "lr": 9.252699064135759e-06, "epoch": 3.84, "percentage": 57.14, "elapsed_time": "1:43:46", "remaining_time": "1:17:49"} +{"current_steps": 41, "total_steps": 70, "loss": 0.5655, "lr": 8.756562953525151e-06, "epoch": 3.936, "percentage": 58.57, "elapsed_time": "1:46:21", "remaining_time": "1:15:13"} +{"current_steps": 42, "total_steps": 70, "loss": 0.5633, "lr": 8.263518223330698e-06, "epoch": 4.032, "percentage": 60.0, "elapsed_time": "1:49:38", "remaining_time": "1:13:05"} +{"current_steps": 43, "total_steps": 70, "loss": 0.5378, "lr": 7.774790660436857e-06, "epoch": 4.128, "percentage": 61.43, "elapsed_time": "1:51:53", "remaining_time": "1:10:15"} +{"current_steps": 44, "total_steps": 70, "loss": 0.543, "lr": 7.291595318569951e-06, "epoch": 4.224, "percentage": 62.86, "elapsed_time": "1:54:27", "remaining_time": "1:07:38"} +{"current_steps": 45, "total_steps": 70, "loss": 0.5347, "lr": 6.815133497483157e-06, "epoch": 4.32, "percentage": 64.29, "elapsed_time": "1:56:58", "remaining_time": "1:04:59"} +{"current_steps": 46, "total_steps": 70, "loss": 0.5447, "lr": 6.34658975633605e-06, "epoch": 4.416, "percentage": 65.71, "elapsed_time": "1:59:19", "remaining_time": "1:02:15"} +{"current_steps": 47, "total_steps": 70, "loss": 0.5287, "lr": 5.887128968693887e-06, "epoch": 4.5120000000000005, "percentage": 67.14, "elapsed_time": "2:01:51", "remaining_time": "0:59:38"} +{"current_steps": 48, "total_steps": 70, "loss": 0.5415, "lr": 5.43789342646837e-06, "epoch": 4.608, "percentage": 68.57, "elapsed_time": "2:04:25", "remaining_time": "0:57:01"} +{"current_steps": 49, "total_steps": 70, "loss": 0.5299, "lr": 5.000000000000003e-06, "epoch": 4.704, "percentage": 70.0, "elapsed_time": "2:07:06", "remaining_time": "0:54:28"} +{"current_steps": 50, "total_steps": 70, "loss": 0.54, "lr": 4.5745373613424075e-06, "epoch": 4.8, "percentage": 71.43, "elapsed_time": "2:09:48", "remaining_time": "0:51:55"} +{"current_steps": 51, "total_steps": 70, "loss": 0.5145, "lr": 4.162563277652104e-06, "epoch": 4.896, "percentage": 72.86, "elapsed_time": "2:12:29", "remaining_time": "0:49:21"} +{"current_steps": 52, "total_steps": 70, "loss": 0.522, "lr": 3.7651019814126656e-06, "epoch": 4.992, "percentage": 74.29, "elapsed_time": "2:15:04", "remaining_time": "0:46:45"} +{"current_steps": 53, "total_steps": 70, "loss": 0.5161, "lr": 3.3831416240314085e-06, "epoch": 5.088, "percentage": 75.71, "elapsed_time": "2:18:41", "remaining_time": "0:44:29"} +{"current_steps": 54, "total_steps": 70, "loss": 0.5171, "lr": 3.017631819139273e-06, "epoch": 5.184, "percentage": 77.14, "elapsed_time": "2:21:19", "remaining_time": "0:41:52"} +{"current_steps": 55, "total_steps": 70, "loss": 0.497, "lr": 2.669481281701739e-06, "epoch": 5.28, "percentage": 78.57, "elapsed_time": "2:23:56", "remaining_time": "0:39:15"} +{"current_steps": 56, "total_steps": 70, "loss": 0.5036, "lr": 2.339555568810221e-06, "epoch": 5.376, "percentage": 80.0, "elapsed_time": "2:26:21", "remaining_time": "0:36:35"} +{"current_steps": 57, "total_steps": 70, "loss": 0.5076, "lr": 2.0286749277707783e-06, "epoch": 5.4719999999999995, "percentage": 81.43, "elapsed_time": "2:29:00", "remaining_time": "0:33:59"} +{"current_steps": 58, "total_steps": 70, "loss": 0.5087, "lr": 1.7376122568400533e-06, "epoch": 5.568, "percentage": 82.86, "elapsed_time": "2:31:27", "remaining_time": "0:31:20"} +{"current_steps": 59, "total_steps": 70, "loss": 0.4892, "lr": 1.467091183678444e-06, "epoch": 5.664, "percentage": 84.29, "elapsed_time": "2:34:00", "remaining_time": "0:28:42"} +{"current_steps": 60, "total_steps": 70, "loss": 0.5286, "lr": 1.2177842662977136e-06, "epoch": 5.76, "percentage": 85.71, "elapsed_time": "2:36:36", "remaining_time": "0:26:06"} +{"current_steps": 61, "total_steps": 70, "loss": 0.5088, "lr": 9.903113209758098e-07, "epoch": 5.856, "percentage": 87.14, "elapsed_time": "2:39:08", "remaining_time": "0:23:28"} +{"current_steps": 62, "total_steps": 70, "loss": 0.4946, "lr": 7.852378812959227e-07, "epoch": 5.952, "percentage": 88.57, "elapsed_time": "2:41:36", "remaining_time": "0:20:51"} +{"current_steps": 63, "total_steps": 70, "loss": 0.4894, "lr": 6.030737921409169e-07, "epoch": 6.048, "percentage": 90.0, "elapsed_time": "2:45:26", "remaining_time": "0:18:22"} +{"current_steps": 64, "total_steps": 70, "loss": 0.5078, "lr": 4.4427194213859216e-07, "epoch": 6.144, "percentage": 91.43, "elapsed_time": "2:47:54", "remaining_time": "0:15:44"} +{"current_steps": 65, "total_steps": 70, "loss": 0.4851, "lr": 3.0922713770922155e-07, "epoch": 6.24, "percentage": 92.86, "elapsed_time": "2:50:23", "remaining_time": "0:13:06"} +{"current_steps": 66, "total_steps": 70, "loss": 0.5004, "lr": 1.9827512151456175e-07, "epoch": 6.336, "percentage": 94.29, "elapsed_time": "2:52:44", "remaining_time": "0:10:28"} +{"current_steps": 67, "total_steps": 70, "loss": 0.4937, "lr": 1.1169173774871478e-07, "epoch": 6.432, "percentage": 95.71, "elapsed_time": "2:55:19", "remaining_time": "0:07:51"} +{"current_steps": 68, "total_steps": 70, "loss": 0.497, "lr": 4.9692246345985905e-08, "epoch": 6.5280000000000005, "percentage": 97.14, "elapsed_time": "2:57:59", "remaining_time": "0:05:14"} +{"current_steps": 69, "total_steps": 70, "loss": 0.4973, "lr": 1.2430787810776556e-08, "epoch": 6.624, "percentage": 98.57, "elapsed_time": "3:00:24", "remaining_time": "0:02:36"} +{"current_steps": 70, "total_steps": 70, "loss": 0.4974, "lr": 0.0, "epoch": 6.72, "percentage": 100.0, "elapsed_time": "3:03:02", "remaining_time": "0:00:00"} +{"current_steps": 70, "total_steps": 70, "epoch": 6.72, "percentage": 100.0, "elapsed_time": "3:05:16", "remaining_time": "0:00:00"} diff --git a/trainer_state.json b/trainer_state.json new file mode 100644 index 0000000..ced15fc --- /dev/null +++ b/trainer_state.json @@ -0,0 +1,532 @@ +{ + "best_metric": null, + "best_model_checkpoint": null, + "epoch": 6.72, + "eval_steps": 500, + "global_step": 70, + "is_hyper_param_search": false, + "is_local_process_zero": true, + "is_world_process_zero": true, + "log_history": [ + { + "epoch": 0.096, + "grad_norm": 6.592547259478091, + "learning_rate": 2.8571428571428573e-06, + "loss": 1.0519, + "step": 1 + }, + { + "epoch": 0.192, + "grad_norm": 6.567455308840202, + "learning_rate": 5.7142857142857145e-06, + "loss": 1.0335, + "step": 2 + }, + { + "epoch": 0.288, + "grad_norm": 5.940088825094661, + "learning_rate": 8.571428571428571e-06, + "loss": 1.0137, + "step": 3 + }, + { + "epoch": 0.384, + "grad_norm": 2.8490940172517343, + "learning_rate": 1.1428571428571429e-05, + "loss": 0.9749, + "step": 4 + }, + { + "epoch": 0.48, + "grad_norm": 4.051471478703239, + "learning_rate": 1.4285714285714287e-05, + "loss": 0.9427, + "step": 5 + }, + { + "epoch": 0.576, + "grad_norm": 4.064845725783386, + "learning_rate": 1.7142857142857142e-05, + "loss": 0.9398, + "step": 6 + }, + { + "epoch": 0.672, + "grad_norm": 4.123631763256305, + "learning_rate": 2e-05, + "loss": 0.9153, + "step": 7 + }, + { + "epoch": 0.768, + "grad_norm": 3.0784568570852775, + "learning_rate": 1.9987569212189224e-05, + "loss": 0.9034, + "step": 8 + }, + { + "epoch": 0.864, + "grad_norm": 2.2573484073375982, + "learning_rate": 1.9950307753654016e-05, + "loss": 0.8591, + "step": 9 + }, + { + "epoch": 0.96, + "grad_norm": 1.5770602873647688, + "learning_rate": 1.9888308262251286e-05, + "loss": 0.8049, + "step": 10 + }, + { + "epoch": 1.056, + "grad_norm": 1.276352557519139, + "learning_rate": 1.9801724878485438e-05, + "loss": 0.7908, + "step": 11 + }, + { + "epoch": 1.152, + "grad_norm": 1.4262974839409701, + "learning_rate": 1.969077286229078e-05, + "loss": 0.7886, + "step": 12 + }, + { + "epoch": 1.248, + "grad_norm": 1.4161139727150824, + "learning_rate": 1.955572805786141e-05, + "loss": 0.7647, + "step": 13 + }, + { + "epoch": 1.3439999999999999, + "grad_norm": 0.985317354399831, + "learning_rate": 1.9396926207859085e-05, + "loss": 0.7351, + "step": 14 + }, + { + "epoch": 1.44, + "grad_norm": 1.1731937626326456, + "learning_rate": 1.921476211870408e-05, + "loss": 0.745, + "step": 15 + }, + { + "epoch": 1.536, + "grad_norm": 1.2342351925190727, + "learning_rate": 1.900968867902419e-05, + "loss": 0.7438, + "step": 16 + }, + { + "epoch": 1.6320000000000001, + "grad_norm": 0.8586648305989024, + "learning_rate": 1.8782215733702286e-05, + "loss": 0.7215, + "step": 17 + }, + { + "epoch": 1.728, + "grad_norm": 1.2623342706689424, + "learning_rate": 1.8532908816321557e-05, + "loss": 0.7282, + "step": 18 + }, + { + "epoch": 1.8239999999999998, + "grad_norm": 1.0216036051872144, + "learning_rate": 1.826238774315995e-05, + "loss": 0.7154, + "step": 19 + }, + { + "epoch": 1.92, + "grad_norm": 0.8625523662853701, + "learning_rate": 1.7971325072229227e-05, + "loss": 0.6982, + "step": 20 + }, + { + "epoch": 2.016, + "grad_norm": 0.9240003298803581, + "learning_rate": 1.766044443118978e-05, + "loss": 0.7014, + "step": 21 + }, + { + "epoch": 2.112, + "grad_norm": 0.7872081733723811, + "learning_rate": 1.7330518718298263e-05, + "loss": 0.6724, + "step": 22 + }, + { + "epoch": 2.208, + "grad_norm": 0.6179867079850143, + "learning_rate": 1.698236818086073e-05, + "loss": 0.6739, + "step": 23 + }, + { + "epoch": 2.304, + "grad_norm": 0.7504143540003096, + "learning_rate": 1.6616858375968596e-05, + "loss": 0.6576, + "step": 24 + }, + { + "epoch": 2.4, + "grad_norm": 0.6238627830885334, + "learning_rate": 1.6234898018587336e-05, + "loss": 0.6357, + "step": 25 + }, + { + "epoch": 2.496, + "grad_norm": 0.787718950541536, + "learning_rate": 1.5837436722347902e-05, + "loss": 0.6485, + "step": 26 + }, + { + "epoch": 2.592, + "grad_norm": 0.5841746630896626, + "learning_rate": 1.5425462638657597e-05, + "loss": 0.6373, + "step": 27 + }, + { + "epoch": 2.6879999999999997, + "grad_norm": 0.6595519957236287, + "learning_rate": 1.5000000000000002e-05, + "loss": 0.6327, + "step": 28 + }, + { + "epoch": 2.784, + "grad_norm": 0.5810919433489632, + "learning_rate": 1.4562106573531632e-05, + "loss": 0.638, + "step": 29 + }, + { + "epoch": 2.88, + "grad_norm": 0.5598203359351309, + "learning_rate": 1.4112871031306118e-05, + "loss": 0.6268, + "step": 30 + }, + { + "epoch": 2.976, + "grad_norm": 0.5081893908295881, + "learning_rate": 1.3653410243663953e-05, + "loss": 0.6262, + "step": 31 + }, + { + "epoch": 3.072, + "grad_norm": 0.46842003845293695, + "learning_rate": 1.3184866502516846e-05, + "loss": 0.5969, + "step": 32 + }, + { + "epoch": 3.168, + "grad_norm": 0.5411918223030173, + "learning_rate": 1.2708404681430054e-05, + "loss": 0.5954, + "step": 33 + }, + { + "epoch": 3.2640000000000002, + "grad_norm": 0.4186008205264484, + "learning_rate": 1.2225209339563144e-05, + "loss": 0.5805, + "step": 34 + }, + { + "epoch": 3.36, + "grad_norm": 0.5012713173626475, + "learning_rate": 1.1736481776669307e-05, + "loss": 0.5929, + "step": 35 + }, + { + "epoch": 3.456, + "grad_norm": 0.42142495249376466, + "learning_rate": 1.1243437046474854e-05, + "loss": 0.5865, + "step": 36 + }, + { + "epoch": 3.552, + "grad_norm": 0.4755105712649461, + "learning_rate": 1.0747300935864245e-05, + "loss": 0.5861, + "step": 37 + }, + { + "epoch": 3.648, + "grad_norm": 0.46101341025428494, + "learning_rate": 1.0249306917380731e-05, + "loss": 0.5732, + "step": 38 + }, + { + "epoch": 3.7439999999999998, + "grad_norm": 0.43246687184135535, + "learning_rate": 9.750693082619274e-06, + "loss": 0.5584, + "step": 39 + }, + { + "epoch": 3.84, + "grad_norm": 0.39254399972143406, + "learning_rate": 9.252699064135759e-06, + "loss": 0.5548, + "step": 40 + }, + { + "epoch": 3.936, + "grad_norm": 0.3861973176797019, + "learning_rate": 8.756562953525151e-06, + "loss": 0.5655, + "step": 41 + }, + { + "epoch": 4.032, + "grad_norm": 0.42374098534776666, + "learning_rate": 8.263518223330698e-06, + "loss": 0.5633, + "step": 42 + }, + { + "epoch": 4.128, + "grad_norm": 0.4538854225702699, + "learning_rate": 7.774790660436857e-06, + "loss": 0.5378, + "step": 43 + }, + { + "epoch": 4.224, + "grad_norm": 0.3781458261925399, + "learning_rate": 7.291595318569951e-06, + "loss": 0.543, + "step": 44 + }, + { + "epoch": 4.32, + "grad_norm": 0.41511928586481533, + "learning_rate": 6.815133497483157e-06, + "loss": 0.5347, + "step": 45 + }, + { + "epoch": 4.416, + "grad_norm": 0.402421179277013, + "learning_rate": 6.34658975633605e-06, + "loss": 0.5447, + "step": 46 + }, + { + "epoch": 4.5120000000000005, + "grad_norm": 0.3556682564046602, + "learning_rate": 5.887128968693887e-06, + "loss": 0.5287, + "step": 47 + }, + { + "epoch": 4.608, + "grad_norm": 0.4086586929836952, + "learning_rate": 5.43789342646837e-06, + "loss": 0.5415, + "step": 48 + }, + { + "epoch": 4.704, + "grad_norm": 0.37123732327538245, + "learning_rate": 5.000000000000003e-06, + "loss": 0.5299, + "step": 49 + }, + { + "epoch": 4.8, + "grad_norm": 0.33105088139680716, + "learning_rate": 4.5745373613424075e-06, + "loss": 0.54, + "step": 50 + }, + { + "epoch": 4.896, + "grad_norm": 0.34036827210692955, + "learning_rate": 4.162563277652104e-06, + "loss": 0.5145, + "step": 51 + }, + { + "epoch": 4.992, + "grad_norm": 0.37280888371104687, + "learning_rate": 3.7651019814126656e-06, + "loss": 0.522, + "step": 52 + }, + { + "epoch": 5.088, + "grad_norm": 0.33200357438780415, + "learning_rate": 3.3831416240314085e-06, + "loss": 0.5161, + "step": 53 + }, + { + "epoch": 5.184, + "grad_norm": 0.3468598712867419, + "learning_rate": 3.017631819139273e-06, + "loss": 0.5171, + "step": 54 + }, + { + "epoch": 5.28, + "grad_norm": 0.3155159225190127, + "learning_rate": 2.669481281701739e-06, + "loss": 0.497, + "step": 55 + }, + { + "epoch": 5.376, + "grad_norm": 0.2950796973774278, + "learning_rate": 2.339555568810221e-06, + "loss": 0.5036, + "step": 56 + }, + { + "epoch": 5.4719999999999995, + "grad_norm": 0.2771484456896418, + "learning_rate": 2.0286749277707783e-06, + "loss": 0.5076, + "step": 57 + }, + { + "epoch": 5.568, + "grad_norm": 0.30202891361186884, + "learning_rate": 1.7376122568400533e-06, + "loss": 0.5087, + "step": 58 + }, + { + "epoch": 5.664, + "grad_norm": 0.284433863235484, + "learning_rate": 1.467091183678444e-06, + "loss": 0.4892, + "step": 59 + }, + { + "epoch": 5.76, + "grad_norm": 0.28905567583309655, + "learning_rate": 1.2177842662977136e-06, + "loss": 0.5286, + "step": 60 + }, + { + "epoch": 5.856, + "grad_norm": 0.30113786550921257, + "learning_rate": 9.903113209758098e-07, + "loss": 0.5088, + "step": 61 + }, + { + "epoch": 5.952, + "grad_norm": 0.29406826587431034, + "learning_rate": 7.852378812959227e-07, + "loss": 0.4946, + "step": 62 + }, + { + "epoch": 6.048, + "grad_norm": 0.2620114991759815, + "learning_rate": 6.030737921409169e-07, + "loss": 0.4894, + "step": 63 + }, + { + "epoch": 6.144, + "grad_norm": 0.2536132887815071, + "learning_rate": 4.4427194213859216e-07, + "loss": 0.5078, + "step": 64 + }, + { + "epoch": 6.24, + "grad_norm": 0.2493726460319065, + "learning_rate": 3.0922713770922155e-07, + "loss": 0.4851, + "step": 65 + }, + { + "epoch": 6.336, + "grad_norm": 0.24730699837443748, + "learning_rate": 1.9827512151456175e-07, + "loss": 0.5004, + "step": 66 + }, + { + "epoch": 6.432, + "grad_norm": 0.24267186596083232, + "learning_rate": 1.1169173774871478e-07, + "loss": 0.4937, + "step": 67 + }, + { + "epoch": 6.5280000000000005, + "grad_norm": 0.23960620066529348, + "learning_rate": 4.9692246345985905e-08, + "loss": 0.497, + "step": 68 + }, + { + "epoch": 6.624, + "grad_norm": 0.25488562503009676, + "learning_rate": 1.2430787810776556e-08, + "loss": 0.4973, + "step": 69 + }, + { + "epoch": 6.72, + "grad_norm": 0.24026471856709594, + "learning_rate": 0.0, + "loss": 0.4974, + "step": 70 + }, + { + "epoch": 6.72, + "step": 70, + "total_flos": 2.7617679424199066e+17, + "train_loss": 0.639291496362005, + "train_runtime": 11118.3141, + "train_samples_per_second": 0.63, + "train_steps_per_second": 0.006 + } + ], + "logging_steps": 1, + "max_steps": 70, + "num_input_tokens_seen": 0, + "num_train_epochs": 7, + "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": 2.7617679424199066e+17, + "train_batch_size": 1, + "trial_name": null, + "trial_params": null +} diff --git a/training_args.bin b/training_args.bin new file mode 100644 index 0000000..c61ea6f --- /dev/null +++ b/training_args.bin @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:195555ecfd04b121c7ab1cab3101551ec5a9be3008bd2fe22b3fc72453948984 +size 7288 diff --git a/training_loss.png b/training_loss.png new file mode 100644 index 0000000000000000000000000000000000000000..d8edb2d7eeeb3c63043cea6312ab99d5d61b5734 GIT binary patch literal 40946 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

kN0EW$BZR7BMnR5fllZ{rhUu91heAgP! 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

-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

B*HQ59*kw6GYQ{4y<+P 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