commit 931ea0d2a7b685d374f0361392dd019e8397a0a5 Author: ModelHub XC Date: Tue May 26 11:36:19 2026 +0800 初始化项目,由ModelHub XC社区提供模型 Model: theprint/Llama3.2-3B-Explained-GGUF Source: Original Platform diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..24dd4ca --- /dev/null +++ b/.gitattributes @@ -0,0 +1,48 @@ +*.7z filter=lfs diff=lfs merge=lfs -text +*.arrow filter=lfs diff=lfs merge=lfs -text +*.bin filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.ckpt filter=lfs diff=lfs merge=lfs -text +*.ftz filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.h5 filter=lfs diff=lfs merge=lfs -text +*.joblib filter=lfs diff=lfs merge=lfs -text +*.lfs.* filter=lfs diff=lfs merge=lfs -text +*.mlmodel filter=lfs diff=lfs merge=lfs -text +*.model filter=lfs diff=lfs merge=lfs -text +*.msgpack filter=lfs diff=lfs merge=lfs -text +*.npy filter=lfs diff=lfs merge=lfs -text +*.npz filter=lfs diff=lfs merge=lfs -text +*.onnx filter=lfs diff=lfs merge=lfs -text +*.ot filter=lfs diff=lfs merge=lfs -text +*.parquet filter=lfs diff=lfs merge=lfs -text +*.pb filter=lfs diff=lfs merge=lfs -text +*.pickle filter=lfs diff=lfs merge=lfs -text +*.pkl filter=lfs diff=lfs merge=lfs -text +*.pt filter=lfs diff=lfs merge=lfs -text +*.pth filter=lfs diff=lfs merge=lfs -text +*.rar filter=lfs diff=lfs merge=lfs -text +*.safetensors filter=lfs diff=lfs merge=lfs -text +saved_model/**/* filter=lfs diff=lfs merge=lfs -text +*.tar.* filter=lfs diff=lfs merge=lfs -text +*.tar filter=lfs diff=lfs merge=lfs -text +*.tflite filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.wasm filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text +*tfevents* filter=lfs diff=lfs merge=lfs -text +tokenizer.json filter=lfs diff=lfs merge=lfs -text +model-Q2_K.gguf filter=lfs diff=lfs merge=lfs -text +model-Q3_K_S.gguf filter=lfs diff=lfs merge=lfs -text +model-Q3_K_M.gguf filter=lfs diff=lfs merge=lfs -text +model-Q3_K_L.gguf filter=lfs diff=lfs merge=lfs -text +model-IQ4_NL.gguf filter=lfs diff=lfs merge=lfs -text +model-Q4_K_S.gguf filter=lfs diff=lfs merge=lfs -text +model-Q4_K_M.gguf filter=lfs diff=lfs merge=lfs -text +model-Q5_K_S.gguf filter=lfs diff=lfs merge=lfs -text +model-Q5_K_M.gguf filter=lfs diff=lfs merge=lfs -text +model-Q6_K.gguf filter=lfs diff=lfs merge=lfs -text +model-Q8_0.gguf filter=lfs diff=lfs merge=lfs -text +model-BF16.gguf filter=lfs diff=lfs merge=lfs -text diff --git a/README.md b/README.md new file mode 100644 index 0000000..a5f1783 --- /dev/null +++ b/README.md @@ -0,0 +1,71 @@ +--- +base_model: +- theprint/Llama3.2-3B-Explained +tags: +- fine-tuned +- lora +- sft +- auto-sft +language: +- en +library_name: transformers +--- + +# Llama3.2-3B-Explained (GGUF) + +A fine-tuned version of [`meta-llama/Llama-3.2-3B-Instruct`](https://huggingface.co/meta-llama/Llama-3.2-3B-Instruct) trained on **Explained 0.41k alpaca** data using [Auto-SFT](https://github.com/your-org/auto-sft) — an automated hyperparameter search and supervised fine-tuning pipeline. + +The base model was adapted to follow the style and content of the `Explained 0.41k alpaca` dataset. Expect improved performance on tasks similar to those represented in the training data. + +## Model Details + +| Property | Value | +|---|---| +| Base model | `meta-llama/Llama-3.2-3B-Instruct` | +| Training data | `data/Explained-0.41k-alpaca.json` | +| Fine-tuning epochs | 2 | +| Fine-tuning date | 2026-03-25 | +| Fine-tuning method | LoRA (merged to full 16-bit) | + +## Training Hyperparameters + +### LoRA + +| Parameter | Value | +|---|---| +| `r` | `4` | +| `alpha` | `8` | +| `dropout` | `0.0` | +| `target_modules` | `['q_proj', 'v_proj', 'k_proj', 'o_proj']` | + +### Training + +| Parameter | Value | +|---|---| +| `learning_rate` | `1e-05` | +| `batch_size` | `1` | +| `gradient_accumulation_steps` | `2` | +| `warmup_ratio` | `0.0` | +| `max_seq_length` | `512` | + +## GGUF Files + +These quantized GGUF files can be used directly with [llama.cpp](https://github.com/ggerganov/llama.cpp), [Ollama](https://ollama.com/), [LM Studio](https://lmstudio.ai/), and other compatible runtimes. + +| File | Description | +|---|---| +| `Llama3.2-3B-Explained-BF16.gguf` | BF16 | +| `Llama3.2-3B-Explained-Q8_0.gguf` | 8-bit — near-lossless, larger file | +| `Llama3.2-3B-Explained-Q6_K.gguf` | 6-bit — high quality | +| `Llama3.2-3B-Explained-Q5_K_M.gguf` | 5-bit medium — good quality/size balance | +| `Llama3.2-3B-Explained-Q5_K_S.gguf` | Q5_K_S | +| `Llama3.2-3B-Explained-Q4_K_M.gguf` | 4-bit medium — recommended for most use cases | +| `Llama3.2-3B-Explained-Q4_K_S.gguf` | Q4_K_S | +| `Llama3.2-3B-Explained-Q3_K_L.gguf` | Q3_K_L | +| `Llama3.2-3B-Explained-Q3_K_M.gguf` | Q3_K_M | +| `Llama3.2-3B-Explained-Q3_K_S.gguf` | Q3_K_S | +| `Llama3.2-3B-Explained-Q2_K.gguf` | 2-bit — smallest size, lowest quality | +| `Llama3.2-3B-Explained-IQ4_NL.gguf` | IQ4_NL | + +--- +*Generated by [Auto-SFT](https://github.com/your-org/auto-sft)* \ No newline at end of file diff --git a/chat_template.jinja b/chat_template.jinja new file mode 100644 index 0000000..1bad6a0 --- /dev/null +++ b/chat_template.jinja @@ -0,0 +1,93 @@ +{{- bos_token }} +{%- if custom_tools is defined %} + {%- set tools = custom_tools %} +{%- endif %} +{%- if not tools_in_user_message is defined %} + {%- set tools_in_user_message = true %} +{%- endif %} +{%- if not date_string is defined %} + {%- if strftime_now is defined %} + {%- set date_string = strftime_now("%d %b %Y") %} + {%- else %} + {%- set date_string = "26 Jul 2024" %} + {%- endif %} +{%- endif %} +{%- if not tools is defined %} + {%- set tools = none %} +{%- endif %} + +{#- This block extracts the system message, so we can slot it into the right place. #} +{%- if messages[0]['role'] == 'system' %} + {%- set system_message = messages[0]['content']|trim %} + {%- set messages = messages[1:] %} +{%- else %} + {%- set system_message = "" %} +{%- endif %} + +{#- System message #} +{{- "<|start_header_id|>system<|end_header_id|>\n\n" }} +{%- if tools is not none %} + {{- "Environment: ipython\n" }} +{%- endif %} +{{- "Cutting Knowledge Date: December 2023\n" }} +{{- "Today Date: " + date_string + "\n\n" }} +{%- if tools is not none and not tools_in_user_message %} + {{- "You have access to the following functions. To call a function, please respond with JSON for a function call." }} + {{- 'Respond in the format {"name": function name, "parameters": dictionary of argument name and its value}.' }} + {{- "Do not use variables.\n\n" }} + {%- for t in tools %} + {{- t | tojson(indent=4) }} + {{- "\n\n" }} + {%- endfor %} +{%- endif %} +{{- system_message }} +{{- "<|eot_id|>" }} + +{#- Custom tools are passed in a user message with some extra guidance #} +{%- if tools_in_user_message and not tools is none %} + {#- Extract the first user message so we can plug it in here #} + {%- if messages | length != 0 %} + {%- set first_user_message = messages[0]['content']|trim %} + {%- set messages = messages[1:] %} + {%- else %} + {{- raise_exception("Cannot put tools in the first user message when there's no first user message!") }} +{%- endif %} + {{- '<|start_header_id|>user<|end_header_id|>\n\n' -}} + {{- "Given the following functions, please respond with a JSON for a function call " }} + {{- "with its proper arguments that best answers the given prompt.\n\n" }} + {{- 'Respond in the format {"name": function name, "parameters": dictionary of argument name and its value}.' }} + {{- "Do not use variables.\n\n" }} + {%- for t in tools %} + {{- t | tojson(indent=4) }} + {{- "\n\n" }} + {%- endfor %} + {{- first_user_message + "<|eot_id|>"}} +{%- endif %} + +{%- for message in messages %} + {%- if not (message.role == 'ipython' or message.role == 'tool' or 'tool_calls' in message) %} + {{- '<|start_header_id|>' + message['role'] + '<|end_header_id|>\n\n'+ message['content'] | trim + '<|eot_id|>' }} + {%- elif 'tool_calls' in message %} + {%- if not message.tool_calls|length == 1 %} + {{- raise_exception("This model only supports single tool-calls at once!") }} + {%- endif %} + {%- set tool_call = message.tool_calls[0].function %} + {{- '<|start_header_id|>assistant<|end_header_id|>\n\n' -}} + {{- '{"name": "' + tool_call.name + '", ' }} + {{- '"parameters": ' }} + {{- tool_call.arguments | tojson }} + {{- "}" }} + {{- "<|eot_id|>" }} + {%- elif message.role == "tool" or message.role == "ipython" %} + {{- "<|start_header_id|>ipython<|end_header_id|>\n\n" }} + {%- if message.content is mapping or message.content is iterable %} + {{- message.content | tojson }} + {%- else %} + {{- message.content }} + {%- endif %} + {{- "<|eot_id|>" }} + {%- endif %} +{%- endfor %} +{%- if add_generation_prompt %} + {{- '<|start_header_id|>assistant<|end_header_id|>\n\n' }} +{%- endif %} diff --git a/model-BF16.gguf b/model-BF16.gguf new file mode 100644 index 0000000..1e59f45 --- /dev/null +++ b/model-BF16.gguf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2b3fd52efd0c44a773f9a896d898108085f60585b34cf9a53bede5310d8aee4d +size 6433687648 diff --git a/model-IQ4_NL.gguf b/model-IQ4_NL.gguf new file mode 100644 index 0000000..0dae60b --- /dev/null +++ b/model-IQ4_NL.gguf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:186134ff560ef12a7cebe1096b2247f9c10ff810c0e06aa2af4a0a8eb1e3a03c +size 1926627424 diff --git a/model-Q2_K.gguf b/model-Q2_K.gguf new file mode 100644 index 0000000..be4fd94 --- /dev/null +++ b/model-Q2_K.gguf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d26991f0d0ef41a1a31e97d02c5f32727c583f9e15c9a1d7859c0daa59ba4502 +size 1363935328 diff --git a/model-Q3_K_L.gguf b/model-Q3_K_L.gguf new file mode 100644 index 0000000..1ebe67a --- /dev/null +++ b/model-Q3_K_L.gguf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a8e68e60d410001c6c05fce6ed7770ae02782d5356d387517ca4984f8a1b57b3 +size 1815347296 diff --git a/model-Q3_K_M.gguf b/model-Q3_K_M.gguf new file mode 100644 index 0000000..1e9e5a6 --- /dev/null +++ b/model-Q3_K_M.gguf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:268304126b9da5ea2ac2b2fd7e55698d31162187b778068d6652d5060c9487eb +size 1687158880 diff --git a/model-Q3_K_S.gguf b/model-Q3_K_S.gguf new file mode 100644 index 0000000..7e900a2 --- /dev/null +++ b/model-Q3_K_S.gguf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8483907495af03eb22fece9fb4994191ace45eae1849cf77976e4b2a7542d1c3 +size 1542848608 diff --git a/model-Q4_K_M.gguf b/model-Q4_K_M.gguf new file mode 100644 index 0000000..59df5af --- /dev/null +++ b/model-Q4_K_M.gguf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5679523cf7945a0c8262c9f7542bd05e70a35b47d071cfe2401036a99c000034 +size 2019377248 diff --git a/model-Q4_K_S.gguf b/model-Q4_K_S.gguf new file mode 100644 index 0000000..611f14e --- /dev/null +++ b/model-Q4_K_S.gguf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d37483ea6ae95c5d06de65fe14f49bd5c921cb81567be4f4865da3a5ba1ab591 +size 1928200288 diff --git a/model-Q5_K_M.gguf b/model-Q5_K_M.gguf new file mode 100644 index 0000000..46b6ef7 --- /dev/null +++ b/model-Q5_K_M.gguf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6e91b1fffea00a868a4f81f49031dc475bcb2b1acef2870591a9df897dc04895 +size 2322153568 diff --git a/model-Q5_K_S.gguf b/model-Q5_K_S.gguf new file mode 100644 index 0000000..a2ccad1 --- /dev/null +++ b/model-Q5_K_S.gguf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3d84c53d85f10ea964dd57493f87c7b6b16ad926f00ecfaa7307343293089573 +size 2269511776 diff --git a/model-Q6_K.gguf b/model-Q6_K.gguf new file mode 100644 index 0000000..05f21e4 --- /dev/null +++ b/model-Q6_K.gguf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ddc3c7ac01d063fc0eec7151bf68d33b3a79278e93a42daa1838ad2ab4755778 +size 2643853408 diff --git a/model-Q8_0.gguf b/model-Q8_0.gguf new file mode 100644 index 0000000..e8a468b --- /dev/null +++ b/model-Q8_0.gguf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d7261620e304babd3c3f6252415569dae08ae33b26359e9c94aa7d8995ec84a8 +size 3421898848 diff --git a/tokenizer.json b/tokenizer.json new file mode 100644 index 0000000..1c1d8d5 --- /dev/null +++ b/tokenizer.json @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6b9e4e7fb171f92fd137b777cc2714bf87d11576700a1dcd7a399e7bbe39537b +size 17209920 diff --git a/tokenizer_config.json b/tokenizer_config.json new file mode 100644 index 0000000..b0c7368 --- /dev/null +++ b/tokenizer_config.json @@ -0,0 +1,14 @@ +{ + "backend": "tokenizers", + "bos_token": "<|begin_of_text|>", + "clean_up_tokenization_spaces": true, + "eos_token": "<|eot_id|>", + "is_local": false, + "model_input_names": [ + "input_ids", + "attention_mask" + ], + "model_max_length": 131072, + "pad_token": "<|eot_id|>", + "tokenizer_class": "TokenizersBackend" +}