commit 63764de9c7dc196a2c96c7cb5caec296fb24616b Author: ModelHub XC Date: Sun Jul 12 20:03:06 2026 +0800 初始化项目,由ModelHub XC社区提供模型 Model: bartowski/Menlo_Jan-nano-GGUF Source: Original Platform diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..53d7257 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,47 @@ +*.7z filter=lfs diff=lfs merge=lfs -text +*.arrow filter=lfs diff=lfs merge=lfs -text +*.bin filter=lfs diff=lfs merge=lfs -text +*.bin.* filter=lfs diff=lfs merge=lfs -text +*.bz2 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 +*.model filter=lfs diff=lfs merge=lfs -text +*.msgpack 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 +*.pt filter=lfs diff=lfs merge=lfs -text +*.pth filter=lfs diff=lfs merge=lfs -text +*.rar filter=lfs diff=lfs merge=lfs -text +saved_model/**/* 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 +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zstandard filter=lfs diff=lfs merge=lfs -text +*.tfevents* filter=lfs diff=lfs merge=lfs -text +*.db* filter=lfs diff=lfs merge=lfs -text +*.ark* filter=lfs diff=lfs merge=lfs -text +**/*ckpt*data* filter=lfs diff=lfs merge=lfs -text +**/*ckpt*.meta filter=lfs diff=lfs merge=lfs -text +**/*ckpt*.index filter=lfs diff=lfs merge=lfs -text +*.safetensors filter=lfs diff=lfs merge=lfs -text +*.ckpt filter=lfs diff=lfs merge=lfs -text +*.gguf* filter=lfs diff=lfs merge=lfs -text +*.ggml filter=lfs diff=lfs merge=lfs -text +*.llamafile* filter=lfs diff=lfs merge=lfs -text +*.pt2 filter=lfs diff=lfs merge=lfs -text +*.mlmodel filter=lfs diff=lfs merge=lfs -text +*.npy filter=lfs diff=lfs merge=lfs -text +*.npz filter=lfs diff=lfs merge=lfs -text +*.pickle filter=lfs diff=lfs merge=lfs -text +*.pkl filter=lfs diff=lfs merge=lfs -text +*.tar 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 \ No newline at end of file diff --git a/Menlo_Jan-nano-IQ2_M.gguf b/Menlo_Jan-nano-IQ2_M.gguf new file mode 100644 index 0000000..d7c7fae --- /dev/null +++ b/Menlo_Jan-nano-IQ2_M.gguf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:952c7fc6ee6d2572ca39c4eda3088c7a934fa1f45e75119db28dbde283e6046c +size 1512983744 diff --git a/Menlo_Jan-nano-IQ3_M.gguf b/Menlo_Jan-nano-IQ3_M.gguf new file mode 100644 index 0000000..f3da0d7 --- /dev/null +++ b/Menlo_Jan-nano-IQ3_M.gguf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0cfed07902a5c2c21f7d551ea167788e081f5af86bc1766ca3a7bfdb05eef422 +size 1962896064 diff --git a/Menlo_Jan-nano-IQ3_XS.gguf b/Menlo_Jan-nano-IQ3_XS.gguf new file mode 100644 index 0000000..9327779 --- /dev/null +++ b/Menlo_Jan-nano-IQ3_XS.gguf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c36fc4f6d907cf81890e6339e581deb6791c4e2e8c6404e83790373fb05c328c +size 1814375104 diff --git a/Menlo_Jan-nano-IQ3_XXS.gguf b/Menlo_Jan-nano-IQ3_XXS.gguf new file mode 100644 index 0000000..ad04f5f --- /dev/null +++ b/Menlo_Jan-nano-IQ3_XXS.gguf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dd195c4789d9de102b1ca2d6a78bc0526181322013561a33606624fb2750e34b +size 1670188224 diff --git a/Menlo_Jan-nano-IQ4_NL.gguf b/Menlo_Jan-nano-IQ4_NL.gguf new file mode 100644 index 0000000..3dce948 --- /dev/null +++ b/Menlo_Jan-nano-IQ4_NL.gguf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:55ca95e5fd2e4b10b4f8ce246f5e2b6e6c4ed905e54ea66d813961b42072d1fc +size 2381343424 diff --git a/Menlo_Jan-nano-IQ4_XS.gguf b/Menlo_Jan-nano-IQ4_XS.gguf new file mode 100644 index 0000000..9ef95f0 --- /dev/null +++ b/Menlo_Jan-nano-IQ4_XS.gguf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a4896d07a89b81cd7c36eeb4f91b06e7cf81b69725e71b38765d9e48188f9eb2 +size 2270751424 diff --git a/Menlo_Jan-nano-Q2_K.gguf b/Menlo_Jan-nano-Q2_K.gguf new file mode 100644 index 0000000..9da269f --- /dev/null +++ b/Menlo_Jan-nano-Q2_K.gguf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9154379b3e1bf82196ff81a41de1c4bc3fb8488167310d1389fcbf1b4b824a8a +size 1669499584 diff --git a/Menlo_Jan-nano-Q2_K_L.gguf b/Menlo_Jan-nano-Q2_K_L.gguf new file mode 100644 index 0000000..ac04a95 --- /dev/null +++ b/Menlo_Jan-nano-Q2_K_L.gguf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c4d863a559b07b9aeda40bbd205c06796c6a91781cb0d3f1c4c8e5d2fca49293 +size 1763699904 diff --git a/Menlo_Jan-nano-Q3_K_L.gguf b/Menlo_Jan-nano-Q3_K_L.gguf new file mode 100644 index 0000000..c8550a4 --- /dev/null +++ b/Menlo_Jan-nano-Q3_K_L.gguf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fdfbd3df839365f7dc836ddb50d55de9fa4cc8769630bf0c61cb8fb95baa4527 +size 2239785664 diff --git a/Menlo_Jan-nano-Q3_K_M.gguf b/Menlo_Jan-nano-Q3_K_M.gguf new file mode 100644 index 0000000..8c64a94 --- /dev/null +++ b/Menlo_Jan-nano-Q3_K_M.gguf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b7bd2fafc2b53d824a1e85e513bed59ac696aaf4fa8fda382c716a1d876e04ef +size 2075617984 diff --git a/Menlo_Jan-nano-Q3_K_S.gguf b/Menlo_Jan-nano-Q3_K_S.gguf new file mode 100644 index 0000000..ae40b5e --- /dev/null +++ b/Menlo_Jan-nano-Q3_K_S.gguf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:752d01ca53267a32ffb366c1a58eefdb4be5a9e74b07115553bb16c5f430fc50 +size 1886997184 diff --git a/Menlo_Jan-nano-Q3_K_XL.gguf b/Menlo_Jan-nano-Q3_K_XL.gguf new file mode 100644 index 0000000..c3b09a9 --- /dev/null +++ b/Menlo_Jan-nano-Q3_K_XL.gguf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f240fba86b769079704a91d97c372d7ac8c03186fac4964b5ba325839f7d89c5 +size 2333985984 diff --git a/Menlo_Jan-nano-Q4_0.gguf b/Menlo_Jan-nano-Q4_0.gguf new file mode 100644 index 0000000..6cd8ce0 --- /dev/null +++ b/Menlo_Jan-nano-Q4_0.gguf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:55c080ca479974037475af6efb3aaff7eba32c85867d924c934f1d196a20a0ed +size 2375772864 diff --git a/Menlo_Jan-nano-Q4_1.gguf b/Menlo_Jan-nano-Q4_1.gguf new file mode 100644 index 0000000..e09347a --- /dev/null +++ b/Menlo_Jan-nano-Q4_1.gguf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e61481d0de74758fdb6487a210041a500a6c4d5dd21025659ae3d73b6c54a04 +size 2596629184 diff --git a/Menlo_Jan-nano-Q4_K_L.gguf b/Menlo_Jan-nano-Q4_K_L.gguf new file mode 100644 index 0000000..8e764bf --- /dev/null +++ b/Menlo_Jan-nano-Q4_K_L.gguf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c4950e5def14fdf7186fada3fbd8d0f3f82746006bcb568fda18309b8b849082 +size 2591481024 diff --git a/Menlo_Jan-nano-Q4_K_M.gguf b/Menlo_Jan-nano-Q4_K_M.gguf new file mode 100644 index 0000000..0b99505 --- /dev/null +++ b/Menlo_Jan-nano-Q4_K_M.gguf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b90a30f226e6bce26ef9e0db444cb12530edf90b0eea0defc15b0e361fc698eb +size 2497280704 diff --git a/Menlo_Jan-nano-Q4_K_S.gguf b/Menlo_Jan-nano-Q4_K_S.gguf new file mode 100644 index 0000000..fb88187 --- /dev/null +++ b/Menlo_Jan-nano-Q4_K_S.gguf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2bd2932bc73adbb04fdec0e774b387dcd494ad3ab7ed5a46c9b23ebcd95317aa +size 2383309504 diff --git a/Menlo_Jan-nano-Q5_K_L.gguf b/Menlo_Jan-nano-Q5_K_L.gguf new file mode 100644 index 0000000..83a2317 --- /dev/null +++ b/Menlo_Jan-nano-Q5_K_L.gguf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d55f407ffbe10bec8dbf3616a7f02f75bfc41a6b64a782d79b3451e8c5cc5132 +size 2983713984 diff --git a/Menlo_Jan-nano-Q5_K_M.gguf b/Menlo_Jan-nano-Q5_K_M.gguf new file mode 100644 index 0000000..720e462 --- /dev/null +++ b/Menlo_Jan-nano-Q5_K_M.gguf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:18d0210126b77a570c518b1e7948e684fafb8a67dab3ccfe2b0524903d110a03 +size 2889513664 diff --git a/Menlo_Jan-nano-Q5_K_S.gguf b/Menlo_Jan-nano-Q5_K_S.gguf new file mode 100644 index 0000000..b8d9fd4 --- /dev/null +++ b/Menlo_Jan-nano-Q5_K_S.gguf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:84b8cb06f7e9a1efe4083a79c7653cc969dc5066e28b07d1bc3b6c677591ff91 +size 2823711424 diff --git a/Menlo_Jan-nano-Q6_K.gguf b/Menlo_Jan-nano-Q6_K.gguf new file mode 100644 index 0000000..67ed1ee --- /dev/null +++ b/Menlo_Jan-nano-Q6_K.gguf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cf5b9cdbe6e53121581172218582c934e083aa3b0e77a0f4b43958bfabb1b6c1 +size 3306261184 diff --git a/Menlo_Jan-nano-Q6_K_L.gguf b/Menlo_Jan-nano-Q6_K_L.gguf new file mode 100644 index 0000000..56054a7 --- /dev/null +++ b/Menlo_Jan-nano-Q6_K_L.gguf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:81b09ae5f122929eed5b8bc60b55cdf826f2c3cdd5c8279bbccda6d11eb42f18 +size 3400461504 diff --git a/Menlo_Jan-nano-Q8_0.gguf b/Menlo_Jan-nano-Q8_0.gguf new file mode 100644 index 0000000..839c8da --- /dev/null +++ b/Menlo_Jan-nano-Q8_0.gguf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:03ba0a29269d648d527b36fa2a82f19b2b248b38844b3deeb6f4273f28a13b28 +size 4280405184 diff --git a/Menlo_Jan-nano-bf16.gguf b/Menlo_Jan-nano-bf16.gguf new file mode 100644 index 0000000..1ae766f --- /dev/null +++ b/Menlo_Jan-nano-bf16.gguf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:22f6d1e43de9485b8a4022f81847f38554eccd18a26bc8e698d28cac8857a548 +size 8051284928 diff --git a/Menlo_Jan-nano.imatrix b/Menlo_Jan-nano.imatrix new file mode 100644 index 0000000..9e8a1cc Binary files /dev/null and b/Menlo_Jan-nano.imatrix differ diff --git a/README.md b/README.md new file mode 100644 index 0000000..c475036 --- /dev/null +++ b/README.md @@ -0,0 +1,174 @@ +--- +quantized_by: bartowski +pipeline_tag: text-generation +base_model: Menlo/Jan-nano +base_model_relation: quantized +license: apache-2.0 +--- + +## Llamacpp imatrix Quantizations of Jan-nano by Menlo + +Using llama.cpp release b5627 for quantization. + +Original model: https://huggingface.co/Menlo/Jan-nano + +All quants made using imatrix option with dataset from [here](https://gist.github.com/bartowski1182/eb213dccb3571f863da82e99418f81e8) + +Run them in [LM Studio](https://lmstudio.ai/) + +Run them directly with [llama.cpp](https://github.com/ggerganov/llama.cpp), or any other llama.cpp based project + +## Prompt format + +``` +<|im_start|>system +{system_prompt}<|im_end|> +<|im_start|>user +{prompt}<|im_end|> +<|im_start|>assistant + + + +``` + +## Download a file (not the whole branch) from below: + +| Filename | Quant type | File Size | Split | Description | +| -------- | ---------- | --------- | ----- | ----------- | +| [Jan-nano-bf16.gguf](https://huggingface.co/bartowski/Menlo_Jan-nano-GGUF/blob/main/Menlo_Jan-nano-bf16.gguf) | bf16 | 8.05GB | false | Full BF16 weights. | +| [Jan-nano-Q8_0.gguf](https://huggingface.co/bartowski/Menlo_Jan-nano-GGUF/blob/main/Menlo_Jan-nano-Q8_0.gguf) | Q8_0 | 4.28GB | false | Extremely high quality, generally unneeded but max available quant. | +| [Jan-nano-Q6_K_L.gguf](https://huggingface.co/bartowski/Menlo_Jan-nano-GGUF/blob/main/Menlo_Jan-nano-Q6_K_L.gguf) | Q6_K_L | 3.40GB | false | Uses Q8_0 for embed and output weights. Very high quality, near perfect, *recommended*. | +| [Jan-nano-Q6_K.gguf](https://huggingface.co/bartowski/Menlo_Jan-nano-GGUF/blob/main/Menlo_Jan-nano-Q6_K.gguf) | Q6_K | 3.31GB | false | Very high quality, near perfect, *recommended*. | +| [Jan-nano-Q5_K_L.gguf](https://huggingface.co/bartowski/Menlo_Jan-nano-GGUF/blob/main/Menlo_Jan-nano-Q5_K_L.gguf) | Q5_K_L | 2.98GB | false | Uses Q8_0 for embed and output weights. High quality, *recommended*. | +| [Jan-nano-Q5_K_M.gguf](https://huggingface.co/bartowski/Menlo_Jan-nano-GGUF/blob/main/Menlo_Jan-nano-Q5_K_M.gguf) | Q5_K_M | 2.89GB | false | High quality, *recommended*. | +| [Jan-nano-Q5_K_S.gguf](https://huggingface.co/bartowski/Menlo_Jan-nano-GGUF/blob/main/Menlo_Jan-nano-Q5_K_S.gguf) | Q5_K_S | 2.82GB | false | High quality, *recommended*. | +| [Jan-nano-Q4_1.gguf](https://huggingface.co/bartowski/Menlo_Jan-nano-GGUF/blob/main/Menlo_Jan-nano-Q4_1.gguf) | Q4_1 | 2.60GB | false | Legacy format, similar performance to Q4_K_S but with improved tokens/watt on Apple silicon. | +| [Jan-nano-Q4_K_L.gguf](https://huggingface.co/bartowski/Menlo_Jan-nano-GGUF/blob/main/Menlo_Jan-nano-Q4_K_L.gguf) | Q4_K_L | 2.59GB | false | Uses Q8_0 for embed and output weights. Good quality, *recommended*. | +| [Jan-nano-Q4_K_M.gguf](https://huggingface.co/bartowski/Menlo_Jan-nano-GGUF/blob/main/Menlo_Jan-nano-Q4_K_M.gguf) | Q4_K_M | 2.50GB | false | Good quality, default size for most use cases, *recommended*. | +| [Jan-nano-Q4_K_S.gguf](https://huggingface.co/bartowski/Menlo_Jan-nano-GGUF/blob/main/Menlo_Jan-nano-Q4_K_S.gguf) | Q4_K_S | 2.38GB | false | Slightly lower quality with more space savings, *recommended*. | +| [Jan-nano-Q4_0.gguf](https://huggingface.co/bartowski/Menlo_Jan-nano-GGUF/blob/main/Menlo_Jan-nano-Q4_0.gguf) | Q4_0 | 2.38GB | false | Legacy format, offers online repacking for ARM and AVX CPU inference. | +| [Jan-nano-IQ4_NL.gguf](https://huggingface.co/bartowski/Menlo_Jan-nano-GGUF/blob/main/Menlo_Jan-nano-IQ4_NL.gguf) | IQ4_NL | 2.38GB | false | Similar to IQ4_XS, but slightly larger. Offers online repacking for ARM CPU inference. | +| [Jan-nano-Q3_K_XL.gguf](https://huggingface.co/bartowski/Menlo_Jan-nano-GGUF/blob/main/Menlo_Jan-nano-Q3_K_XL.gguf) | Q3_K_XL | 2.33GB | false | Uses Q8_0 for embed and output weights. Lower quality but usable, good for low RAM availability. | +| [Jan-nano-IQ4_XS.gguf](https://huggingface.co/bartowski/Menlo_Jan-nano-GGUF/blob/main/Menlo_Jan-nano-IQ4_XS.gguf) | IQ4_XS | 2.27GB | false | Decent quality, smaller than Q4_K_S with similar performance, *recommended*. | +| [Jan-nano-Q3_K_L.gguf](https://huggingface.co/bartowski/Menlo_Jan-nano-GGUF/blob/main/Menlo_Jan-nano-Q3_K_L.gguf) | Q3_K_L | 2.24GB | false | Lower quality but usable, good for low RAM availability. | +| [Jan-nano-Q3_K_M.gguf](https://huggingface.co/bartowski/Menlo_Jan-nano-GGUF/blob/main/Menlo_Jan-nano-Q3_K_M.gguf) | Q3_K_M | 2.08GB | false | Low quality. | +| [Jan-nano-IQ3_M.gguf](https://huggingface.co/bartowski/Menlo_Jan-nano-GGUF/blob/main/Menlo_Jan-nano-IQ3_M.gguf) | IQ3_M | 1.96GB | false | Medium-low quality, new method with decent performance comparable to Q3_K_M. | +| [Jan-nano-Q3_K_S.gguf](https://huggingface.co/bartowski/Menlo_Jan-nano-GGUF/blob/main/Menlo_Jan-nano-Q3_K_S.gguf) | Q3_K_S | 1.89GB | false | Low quality, not recommended. | +| [Jan-nano-IQ3_XS.gguf](https://huggingface.co/bartowski/Menlo_Jan-nano-GGUF/blob/main/Menlo_Jan-nano-IQ3_XS.gguf) | IQ3_XS | 1.81GB | false | Lower quality, new method with decent performance, slightly better than Q3_K_S. | +| [Jan-nano-Q2_K_L.gguf](https://huggingface.co/bartowski/Menlo_Jan-nano-GGUF/blob/main/Menlo_Jan-nano-Q2_K_L.gguf) | Q2_K_L | 1.76GB | false | Uses Q8_0 for embed and output weights. Very low quality but surprisingly usable. | +| [Jan-nano-IQ3_XXS.gguf](https://huggingface.co/bartowski/Menlo_Jan-nano-GGUF/blob/main/Menlo_Jan-nano-IQ3_XXS.gguf) | IQ3_XXS | 1.67GB | false | Lower quality, new method with decent performance, comparable to Q3 quants. | +| [Jan-nano-Q2_K.gguf](https://huggingface.co/bartowski/Menlo_Jan-nano-GGUF/blob/main/Menlo_Jan-nano-Q2_K.gguf) | Q2_K | 1.67GB | false | Very low quality but surprisingly usable. | +| [Jan-nano-IQ2_M.gguf](https://huggingface.co/bartowski/Menlo_Jan-nano-GGUF/blob/main/Menlo_Jan-nano-IQ2_M.gguf) | IQ2_M | 1.51GB | false | Relatively low quality, uses SOTA techniques to be surprisingly usable. | + +## Embed/output weights + +Some of these quants (Q3_K_XL, Q4_K_L etc) are the standard quantization method with the embeddings and output weights quantized to Q8_0 instead of what they would normally default to. + +## Downloading using huggingface-cli + +
+ Click to view download instructions + +First, make sure you have hugginface-cli installed: + +``` +pip install -U "huggingface_hub[cli]" +``` + +Then, you can target the specific file you want: + +``` +huggingface-cli download bartowski/Menlo_Jan-nano-GGUF --include "Menlo_Jan-nano-Q4_K_M.gguf" --local-dir ./ +``` + +If the model is bigger than 50GB, it will have been split into multiple files. In order to download them all to a local folder, run: + +``` +huggingface-cli download bartowski/Menlo_Jan-nano-GGUF --include "Menlo_Jan-nano-Q8_0/*" --local-dir ./ +``` + +You can either specify a new local-dir (Menlo_Jan-nano-Q8_0) or download them all in place (./) + +
+ +## ARM/AVX information + +Previously, you would download Q4_0_4_4/4_8/8_8, and these would have their weights interleaved in memory in order to improve performance on ARM and AVX machines by loading up more data in one pass. + +Now, however, there is something called "online repacking" for weights. details in [this PR](https://github.com/ggerganov/llama.cpp/pull/9921). If you use Q4_0 and your hardware would benefit from repacking weights, it will do it automatically on the fly. + +As of llama.cpp build [b4282](https://github.com/ggerganov/llama.cpp/releases/tag/b4282) you will not be able to run the Q4_0_X_X files and will instead need to use Q4_0. + +Additionally, if you want to get slightly better quality for , you can use IQ4_NL thanks to [this PR](https://github.com/ggerganov/llama.cpp/pull/10541) which will also repack the weights for ARM, though only the 4_4 for now. The loading time may be slower but it will result in an overall speed incrase. + +
+ Click to view Q4_0_X_X information (deprecated + +I'm keeping this section to show the potential theoretical uplift in performance from using the Q4_0 with online repacking. + +
+ Click to view benchmarks on an AVX2 system (EPYC7702) + +| model | size | params | backend | threads | test | t/s | % (vs Q4_0) | +| ------------------------------ | ---------: | ---------: | ---------- | ------: | ------------: | -------------------: |-------------: | +| qwen2 3B Q4_0 | 1.70 GiB | 3.09 B | CPU | 64 | pp512 | 204.03 ± 1.03 | 100% | +| qwen2 3B Q4_0 | 1.70 GiB | 3.09 B | CPU | 64 | pp1024 | 282.92 ± 0.19 | 100% | +| qwen2 3B Q4_0 | 1.70 GiB | 3.09 B | CPU | 64 | pp2048 | 259.49 ± 0.44 | 100% | +| qwen2 3B Q4_0 | 1.70 GiB | 3.09 B | CPU | 64 | tg128 | 39.12 ± 0.27 | 100% | +| qwen2 3B Q4_0 | 1.70 GiB | 3.09 B | CPU | 64 | tg256 | 39.31 ± 0.69 | 100% | +| qwen2 3B Q4_0 | 1.70 GiB | 3.09 B | CPU | 64 | tg512 | 40.52 ± 0.03 | 100% | +| qwen2 3B Q4_K_M | 1.79 GiB | 3.09 B | CPU | 64 | pp512 | 301.02 ± 1.74 | 147% | +| qwen2 3B Q4_K_M | 1.79 GiB | 3.09 B | CPU | 64 | pp1024 | 287.23 ± 0.20 | 101% | +| qwen2 3B Q4_K_M | 1.79 GiB | 3.09 B | CPU | 64 | pp2048 | 262.77 ± 1.81 | 101% | +| qwen2 3B Q4_K_M | 1.79 GiB | 3.09 B | CPU | 64 | tg128 | 18.80 ± 0.99 | 48% | +| qwen2 3B Q4_K_M | 1.79 GiB | 3.09 B | CPU | 64 | tg256 | 24.46 ± 3.04 | 83% | +| qwen2 3B Q4_K_M | 1.79 GiB | 3.09 B | CPU | 64 | tg512 | 36.32 ± 3.59 | 90% | +| qwen2 3B Q4_0_8_8 | 1.69 GiB | 3.09 B | CPU | 64 | pp512 | 271.71 ± 3.53 | 133% | +| qwen2 3B Q4_0_8_8 | 1.69 GiB | 3.09 B | CPU | 64 | pp1024 | 279.86 ± 45.63 | 100% | +| qwen2 3B Q4_0_8_8 | 1.69 GiB | 3.09 B | CPU | 64 | pp2048 | 320.77 ± 5.00 | 124% | +| qwen2 3B Q4_0_8_8 | 1.69 GiB | 3.09 B | CPU | 64 | tg128 | 43.51 ± 0.05 | 111% | +| qwen2 3B Q4_0_8_8 | 1.69 GiB | 3.09 B | CPU | 64 | tg256 | 43.35 ± 0.09 | 110% | +| qwen2 3B Q4_0_8_8 | 1.69 GiB | 3.09 B | CPU | 64 | tg512 | 42.60 ± 0.31 | 105% | + +Q4_0_8_8 offers a nice bump to prompt processing and a small bump to text generation + +
+ +
+ +## Which file should I choose? + +
+ Click here for details + +A great write up with charts showing various performances is provided by Artefact2 [here](https://gist.github.com/Artefact2/b5f810600771265fc1e39442288e8ec9) + +The first thing to figure out is how big a model you can run. To do this, you'll need to figure out how much RAM and/or VRAM you have. + +If you want your model running as FAST as possible, you'll want to fit the whole thing on your GPU's VRAM. Aim for a quant with a file size 1-2GB smaller than your GPU's total VRAM. + +If you want the absolute maximum quality, add both your system RAM and your GPU's VRAM together, then similarly grab a quant with a file size 1-2GB Smaller than that total. + +Next, you'll need to decide if you want to use an 'I-quant' or a 'K-quant'. + +If you don't want to think too much, grab one of the K-quants. These are in format 'QX_K_X', like Q5_K_M. + +If you want to get more into the weeds, you can check out this extremely useful feature chart: + +[llama.cpp feature matrix](https://github.com/ggerganov/llama.cpp/wiki/Feature-matrix) + +But basically, if you're aiming for below Q4, and you're running cuBLAS (Nvidia) or rocBLAS (AMD), you should look towards the I-quants. These are in format IQX_X, like IQ3_M. These are newer and offer better performance for their size. + +These I-quants can also be used on CPU, but will be slower than their K-quant equivalent, so speed vs performance is a tradeoff you'll have to decide. + +
+ +## Credits + +Thank you kalomaze and Dampf for assistance in creating the imatrix calibration dataset. + +Thank you ZeroWw for the inspiration to experiment with embed/output. + +Thank you to LM Studio for sponsoring my work. + +Want to support my work? Visit my ko-fi page here: https://ko-fi.com/bartowski 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