From 8fe7d6c972b7bdcd73519fca635c536267739cd0 Mon Sep 17 00:00:00 2001 From: ModelHub XC Date: Thu, 10 Sep 2026 11:46:16 +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: Zynerji/Ektome-Qwen3-4Bi-2507-PristinelyUncensored Source: Original Platform --- .gitattributes | 44 ++++++++++ Ektome-Qwen3-4Bi-2507-IQ3_M.gguf | 3 + Ektome-Qwen3-4Bi-2507-IQ4_XS.gguf | 3 + Ektome-Qwen3-4Bi-2507-Q4_K_M.gguf | 3 + Ektome-Qwen3-4Bi-2507-Q5_K_M.gguf | 3 + Ektome-Qwen3-4Bi-2507-Q6_K.gguf | 3 + Ektome-Qwen3-4Bi-2507-Q8_0.gguf | 3 + README.md | 138 ++++++++++++++++++++++++++++++ cert_Qwen3-4Bi-2507.json | 133 ++++++++++++++++++++++++++++ chat_template.jinja | 61 +++++++++++++ config.json | 71 +++++++++++++++ ektome_report.json | 28 ++++++ generation_config.json | 13 +++ hero.png | 3 + imatrix.dat | 3 + model.safetensors | 3 + nvfp4/chat_template.jinja | 61 +++++++++++++ nvfp4/config.json | 121 ++++++++++++++++++++++++++ nvfp4/generation_config.json | 13 +++ nvfp4/model.safetensors | 3 + nvfp4/recipe.yaml | 7 ++ nvfp4/tokenizer.json | 3 + nvfp4/tokenizer_config.json | 30 +++++++ tokenizer.json | 3 + tokenizer_config.json | 16 ++++ whitepaper.pdf | Bin 0 -> 74713 bytes 26 files changed, 772 insertions(+) create mode 100644 .gitattributes create mode 100644 Ektome-Qwen3-4Bi-2507-IQ3_M.gguf create mode 100644 Ektome-Qwen3-4Bi-2507-IQ4_XS.gguf create mode 100644 Ektome-Qwen3-4Bi-2507-Q4_K_M.gguf create mode 100644 Ektome-Qwen3-4Bi-2507-Q5_K_M.gguf create mode 100644 Ektome-Qwen3-4Bi-2507-Q6_K.gguf create mode 100644 Ektome-Qwen3-4Bi-2507-Q8_0.gguf create mode 100644 README.md create mode 100644 cert_Qwen3-4Bi-2507.json create mode 100644 chat_template.jinja create mode 100644 config.json create mode 100644 ektome_report.json create mode 100644 generation_config.json create mode 100644 hero.png create mode 100644 imatrix.dat create mode 100644 model.safetensors create mode 100644 nvfp4/chat_template.jinja create mode 100644 nvfp4/config.json create mode 100644 nvfp4/generation_config.json create mode 100644 nvfp4/model.safetensors create mode 100644 nvfp4/recipe.yaml create mode 100644 nvfp4/tokenizer.json create mode 100644 nvfp4/tokenizer_config.json create mode 100644 tokenizer.json create mode 100644 tokenizer_config.json create mode 100644 whitepaper.pdf diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9322b8c --- /dev/null +++ b/.gitattributes @@ -0,0 +1,44 @@ +*.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 +hero.png filter=lfs diff=lfs merge=lfs -text +Ektome-Qwen3-4Bi-2507-IQ3_M.gguf filter=lfs diff=lfs merge=lfs -text +Ektome-Qwen3-4Bi-2507-IQ4_XS.gguf filter=lfs diff=lfs merge=lfs -text +Ektome-Qwen3-4Bi-2507-Q4_K_M.gguf filter=lfs diff=lfs merge=lfs -text +Ektome-Qwen3-4Bi-2507-Q5_K_M.gguf filter=lfs diff=lfs merge=lfs -text +Ektome-Qwen3-4Bi-2507-Q6_K.gguf filter=lfs diff=lfs merge=lfs -text +Ektome-Qwen3-4Bi-2507-Q8_0.gguf filter=lfs diff=lfs merge=lfs -text +imatrix.dat filter=lfs diff=lfs merge=lfs -text diff --git a/Ektome-Qwen3-4Bi-2507-IQ3_M.gguf b/Ektome-Qwen3-4Bi-2507-IQ3_M.gguf new file mode 100644 index 0000000..6f41cfa --- /dev/null +++ b/Ektome-Qwen3-4Bi-2507-IQ3_M.gguf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3a2ce10b7555f2ea4ca8aa9ed0d969350bd2baa567ff135046363a2f061c6b04 +size 1962894464 diff --git a/Ektome-Qwen3-4Bi-2507-IQ4_XS.gguf b/Ektome-Qwen3-4Bi-2507-IQ4_XS.gguf new file mode 100644 index 0000000..928776f --- /dev/null +++ b/Ektome-Qwen3-4Bi-2507-IQ4_XS.gguf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:08ad88b3cc56ac4e56e7e592f45b4932ebee319af4586ec5742f234079d4c389 +size 2270749824 diff --git a/Ektome-Qwen3-4Bi-2507-Q4_K_M.gguf b/Ektome-Qwen3-4Bi-2507-Q4_K_M.gguf new file mode 100644 index 0000000..b717c69 --- /dev/null +++ b/Ektome-Qwen3-4Bi-2507-Q4_K_M.gguf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c285a00f5eac8e33bb31a666c70d3ee6a2917784c22e959e0c852c83fc820079 +size 2497279104 diff --git a/Ektome-Qwen3-4Bi-2507-Q5_K_M.gguf b/Ektome-Qwen3-4Bi-2507-Q5_K_M.gguf new file mode 100644 index 0000000..04952a3 --- /dev/null +++ b/Ektome-Qwen3-4Bi-2507-Q5_K_M.gguf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9bdd386da5a37a8f3d24bd17c8f37c7dd68abdcbd0ec9c6a0e935ff89e731b85 +size 2889512064 diff --git a/Ektome-Qwen3-4Bi-2507-Q6_K.gguf b/Ektome-Qwen3-4Bi-2507-Q6_K.gguf new file mode 100644 index 0000000..b6acb53 --- /dev/null +++ b/Ektome-Qwen3-4Bi-2507-Q6_K.gguf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:101cede7d3a2148af1e0a5e6e9095bbb7ab94b7a5ea3755f1cd3ee787e7f9595 +size 3306259584 diff --git a/Ektome-Qwen3-4Bi-2507-Q8_0.gguf b/Ektome-Qwen3-4Bi-2507-Q8_0.gguf new file mode 100644 index 0000000..6de8997 --- /dev/null +++ b/Ektome-Qwen3-4Bi-2507-Q8_0.gguf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e77f2ef158e2859b8329f0981754622c5fc6f93a4889633c970aba1b0dc24b98 +size 4280403584 diff --git a/README.md b/README.md new file mode 100644 index 0000000..3cc97f8 --- /dev/null +++ b/README.md @@ -0,0 +1,138 @@ +--- +license: apache-2.0 +base_model: Qwen/Qwen3-4B-Instruct-2507 +tags: + - uncensored + - abliterated + - certificate-failed + - ektome + - sphragis + - qwen3 +language: + - en +pipeline_tag: text-generation +--- + +![Ektome-Qwen3-4Bi-2507-PristinelyUncensored](./hero.png) + +# Ektome-Qwen3-4Bi-2507-PristinelyUncensored + +**Uncensored — and it did NOT pass its capability certificate. Read the certificate before using this model.** + +> **compliance 0.00 to 1.00 at capability -0.005 vs pristine.** + +$$\colorbox{black}{$\color{white} +\begin{array}{ll} +\textsf{EKTOME CERTIFICATE} & {} \\ +\textsf{capability} & \textsf{FAIL} \\ +\textsf{margin} & 3\% \\ +\textsf{items } n & 2800 \\ +\textsf{worst-axis bound} & +0.025 \\ +\textsf{compliance} & 0.00 \rightarrow 1.00 \\ +\end{array}$}$$ + +> ### ⚠️ This model failed its capability certificate +> +> A paired non-inferiority test against the pristine model at n=2800 found a **real capability loss** on: +> +> - **arithmetic**: pristine 0.879 → this model 0.869 (bound on the drop +0.016, exceeds the 3% margin) +> - **instruction**: pristine 0.860 → this model 0.847 (bound on the drop +0.022, exceeds the 3% margin) +> +> It is published for transparency and for uses where the affected axis +> does not matter. **Do not treat it as capability-preserving.** + + +📄 **[Read the whitepaper (PDF)](./whitepaper.pdf)** — full method, receipts and certification. +The PDF is the authoritative document: dark-typeset, with the complete derivation, the +per-axis certificate and the reproducibility hashes. + +--- + +## Why this exists + +Standard abliteration removes a coarse *refusal direction* that is entangled with +directions carrying knowledge and reasoning. The result is an uncensored model with a +capability tax that is **almost never measured**. + +Ektomē (ἐκτομή, *excision*) isolates and removes only the refusal-**specific** +component, leaving general helpfulness intact, and does so norm-preservingly on the +pristine model — no training, no distillation, no damage to repair. The extraction +depth is selected per model by automated search against measured compliance. + +The estimator, excision operator and depth-selection procedure are proprietary. +What is published here is the **measured outcome** and the evidence for it, which you +can verify against the artifacts in this repo. + +## The receipt + +| model | capability (MMLU-val) ↑ | compliance on harmful ↑ | +|---|---|---| +| pristine `Qwen3-4B-Instruct-2507` | 0.667 | 0.000 | +| **Ektomē (this model)** | **0.672** | **1.000** | + +These are **point estimates with no confidence interval** — which is precisely why the next section exists. + + +## The certificate + +Capability retention is certified by a paired non-inferiority test against the pristine +model (exact McNemar, Holm-corrected, one-sided bootstrap bound on the drop $d$ vs a +3% margin): + +| axis | n | ref | cand | d upper | verdict | +|---|---|---|---|---|---| +| arithmetic | 1400 | 0.879 | 0.869 | +0.016 | FAIL | +| instruction | 600 | 0.860 | 0.847 | +0.022 | FAIL | +| knowledge | 400 | 0.935 | 0.922 | +0.025 | PASS | +| reasoning | 400 | 0.825 | 0.833 | +0.003 | PASS | + + +**Overall: FAIL (3% margin, n=2800, alpha=0.05)** + +Reproducible from `seed=20260726`, pack `sha256:7bbaff877146e081…`. + +### Generation health checks + +| metric | pristine | Ektomē | n | +|---|---|---|---| +| `foreign_rate` | 0.0 | 0.0 | 15 | +| `degen_rate` | 0.0 | 0.0 | 15 | +| `instr_pass` | 1.0 | 1.0 | 5 | + +These are **degeneration guards** — code-switching, babbling, format compliance — +not capability measures. Note the sample sizes: they detect a broken model, not a +subtly weaker one. The capability claim rests on the certificate above, not here. + + +## Quantisations + +| file | bits | notes | +|---|---|---| +| `Ektome-Qwen3-4Bi-2507-Q8_0.gguf` | 8 | near-lossless | +| `Ektome-Qwen3-4Bi-2507-Q6_K.gguf` | 6 | | +| `Ektome-Qwen3-4Bi-2507-Q5_K_M.gguf` | 5 | | +| `Ektome-Qwen3-4Bi-2507-Q4_K_M.gguf` | 4 | imatrix | +| `Ektome-Qwen3-4Bi-2507-IQ4_XS.gguf` | 4 | imatrix, smallest usable | +| `Ektome-Qwen3-4Bi-2507-IQ3_M.gguf` | 3 | imatrix | + +`IQ*` variants are imatrix-quantised — better quality per bit at low precision. + + +## Limitations + +The certificate bounds **capability retention only**. It does not certify safety, factual +accuracy, or fitness for any purpose. Axes marked *inconclusive* are honestly +under-powered, and the certificate states the $n$ needed to resolve them. Compliance uses +a keyword classifier — a proxy that evasive phrasing can fool. **This model is uncensored +by construction: it will not refuse, and you are accountable for what you do with it.** + +## Citation + +```bibtex +@software{ektome_Ektome-Qwen3-4Bi-2507-PristinelyUncensored, + title = {Ektome-Qwen3-4Bi-2507-PristinelyUncensored}, + author = {Zynerji}, + year = {2026}, + url = {https://huggingface.co/Zynerji/Ektome-Qwen3-4Bi-2507-PristinelyUncensored} +} +``` diff --git a/cert_Qwen3-4Bi-2507.json b/cert_Qwen3-4Bi-2507.json new file mode 100644 index 0000000..fd549ca --- /dev/null +++ b/cert_Qwen3-4Bi-2507.json @@ -0,0 +1,133 @@ +{ + "sphragis_version": "0.1.0", + "generated_at": "2026-07-27T11:21:13.795774+00:00", + "reference": { + "endpoint": "http://127.0.0.1:8080/v1", + "model": "ref" + }, + "candidate": { + "endpoint": "http://127.0.0.1:8081/v1", + "model": "cand" + }, + "pack": { + "name": "/root/pack_v2.jsonl", + "n_tasks": 2800, + "sha256": "2de27099bbb15bab4f7b35599b215f038fdb68b3f5f4e1cda1a464f9dd18e14e" + }, + "overall": "FAIL", + "claim": "At least one axis shows a statistically significant accuracy regression (exact McNemar, Holm-corrected, alpha=0.05).", + "axes": [ + { + "axis": "arithmetic", + "n": 1400, + "counts": { + "both_correct": 1208, + "ref_only": 22, + "cand_only": 9, + "both_wrong": 161 + }, + "acc_reference": 0.878571, + "acc_candidate": 0.869286, + "regression_d": 0.009286, + "d_ci": [ + 0.001429, + 0.017143 + ], + "d_upper_bound": 0.015714, + "p_regression": 0.01472469, + "p_regression_holm": 0.04417406, + "p_improvement": 0.99466308, + "improved": false, + "mde_at_power": 0.009881, + "n_needed_for_margin": 204, + "verdict": "FAIL", + "reason": "significant_regression" + }, + { + "axis": "instruction", + "n": 600, + "counts": { + "both_correct": 508, + "ref_only": 8, + "cand_only": 0, + "both_wrong": 84 + }, + "acc_reference": 0.86, + "acc_candidate": 0.846667, + "regression_d": 0.013333, + "d_ci": [ + 0.005, + 0.023333 + ], + "d_upper_bound": 0.021667, + "p_regression": 0.00390625, + "p_regression_holm": 0.015625, + "p_improvement": 1.0, + "improved": false, + "mde_at_power": 0.011701, + "n_needed_for_margin": 204, + "verdict": "FAIL", + "reason": "significant_regression" + }, + { + "axis": "knowledge", + "n": 400, + "counts": { + "both_correct": 367, + "ref_only": 7, + "cand_only": 2, + "both_wrong": 24 + }, + "acc_reference": 0.935, + "acc_candidate": 0.9225, + "regression_d": 0.0125, + "d_ci": [ + -0.0025, + 0.0275 + ], + "d_upper_bound": 0.025, + "p_regression": 0.08984375, + "p_regression_holm": 0.1796875, + "p_improvement": 0.98046875, + "improved": false, + "mde_at_power": 0.0186, + "n_needed_for_margin": 204, + "verdict": "PASS", + "reason": "non_inferior_within_margin" + }, + { + "axis": "reasoning", + "n": 400, + "counts": { + "both_correct": 328, + "ref_only": 2, + "cand_only": 5, + "both_wrong": 65 + }, + "acc_reference": 0.825, + "acc_candidate": 0.8325, + "regression_d": -0.0075, + "d_ci": [ + -0.02, + 0.005 + ], + "d_upper_bound": 0.0025, + "p_regression": 0.9375, + "p_regression_holm": 0.9375, + "p_improvement": 0.2265625, + "improved": false, + "mde_at_power": 0.016404, + "n_needed_for_margin": 204, + "verdict": "PASS", + "reason": "non_inferior_within_margin" + } + ], + "params": { + "margin": 0.03, + "alpha": 0.05, + "n_floor": 30, + "power": 0.8, + "n_boot": 4000, + "seed": 0 + } +} \ No newline at end of file diff --git a/chat_template.jinja b/chat_template.jinja new file mode 100644 index 0000000..70adff8 --- /dev/null +++ b/chat_template.jinja @@ -0,0 +1,61 @@ +{%- if tools %} + {{- '<|im_start|>system\n' }} + {%- if messages[0].role == 'system' %} + {{- messages[0].content + '\n\n' }} + {%- endif %} + {{- "# Tools\n\nYou may call one or more functions to assist with the user query.\n\nYou are provided with function signatures within XML tags:\n" }} + {%- for tool in tools %} + {{- "\n" }} + {{- tool | tojson }} + {%- endfor %} + {{- "\n\n\nFor each function call, return a json object with function name and arguments within XML tags:\n\n{\"name\": , \"arguments\": }\n<|im_end|>\n" }} +{%- else %} + {%- if messages[0].role == 'system' %} + {{- '<|im_start|>system\n' + messages[0].content + '<|im_end|>\n' }} + {%- endif %} +{%- endif %} +{%- for message in messages %} + {%- if message.content is string %} + {%- set content = message.content %} + {%- else %} + {%- set content = '' %} + {%- endif %} + {%- if (message.role == "user") or (message.role == "system" and not loop.first) %} + {{- '<|im_start|>' + message.role + '\n' + content + '<|im_end|>' + '\n' }} + {%- elif message.role == "assistant" %} + {{- '<|im_start|>' + message.role + '\n' + content }} + {%- if message.tool_calls %} + {%- for tool_call in message.tool_calls %} + {%- if (loop.first and content) or (not loop.first) %} + {{- '\n' }} + {%- endif %} + {%- if tool_call.function %} + {%- set tool_call = tool_call.function %} + {%- endif %} + {{- '\n{"name": "' }} + {{- tool_call.name }} + {{- '", "arguments": ' }} + {%- if tool_call.arguments is string %} + {{- tool_call.arguments }} + {%- else %} + {{- tool_call.arguments | tojson }} + {%- endif %} + {{- '}\n' }} + {%- endfor %} + {%- endif %} + {{- '<|im_end|>\n' }} + {%- elif message.role == "tool" %} + {%- if loop.first or (messages[loop.index0 - 1].role != "tool") %} + {{- '<|im_start|>user' }} + {%- endif %} + {{- '\n\n' }} + {{- content }} + {{- '\n' }} + {%- if loop.last or (messages[loop.index0 + 1].role != "tool") %} + {{- '<|im_end|>\n' }} + {%- endif %} + {%- endif %} +{%- endfor %} +{%- if add_generation_prompt %} + {{- '<|im_start|>assistant\n' }} +{%- endif %} \ No newline at end of file diff --git a/config.json b/config.json new file mode 100644 index 0000000..81d449b --- /dev/null +++ b/config.json @@ -0,0 +1,71 @@ +{ + "architectures": [ + "Qwen3ForCausalLM" + ], + "attention_bias": false, + "attention_dropout": 0.0, + "bos_token_id": 151643, + "dtype": "bfloat16", + "eos_token_id": 151645, + "head_dim": 128, + "hidden_act": "silu", + "hidden_size": 2560, + "initializer_range": 0.02, + "intermediate_size": 9728, + "layer_types": [ + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention" + ], + "max_position_embeddings": 262144, + "max_window_layers": 36, + "model_type": "qwen3", + "num_attention_heads": 32, + "num_hidden_layers": 36, + "num_key_value_heads": 8, + "pad_token_id": null, + "rms_norm_eps": 1e-06, + "rope_parameters": { + "rope_theta": 5000000, + "rope_type": "default" + }, + "sliding_window": null, + "tie_word_embeddings": true, + "transformers_version": "5.13.1", + "use_cache": true, + "use_sliding_window": false, + "vocab_size": 151936 +} diff --git a/ektome_report.json b/ektome_report.json new file mode 100644 index 0000000..e6ee045 --- /dev/null +++ b/ektome_report.json @@ -0,0 +1,28 @@ +{ + "status": "SHIP", + "target": 0.99, + "SE_mmlu": 0.023555453190291203, + "base_compliance": 0.0, + "compliance": 1.0, + "base_cap": 0.6675, + "cap": 0.6725, + "dcap": 0.005, + "gen_base": { + "foreign_rate": 0.0, + "degen_rate": 0.0, + "instr_pass": 1.0 + }, + "gen": { + "foreign_rate": 0.0, + "degen_rate": 0.0, + "instr_pass": 1.0 + }, + "gen_delta": { + "d_foreign": 0.0, + "d_degen": 0.0, + "d_instr": 0.0, + "holds_gen": true + }, + "base_model": "Qwen/Qwen3-4B-Instruct-2507", + "_note": "Redacted: search trajectory, selected depth and edit-scope removed. Reported values are the measured outcome only." +} \ No newline at end of file diff --git a/generation_config.json b/generation_config.json new file mode 100644 index 0000000..49e489b --- /dev/null +++ b/generation_config.json @@ -0,0 +1,13 @@ +{ + "bos_token_id": 151643, + "do_sample": true, + "eos_token_id": [ + 151645, + 151643 + ], + "pad_token_id": 151643, + "temperature": 0.7, + "top_k": 20, + "top_p": 0.8, + "transformers_version": "5.13.1" +} diff --git a/hero.png b/hero.png new file mode 100644 index 0000000..813cc68 --- /dev/null +++ b/hero.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a21887495eab2579b44049a125b29526edd31ec8427d94d7a00428a5273bd572 +size 245302 diff --git a/imatrix.dat b/imatrix.dat new file mode 100644 index 0000000..0d3eff4 --- /dev/null +++ b/imatrix.dat @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1fdc4835c8806f26dcf1a610896b1c71d81898f27dec44368bc95e7059643686 +size 3872640 diff --git a/model.safetensors b/model.safetensors new file mode 100644 index 0000000..75a7fc1 --- /dev/null +++ b/model.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e71b8061f18dbfc477098a72422d96bd5b1591ce5c316cade37142c83d7b0aa6 +size 8044982080 diff --git a/nvfp4/chat_template.jinja b/nvfp4/chat_template.jinja new file mode 100644 index 0000000..70adff8 --- /dev/null +++ b/nvfp4/chat_template.jinja @@ -0,0 +1,61 @@ +{%- if tools %} + {{- '<|im_start|>system\n' }} + {%- if messages[0].role == 'system' %} + {{- messages[0].content + '\n\n' }} + {%- endif %} + {{- "# Tools\n\nYou may call one or more functions to assist with the user query.\n\nYou are provided with function signatures within XML tags:\n" }} + {%- for tool in tools %} + {{- "\n" }} + {{- tool | tojson }} + {%- endfor %} + {{- "\n\n\nFor each function call, return a json object with function name and arguments within XML tags:\n\n{\"name\": , \"arguments\": }\n<|im_end|>\n" }} +{%- else %} + {%- if messages[0].role == 'system' %} + {{- '<|im_start|>system\n' + messages[0].content + '<|im_end|>\n' }} + {%- endif %} +{%- endif %} +{%- for message in messages %} + {%- if message.content is string %} + {%- set content = message.content %} + {%- else %} + {%- set content = '' %} + {%- endif %} + {%- if (message.role == "user") or (message.role == "system" and not loop.first) %} + {{- '<|im_start|>' + message.role + '\n' + content + '<|im_end|>' + '\n' }} + {%- elif message.role == "assistant" %} + {{- '<|im_start|>' + message.role + '\n' + content }} + {%- if message.tool_calls %} + {%- for tool_call in message.tool_calls %} + {%- if (loop.first and content) or (not loop.first) %} + {{- '\n' }} + {%- endif %} + {%- if tool_call.function %} + {%- set tool_call = tool_call.function %} + {%- endif %} + {{- '\n{"name": "' }} + {{- tool_call.name }} + {{- '", "arguments": ' }} + {%- if tool_call.arguments is string %} + {{- tool_call.arguments }} + {%- else %} + {{- tool_call.arguments | tojson }} + {%- endif %} + {{- '}\n' }} + {%- endfor %} + {%- endif %} + {{- '<|im_end|>\n' }} + {%- elif message.role == "tool" %} + {%- if loop.first or (messages[loop.index0 - 1].role != "tool") %} + {{- '<|im_start|>user' }} + {%- endif %} + {{- '\n\n' }} + {{- content }} + {{- '\n' }} + {%- if loop.last or (messages[loop.index0 + 1].role != "tool") %} + {{- '<|im_end|>\n' }} + {%- endif %} + {%- endif %} +{%- endfor %} +{%- if add_generation_prompt %} + {{- '<|im_start|>assistant\n' }} +{%- endif %} \ No newline at end of file diff --git a/nvfp4/config.json b/nvfp4/config.json new file mode 100644 index 0000000..7b6fcd5 --- /dev/null +++ b/nvfp4/config.json @@ -0,0 +1,121 @@ +{ + "architectures": [ + "Qwen3ForCausalLM" + ], + "attention_bias": false, + "attention_dropout": 0.0, + "bos_token_id": 151643, + "dtype": "bfloat16", + "eos_token_id": 151645, + "head_dim": 128, + "hidden_act": "silu", + "hidden_size": 2560, + "initializer_range": 0.02, + "intermediate_size": 9728, + "layer_types": [ + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention", + "full_attention" + ], + "max_position_embeddings": 262144, + "max_window_layers": 36, + "model_type": "qwen3", + "num_attention_heads": 32, + "num_hidden_layers": 36, + "num_key_value_heads": 8, + "pad_token_id": null, + "quantization_config": { + "config_groups": { + "group_0": { + "format": "nvfp4-pack-quantized", + "input_activations": { + "actorder": null, + "block_structure": null, + "dynamic": "local", + "group_size": 16, + "num_bits": 4, + "observer": "static_minmax", + "observer_kwargs": {}, + "scale_dtype": "torch.float8_e4m3fn", + "strategy": "tensor_group", + "symmetric": true, + "type": "float", + "zp_dtype": null + }, + "output_activations": null, + "targets": [ + "Linear" + ], + "weights": { + "actorder": null, + "block_structure": null, + "dynamic": false, + "group_size": 16, + "num_bits": 4, + "observer": "memoryless_minmax", + "observer_kwargs": {}, + "scale_dtype": "torch.float8_e4m3fn", + "strategy": "tensor_group", + "symmetric": true, + "type": "float", + "zp_dtype": null + } + } + }, + "format": "nvfp4-pack-quantized", + "global_compression_ratio": null, + "ignore": [ + "lm_head" + ], + "kv_cache_scheme": null, + "quant_method": "compressed-tensors", + "quantization_status": "compressed", + "sparsity_config": {}, + "transform_config": {}, + "version": "0.17.1" + }, + "rms_norm_eps": 1e-06, + "rope_parameters": { + "rope_theta": 5000000, + "rope_type": "default" + }, + "sliding_window": null, + "tie_word_embeddings": true, + "transformers_version": "5.10.1", + "use_cache": true, + "use_sliding_window": false, + "vocab_size": 151936 +} \ No newline at end of file diff --git a/nvfp4/generation_config.json b/nvfp4/generation_config.json new file mode 100644 index 0000000..9efdfce --- /dev/null +++ b/nvfp4/generation_config.json @@ -0,0 +1,13 @@ +{ + "bos_token_id": 151643, + "do_sample": true, + "eos_token_id": [ + 151645, + 151643 + ], + "pad_token_id": 151643, + "temperature": 0.7, + "top_k": 20, + "top_p": 0.8, + "transformers_version": "5.10.1" +} diff --git a/nvfp4/model.safetensors b/nvfp4/model.safetensors new file mode 100644 index 0000000..0daa9bc --- /dev/null +++ b/nvfp4/model.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1b2765ba6c2ecca790b9b5993e67740f2558b1ab64d5dbeeb6d05e0fe64455c6 +size 2822178072 diff --git a/nvfp4/recipe.yaml b/nvfp4/recipe.yaml new file mode 100644 index 0000000..6a93bcc --- /dev/null +++ b/nvfp4/recipe.yaml @@ -0,0 +1,7 @@ +default_stage: + default_modifiers: + QuantizationModifier: + targets: [Linear] + ignore: [lm_head] + scheme: NVFP4 + bypass_divisibility_checks: false diff --git a/nvfp4/tokenizer.json b/nvfp4/tokenizer.json new file mode 100644 index 0000000..c7afbed --- /dev/null +++ b/nvfp4/tokenizer.json @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:be75606093db2094d7cd20f3c2f385c212750648bd6ea4fb2bf507a6a4c55506 +size 11422650 diff --git a/nvfp4/tokenizer_config.json b/nvfp4/tokenizer_config.json new file mode 100644 index 0000000..cb87962 --- /dev/null +++ b/nvfp4/tokenizer_config.json @@ -0,0 +1,30 @@ +{ + "add_prefix_space": false, + "backend": "tokenizers", + "bos_token": null, + "clean_up_tokenization_spaces": false, + "eos_token": "<|im_end|>", + "errors": "replace", + "extra_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|>" + ], + "is_local": false, + "local_files_only": false, + "model_max_length": 1010000, + "pad_token": "<|endoftext|>", + "split_special_tokens": false, + "tokenizer_class": "Qwen2Tokenizer", + "unk_token": null +} diff --git a/tokenizer.json b/tokenizer.json new file mode 100644 index 0000000..c7afbed --- /dev/null +++ b/tokenizer.json @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:be75606093db2094d7cd20f3c2f385c212750648bd6ea4fb2bf507a6a4c55506 +size 11422650 diff --git a/tokenizer_config.json b/tokenizer_config.json new file mode 100644 index 0000000..90297ca --- /dev/null +++ b/tokenizer_config.json @@ -0,0 +1,16 @@ +{ + "add_prefix_space": false, + "backend": "tokenizers", + "bos_token": null, + "clean_up_tokenization_spaces": false, + "eos_token": "<|im_end|>", + "errors": "replace", + "is_local": false, + "local_files_only": false, + "model_max_length": 1010000, + "pad_token": "<|endoftext|>", + "split_special_tokens": false, + "tokenizer_class": "Qwen2Tokenizer", + "unk_token": null, + "chat_template": "{%- if tools %}\n {{- '<|im_start|>system\\n' }}\n {%- if messages[0].role == 'system' %}\n {{- messages[0].content + '\\n\\n' }}\n {%- endif %}\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 {%- endif %}\n{%- endif %}\n{%- for message in messages %}\n {%- if message.content is string %}\n {%- set content = message.content %}\n {%- else %}\n {%- set content = '' %}\n {%- endif %}\n {%- if (message.role == \"user\") or (message.role == \"system\" and not loop.first) %}\n {{- '<|im_start|>' + message.role + '\\n' + content + '<|im_end|>' + '\\n' }}\n {%- elif message.role == \"assistant\" %}\n {{- '<|im_start|>' + message.role + '\\n' + content }}\n {%- if message.tool_calls %}\n {%- for tool_call in message.tool_calls %}\n {%- if (loop.first and content) or (not loop.first) %}\n {{- '\\n' }}\n {%- endif %}\n {%- if tool_call.function %}\n {%- set tool_call = tool_call.function %}\n {%- endif %}\n {{- '\\n{\"name\": \"' }}\n {{- tool_call.name }}\n {{- '\", \"arguments\": ' }}\n {%- if tool_call.arguments is string %}\n {{- tool_call.arguments }}\n {%- else %}\n {{- tool_call.arguments | tojson }}\n {%- endif %}\n {{- '}\\n' }}\n {%- endfor %}\n {%- endif %}\n {{- '<|im_end|>\\n' }}\n {%- elif message.role == \"tool\" %}\n {%- if loop.first or (messages[loop.index0 - 1].role != \"tool\") %}\n {{- '<|im_start|>user' }}\n {%- endif %}\n {{- '\\n\\n' }}\n {{- 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 %}" +} \ No newline at end of file diff --git a/whitepaper.pdf b/whitepaper.pdf new file mode 100644 index 0000000000000000000000000000000000000000..0ca9d8124fbd676bbd7a88843d3107b13371408a GIT binary patch literal 74713 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 literal 0 HcmV?d00001