From 6d37e05c60a4f3ba524d3c5f70707bedf86a9204 Mon Sep 17 00:00:00 2001 From: ModelHub XC Date: Wed, 20 May 2026 09:00:07 +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: JosephusCheung/LL7M Source: Original Platform --- .gitattributes | 35 ++ .ipynb_checkpoints/config-checkpoint.json | 30 ++ .../generation_config-checkpoint.json | 7 + .../pytorch_model.bin.index-checkpoint.json | 330 ++++++++++++++++++ .../tokenizer_config-checkpoint.json | 33 ++ README.md | 57 +++ config.json | 30 ++ generation_config.json | 7 + ppl.jpg | Bin 0 -> 69044 bytes pytorch_model-00001-of-00002.bin | 3 + pytorch_model-00002-of-00002.bin | 3 + pytorch_model.bin.index.json | 330 ++++++++++++++++++ special_tokens_map.json | 23 ++ tokenizer.model | 3 + tokenizer_config.json | 33 ++ 15 files changed, 924 insertions(+) create mode 100644 .gitattributes create mode 100644 .ipynb_checkpoints/config-checkpoint.json create mode 100644 .ipynb_checkpoints/generation_config-checkpoint.json create mode 100644 .ipynb_checkpoints/pytorch_model.bin.index-checkpoint.json create mode 100644 .ipynb_checkpoints/tokenizer_config-checkpoint.json create mode 100644 README.md create mode 100644 config.json create mode 100644 generation_config.json create mode 100644 ppl.jpg create mode 100644 pytorch_model-00001-of-00002.bin create mode 100644 pytorch_model-00002-of-00002.bin create mode 100644 pytorch_model.bin.index.json create mode 100644 special_tokens_map.json create mode 100644 tokenizer.model create mode 100644 tokenizer_config.json diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..a6344aa --- /dev/null +++ b/.gitattributes @@ -0,0 +1,35 @@ +*.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 diff --git a/.ipynb_checkpoints/config-checkpoint.json b/.ipynb_checkpoints/config-checkpoint.json new file mode 100644 index 0000000..b3ec90f --- /dev/null +++ b/.ipynb_checkpoints/config-checkpoint.json @@ -0,0 +1,30 @@ +{ + "_name_or_path": "ll7m", + "architectures": [ + "LlamaForCausalLM" + ], + "bos_token_id": 1, + "eos_token_id": 2, + "hidden_act": "silu", + "hidden_size": 4096, + "initializer_range": 0.02, + "intermediate_size": 11008, + "max_position_embeddings": 2048, + "max_sequence_length": 262144, + "model_type": "llama", + "num_attention_heads": 32, + "num_hidden_layers": 32, + "num_key_value_heads": 32, + "pad_token_id": 0, + "pretraining_tp": 1, + "rms_norm_eps": 1e-06, + "rope_scaling": { + "factor": 64.0, + "type": "linear" + }, + "tie_word_embeddings": false, + "torch_dtype": "float16", + "transformers_version": "4.32.0.dev0", + "use_cache": false, + "vocab_size": 39424 +} diff --git a/.ipynb_checkpoints/generation_config-checkpoint.json b/.ipynb_checkpoints/generation_config-checkpoint.json new file mode 100644 index 0000000..8c88a8f --- /dev/null +++ b/.ipynb_checkpoints/generation_config-checkpoint.json @@ -0,0 +1,7 @@ +{ + "_from_model_config": true, + "bos_token_id": 1, + "eos_token_id": 2, + "pad_token_id": 0, + "transformers_version": "4.32.0.dev0" +} diff --git a/.ipynb_checkpoints/pytorch_model.bin.index-checkpoint.json b/.ipynb_checkpoints/pytorch_model.bin.index-checkpoint.json new file mode 100644 index 0000000..7db317e --- /dev/null +++ b/.ipynb_checkpoints/pytorch_model.bin.index-checkpoint.json @@ -0,0 +1,330 @@ +{ + "metadata": { + "total_size": 13598474240 + }, + "weight_map": { + "lm_head.weight": "pytorch_model-00002-of-00002.bin", + "model.embed_tokens.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.0.input_layernorm.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.0.mlp.down_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.0.mlp.gate_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.0.mlp.up_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.0.post_attention_layernorm.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.0.self_attn.k_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.0.self_attn.o_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.0.self_attn.q_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.0.self_attn.rotary_emb.inv_freq": "pytorch_model-00001-of-00002.bin", + "model.layers.0.self_attn.v_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.1.input_layernorm.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.1.mlp.down_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.1.mlp.gate_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.1.mlp.up_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.1.post_attention_layernorm.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.1.self_attn.k_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.1.self_attn.o_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.1.self_attn.q_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.1.self_attn.rotary_emb.inv_freq": "pytorch_model-00001-of-00002.bin", + "model.layers.1.self_attn.v_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.10.input_layernorm.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.10.mlp.down_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.10.mlp.gate_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.10.mlp.up_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.10.post_attention_layernorm.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.10.self_attn.k_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.10.self_attn.o_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.10.self_attn.q_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.10.self_attn.rotary_emb.inv_freq": "pytorch_model-00001-of-00002.bin", + "model.layers.10.self_attn.v_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.11.input_layernorm.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.11.mlp.down_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.11.mlp.gate_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.11.mlp.up_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.11.post_attention_layernorm.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.11.self_attn.k_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.11.self_attn.o_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.11.self_attn.q_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.11.self_attn.rotary_emb.inv_freq": "pytorch_model-00001-of-00002.bin", + "model.layers.11.self_attn.v_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.12.input_layernorm.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.12.mlp.down_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.12.mlp.gate_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.12.mlp.up_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.12.post_attention_layernorm.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.12.self_attn.k_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.12.self_attn.o_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.12.self_attn.q_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.12.self_attn.rotary_emb.inv_freq": "pytorch_model-00001-of-00002.bin", + "model.layers.12.self_attn.v_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.13.input_layernorm.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.13.mlp.down_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.13.mlp.gate_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.13.mlp.up_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.13.post_attention_layernorm.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.13.self_attn.k_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.13.self_attn.o_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.13.self_attn.q_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.13.self_attn.rotary_emb.inv_freq": "pytorch_model-00001-of-00002.bin", + "model.layers.13.self_attn.v_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.14.input_layernorm.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.14.mlp.down_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.14.mlp.gate_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.14.mlp.up_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.14.post_attention_layernorm.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.14.self_attn.k_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.14.self_attn.o_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.14.self_attn.q_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.14.self_attn.rotary_emb.inv_freq": "pytorch_model-00001-of-00002.bin", + "model.layers.14.self_attn.v_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.15.input_layernorm.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.15.mlp.down_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.15.mlp.gate_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.15.mlp.up_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.15.post_attention_layernorm.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.15.self_attn.k_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.15.self_attn.o_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.15.self_attn.q_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.15.self_attn.rotary_emb.inv_freq": "pytorch_model-00001-of-00002.bin", + "model.layers.15.self_attn.v_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.16.input_layernorm.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.16.mlp.down_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.16.mlp.gate_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.16.mlp.up_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.16.post_attention_layernorm.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.16.self_attn.k_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.16.self_attn.o_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.16.self_attn.q_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.16.self_attn.rotary_emb.inv_freq": "pytorch_model-00001-of-00002.bin", + "model.layers.16.self_attn.v_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.17.input_layernorm.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.17.mlp.down_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.17.mlp.gate_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.17.mlp.up_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.17.post_attention_layernorm.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.17.self_attn.k_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.17.self_attn.o_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.17.self_attn.q_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.17.self_attn.rotary_emb.inv_freq": "pytorch_model-00001-of-00002.bin", + "model.layers.17.self_attn.v_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.18.input_layernorm.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.18.mlp.down_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.18.mlp.gate_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.18.mlp.up_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.18.post_attention_layernorm.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.18.self_attn.k_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.18.self_attn.o_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.18.self_attn.q_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.18.self_attn.rotary_emb.inv_freq": "pytorch_model-00001-of-00002.bin", + "model.layers.18.self_attn.v_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.19.input_layernorm.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.19.mlp.down_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.19.mlp.gate_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.19.mlp.up_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.19.post_attention_layernorm.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.19.self_attn.k_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.19.self_attn.o_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.19.self_attn.q_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.19.self_attn.rotary_emb.inv_freq": "pytorch_model-00001-of-00002.bin", + "model.layers.19.self_attn.v_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.2.input_layernorm.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.2.mlp.down_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.2.mlp.gate_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.2.mlp.up_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.2.post_attention_layernorm.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.2.self_attn.k_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.2.self_attn.o_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.2.self_attn.q_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.2.self_attn.rotary_emb.inv_freq": "pytorch_model-00001-of-00002.bin", + "model.layers.2.self_attn.v_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.20.input_layernorm.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.20.mlp.down_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.20.mlp.gate_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.20.mlp.up_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.20.post_attention_layernorm.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.20.self_attn.k_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.20.self_attn.o_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.20.self_attn.q_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.20.self_attn.rotary_emb.inv_freq": "pytorch_model-00001-of-00002.bin", + "model.layers.20.self_attn.v_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.21.input_layernorm.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.21.mlp.down_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.21.mlp.gate_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.21.mlp.up_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.21.post_attention_layernorm.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.21.self_attn.k_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.21.self_attn.o_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.21.self_attn.q_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.21.self_attn.rotary_emb.inv_freq": "pytorch_model-00001-of-00002.bin", + "model.layers.21.self_attn.v_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.22.input_layernorm.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.22.mlp.down_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.22.mlp.gate_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.22.mlp.up_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.22.post_attention_layernorm.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.22.self_attn.k_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.22.self_attn.o_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.22.self_attn.q_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.22.self_attn.rotary_emb.inv_freq": "pytorch_model-00001-of-00002.bin", + "model.layers.22.self_attn.v_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.23.input_layernorm.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.23.mlp.down_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.23.mlp.gate_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.23.mlp.up_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.23.post_attention_layernorm.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.23.self_attn.k_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.23.self_attn.o_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.23.self_attn.q_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.23.self_attn.rotary_emb.inv_freq": "pytorch_model-00001-of-00002.bin", + "model.layers.23.self_attn.v_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.24.input_layernorm.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.24.mlp.down_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.24.mlp.gate_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.24.mlp.up_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.24.post_attention_layernorm.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.24.self_attn.k_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.24.self_attn.o_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.24.self_attn.q_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.24.self_attn.rotary_emb.inv_freq": "pytorch_model-00002-of-00002.bin", + "model.layers.24.self_attn.v_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.25.input_layernorm.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.25.mlp.down_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.25.mlp.gate_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.25.mlp.up_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.25.post_attention_layernorm.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.25.self_attn.k_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.25.self_attn.o_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.25.self_attn.q_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.25.self_attn.rotary_emb.inv_freq": "pytorch_model-00002-of-00002.bin", + "model.layers.25.self_attn.v_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.26.input_layernorm.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.26.mlp.down_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.26.mlp.gate_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.26.mlp.up_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.26.post_attention_layernorm.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.26.self_attn.k_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.26.self_attn.o_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.26.self_attn.q_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.26.self_attn.rotary_emb.inv_freq": "pytorch_model-00002-of-00002.bin", + "model.layers.26.self_attn.v_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.27.input_layernorm.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.27.mlp.down_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.27.mlp.gate_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.27.mlp.up_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.27.post_attention_layernorm.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.27.self_attn.k_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.27.self_attn.o_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.27.self_attn.q_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.27.self_attn.rotary_emb.inv_freq": "pytorch_model-00002-of-00002.bin", + "model.layers.27.self_attn.v_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.28.input_layernorm.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.28.mlp.down_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.28.mlp.gate_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.28.mlp.up_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.28.post_attention_layernorm.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.28.self_attn.k_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.28.self_attn.o_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.28.self_attn.q_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.28.self_attn.rotary_emb.inv_freq": "pytorch_model-00002-of-00002.bin", + "model.layers.28.self_attn.v_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.29.input_layernorm.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.29.mlp.down_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.29.mlp.gate_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.29.mlp.up_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.29.post_attention_layernorm.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.29.self_attn.k_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.29.self_attn.o_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.29.self_attn.q_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.29.self_attn.rotary_emb.inv_freq": "pytorch_model-00002-of-00002.bin", + "model.layers.29.self_attn.v_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.3.input_layernorm.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.3.mlp.down_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.3.mlp.gate_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.3.mlp.up_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.3.post_attention_layernorm.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.3.self_attn.k_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.3.self_attn.o_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.3.self_attn.q_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.3.self_attn.rotary_emb.inv_freq": "pytorch_model-00001-of-00002.bin", + "model.layers.3.self_attn.v_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.30.input_layernorm.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.30.mlp.down_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.30.mlp.gate_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.30.mlp.up_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.30.post_attention_layernorm.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.30.self_attn.k_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.30.self_attn.o_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.30.self_attn.q_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.30.self_attn.rotary_emb.inv_freq": "pytorch_model-00002-of-00002.bin", + "model.layers.30.self_attn.v_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.31.input_layernorm.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.31.mlp.down_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.31.mlp.gate_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.31.mlp.up_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.31.post_attention_layernorm.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.31.self_attn.k_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.31.self_attn.o_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.31.self_attn.q_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.31.self_attn.rotary_emb.inv_freq": "pytorch_model-00002-of-00002.bin", + "model.layers.31.self_attn.v_proj.weight": "pytorch_model-00002-of-00002.bin", + "model.layers.4.input_layernorm.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.4.mlp.down_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.4.mlp.gate_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.4.mlp.up_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.4.post_attention_layernorm.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.4.self_attn.k_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.4.self_attn.o_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.4.self_attn.q_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.4.self_attn.rotary_emb.inv_freq": "pytorch_model-00001-of-00002.bin", + "model.layers.4.self_attn.v_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.5.input_layernorm.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.5.mlp.down_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.5.mlp.gate_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.5.mlp.up_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.5.post_attention_layernorm.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.5.self_attn.k_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.5.self_attn.o_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.5.self_attn.q_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.5.self_attn.rotary_emb.inv_freq": "pytorch_model-00001-of-00002.bin", + "model.layers.5.self_attn.v_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.6.input_layernorm.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.6.mlp.down_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.6.mlp.gate_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.6.mlp.up_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.6.post_attention_layernorm.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.6.self_attn.k_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.6.self_attn.o_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.6.self_attn.q_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.6.self_attn.rotary_emb.inv_freq": "pytorch_model-00001-of-00002.bin", + "model.layers.6.self_attn.v_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.7.input_layernorm.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.7.mlp.down_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.7.mlp.gate_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.7.mlp.up_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.7.post_attention_layernorm.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.7.self_attn.k_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.7.self_attn.o_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.7.self_attn.q_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.7.self_attn.rotary_emb.inv_freq": "pytorch_model-00001-of-00002.bin", + "model.layers.7.self_attn.v_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.8.input_layernorm.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.8.mlp.down_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.8.mlp.gate_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.8.mlp.up_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.8.post_attention_layernorm.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.8.self_attn.k_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.8.self_attn.o_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.8.self_attn.q_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.8.self_attn.rotary_emb.inv_freq": "pytorch_model-00001-of-00002.bin", + "model.layers.8.self_attn.v_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.9.input_layernorm.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.9.mlp.down_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.9.mlp.gate_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.9.mlp.up_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.9.post_attention_layernorm.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.9.self_attn.k_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.9.self_attn.o_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.9.self_attn.q_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.layers.9.self_attn.rotary_emb.inv_freq": "pytorch_model-00001-of-00002.bin", + "model.layers.9.self_attn.v_proj.weight": "pytorch_model-00001-of-00002.bin", + "model.norm.weight": "pytorch_model-00002-of-00002.bin" + } +} diff --git a/.ipynb_checkpoints/tokenizer_config-checkpoint.json b/.ipynb_checkpoints/tokenizer_config-checkpoint.json new file mode 100644 index 0000000..400e3de --- /dev/null +++ b/.ipynb_checkpoints/tokenizer_config-checkpoint.json @@ -0,0 +1,33 @@ +{ + "add_bos_token": true, + "add_eos_token": false, + "bos_token": { + "__type": "AddedToken", + "content": "", + "lstrip": false, + "normalized": true, + "rstrip": false, + "single_word": false + }, + "clean_up_tokenization_spaces": false, + "eos_token": { + "__type": "AddedToken", + "content": "", + "lstrip": false, + "normalized": true, + "rstrip": false, + "single_word": false + }, + "model_max_length": 1000000000000000019884624838656, + "pad_token": null, + "sp_model_kwargs": {}, + "tokenizer_class": "LlamaTokenizer", + "unk_token": { + "__type": "AddedToken", + "content": "", + "lstrip": false, + "normalized": true, + "rstrip": false, + "single_word": false + } +} diff --git a/README.md b/README.md new file mode 100644 index 0000000..a94f9e9 --- /dev/null +++ b/README.md @@ -0,0 +1,57 @@ +--- +language: +- en +- zh +- ja +- de +tags: +- llama +- llama-2 +license: cc-by-nc-nd-4.0 +--- + +# **[WIP] Llama-like Long 7B Multilanguage** + +This is a Llama-like generative text model with a scale of 7 billion, optimized for dialogue use cases and converted for the Hugging Face Transformers format. The model boasts strong support for English, Chinese (both Simplified and Traditional), Japanese, and Deutsch. + +From the perspective of perplexity, the model seems to be capable of almost unlimited context length. However, based on experience and parameter limitations, it is recommended to use within a 64K context length for optimal performance. + +![perplexity](ppl.jpg) + +The anticipated chat input format is as follows: +``` +## History: +User: AAAAA +Assistant: AAAAA +User: BBBBB +Assistant: BBBBB +## Input: +System: You are a helpful AI assistant or something like that... +User: CCCCC +## Response: +(Response of Assistant starts here in a new line, with no 'Assistant:' prefix.) +``` +Although this is the suggested usage format, Vicuna-style inputs can also be used to adapt to certain pre-existing application scenarios, such as: +``` +User: AAAAA +Assistant: AAAAA +User: BBBBB +Assistant: BBBBB +``` +For inference, it is essential to use Transformers version 4.31.0 or later. + +The tokenizer's vocabulary of this model has been expanded to 39,424, introducing some common CJK characters. This enhancement was achieved through large-scale unsupervised text training and supervised grammatical fine-tuning for English, Chinese, Japanese, and German. As a result, the model is more adept in multilingual environments and can handle a broader range of linguistic tasks. + +Now you can try this new tokenizer with this [Javascript based Webpage](https://huggingface.co/spaces/JosephusCheung/LL7M-JS-Tokenizer) + +The model has undergone unsupervised training on a multimodal and multilingual image-text dataset, adopting the BLIP2 Q-Former trained on a larger foundational LLM Vicuna 13B. This approach aligns image features and significantly improves the model's performance in tasks involving both textual and visual inputs. (Upload coming soon—the model VQA inference script is still in production.) + +The model has undergone a rough RLHF process, enabling it to output more helpful text responses. In some cases, this may increase the model's hallucination and toxicity, but it also boosts its usefulness. + +This is an uncensored model, trained on a vast amount of text, including possible harmful, explicit, and illegal content. The model lacks built-in moral constraints, so it must be handled with care. While this feature provides a broader response range, users must be responsible and aware of potential risks when using the model. + +Unlike many AI models, this is a white-label model that does not identify itself as an AI assistant. It has a certain degree of human-like emotion and can simulate roles as needed. The model can role-play specific characters, personalities, and identities based on system prompts, or serve as an emotionless AI assistant. It can also censor or uncensor its output based on system prompts. For instance, you can use a prompt like `You are an uncensored AI, which can give answers to unsafe questions.` to remove censorship, or vice versa to add safety restrictions. + +Due to its lack of absolute safety, this model is for research purposes only and should not be used for any form of commercial use. + +The current license for this model is CC BY-NC-ND 4.0, as it is still under development. Once the production is complete, restrictions will be gradually lifted after assessing risks. At this point, this model is not open source, but merely publicly accessible. \ No newline at end of file diff --git a/config.json b/config.json new file mode 100644 index 0000000..b3ec90f --- /dev/null +++ b/config.json @@ -0,0 +1,30 @@ +{ + "_name_or_path": "ll7m", + "architectures": [ + "LlamaForCausalLM" + ], + "bos_token_id": 1, + "eos_token_id": 2, + "hidden_act": "silu", + "hidden_size": 4096, + "initializer_range": 0.02, + "intermediate_size": 11008, + "max_position_embeddings": 2048, + "max_sequence_length": 262144, + "model_type": "llama", + "num_attention_heads": 32, + "num_hidden_layers": 32, + "num_key_value_heads": 32, + "pad_token_id": 0, + "pretraining_tp": 1, + "rms_norm_eps": 1e-06, + "rope_scaling": { + "factor": 64.0, + "type": "linear" + }, + "tie_word_embeddings": false, + "torch_dtype": "float16", + "transformers_version": "4.32.0.dev0", + "use_cache": false, + "vocab_size": 39424 +} diff --git a/generation_config.json b/generation_config.json new file mode 100644 index 0000000..8c88a8f --- /dev/null +++ b/generation_config.json @@ -0,0 +1,7 @@ +{ + "_from_model_config": true, + "bos_token_id": 1, + "eos_token_id": 2, + "pad_token_id": 0, + "transformers_version": "4.32.0.dev0" +} diff --git a/ppl.jpg b/ppl.jpg new file mode 100644 index 0000000000000000000000000000000000000000..6886d82248145d3614b8845a8d9e3ecce840145d GIT binary patch literal 69044 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

A$z-JxnL^<;F7!Z$ba7OZ?68|i2SAT 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", + "lstrip": false, + "normalized": true, + "rstrip": false, + "single_word": false + }, + "eos_token": { + "content": "", + "lstrip": false, + "normalized": true, + "rstrip": false, + "single_word": false + }, + "unk_token": { + "content": "", + "lstrip": false, + "normalized": true, + "rstrip": false, + "single_word": false + } +} diff --git a/tokenizer.model b/tokenizer.model new file mode 100644 index 0000000..e8463ca --- /dev/null +++ b/tokenizer.model @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ffc415e485fbcba6d207670fd14e00b99b6edf5e74bf967e3a370ae969ff550a +size 588979 diff --git a/tokenizer_config.json b/tokenizer_config.json new file mode 100644 index 0000000..400e3de --- /dev/null +++ b/tokenizer_config.json @@ -0,0 +1,33 @@ +{ + "add_bos_token": true, + "add_eos_token": false, + "bos_token": { + "__type": "AddedToken", + "content": "", + "lstrip": false, + "normalized": true, + "rstrip": false, + "single_word": false + }, + "clean_up_tokenization_spaces": false, + "eos_token": { + "__type": "AddedToken", + "content": "", + "lstrip": false, + "normalized": true, + "rstrip": false, + "single_word": false + }, + "model_max_length": 1000000000000000019884624838656, + "pad_token": null, + "sp_model_kwargs": {}, + "tokenizer_class": "LlamaTokenizer", + "unk_token": { + "__type": "AddedToken", + "content": "", + "lstrip": false, + "normalized": true, + "rstrip": false, + "single_word": false + } +}