alt.freeweights.granite / ibm-granite_granite-4.0-h-small-GGUF
From: bartowski <huggingface.co/bartowski>Newsgroups: alt.freeweights.graniteSubject:

ibm-granite_granite-4.0-h-small-GGUF

Date: 2026-11-15Commit: 03d2ac5Signed: 2DC28CC7B26A283B ✓

Text generation model. Gguf weights, 518 GB in all. Published by bartowski under Apache-2.0.

granite518GBibm-granite_granite-4.0-h-small-GGUFggufpermissive
FactsParamsnot statedSize518 GBFormatsggufTasktext generationLicenseApache-2.0From sourcepermissive
$ fw get bartowski/ibm-granite_granite-4.0-h-small-GGUF
# manifest sha256 88e8c394c384… · 518 GB · 31 files
$ fw verify ./ibm-granite_granite-4.0-h-small-GGUF bartowski/ibm-granite_granite-4.0-h-small-GGUF
From sourceHosted (signed)bartowski/ibm-granite_granite-4.0-h-small-GGUFLast check: 2026-11-15 05:00 UTC

Get help: custom fine-tune or private deploy. We review your setup before we quote.

Quantized of granite-4.0-h-small.

Works with

Convert with

Overview

Size
518 GB
Weights
108 MB (smallest of 28 GGUF variants)
Parameters
not stated
Formats
gguf
Task
text generation
License
Apache-2.0 (permissive)
Files
31, each with a sha256
Publisher
bartowski
Added
2026-11-15
Section
alt.freeweights.granite
Lineage

Original release from the publisher.

Base model: ibm-granite/granite-4.0-h-small

Where these bytes come from
Publisher at the pinned commit→You

Sources are tried in order. A file counts only when its size and sha256 match the manifest. Sources are checked when you ask for them, not on a timer.

Sources
BadgeHostLast checkResult
From sourcehuggingface.co2026-11-15 05:00 UTCpassed

Model card

From the publisher at commit 03d2ac5. Shown as plain text with links; images open at the publisher.

Llamacpp imatrix Quantizations of granite-4.0-h-small by ibm-granite#

Using llama.cpp release b6647 for quantization.

Original model: https://huggingface.co/ibm-granite/granite-4.0-h-small

All quants made using imatrix option with dataset from here combined with a subset of combined_all_small.parquet from Ed Addario here

Run them in LM Studio

Run them directly with llama.cpp, or any other llama.cpp based project

Prompt format#

No prompt format found, check original model page

Download a file (not the whole branch) from below:#

FilenameQuant typeFile SizeSplitDescription
granite-4.0-h-small-bf16.ggufbf1664.45GBtrueFull BF16 weights.
granite-4.0-h-small-Q8_0.ggufQ8_034.26GBfalseExtremely high quality, generally unneeded but max available quant.
granite-4.0-h-small-Q6_K_L.ggufQ6_K_L26.75GBfalseUses Q8_0 for embed and output weights. Very high quality, near perfect, recommended.
granite-4.0-h-small-Q6_K.ggufQ6_K26.65GBfalseVery high quality, near perfect, recommended.
granite-4.0-h-small-Q5_K_L.ggufQ5_K_L23.24GBfalseUses Q8_0 for embed and output weights. High quality, recommended.
granite-4.0-h-small-Q5_K_M.ggufQ5_K_M23.14GBfalseHigh quality, recommended.
granite-4.0-h-small-Q5_K_S.ggufQ5_K_S22.44GBfalseHigh quality, recommended.
granite-4.0-h-small-Q4_1.ggufQ4_120.46GBfalseLegacy format, similar performance to Q4_K_S but with improved tokens/watt on Apple silicon.
granite-4.0-h-small-Q4_K_L.ggufQ4_K_L19.85GBfalseUses Q8_0 for embed and output weights. Good quality, recommended.
granite-4.0-h-small-Q4_K_M.ggufQ4_K_M19.75GBfalseGood quality, default size for most use cases, recommended.
granite-4.0-h-small-Q4_K_S.ggufQ4_K_S19.10GBfalseSlightly lower quality with more space savings, recommended.
granite-4.0-h-small-Q4_0.ggufQ4_018.80GBfalseLegacy format, offers online repacking for ARM and AVX CPU inference.
granite-4.0-h-small-IQ4_NL.ggufIQ4_NL18.53GBfalseSimilar to IQ4_XS, but slightly larger. Offers online repacking for ARM CPU inference.
granite-4.0-h-small-IQ4_XS.ggufIQ4_XS17.56GBfalseDecent quality, smaller than Q4_K_S with similar performance, recommended.
granite-4.0-h-small-Q3_K_XL.ggufQ3_K_XL15.67GBfalseUses Q8_0 for embed and output weights. Lower quality but usable, good for low RAM availability.
granite-4.0-h-small-Q3_K_L.ggufQ3_K_L15.57GBfalseLower quality but usable, good for low RAM availability.
granite-4.0-h-small-Q3_K_M.ggufQ3_K_M15.02GBfalseLow quality.
granite-4.0-h-small-IQ3_M.ggufIQ3_M15.02GBfalseMedium-low quality, new method with decent performance comparable to Q3_K_M.
granite-4.0-h-small-Q3_K_S.ggufQ3_K_S14.42GBfalseLow quality, not recommended.
granite-4.0-h-small-IQ3_XS.ggufIQ3_XS13.78GBfalseLower quality, new method with decent performance, slightly better than Q3_K_S.
granite-4.0-h-small-IQ3_XXS.ggufIQ3_XXS13.12GBfalseLower quality, new method with decent performance, comparable to Q3 quants.
granite-4.0-h-small-Q2_K_L.ggufQ2_K_L11.84GBfalseUses Q8_0 for embed and output weights. Very low quality but surprisingly usable.
granite-4.0-h-small-Q2_K.ggufQ2_K11.74GBfalseVery low quality but surprisingly usable.
granite-4.0-h-small-IQ2_M.ggufIQ2_M10.47GBfalseRelatively low quality, uses SOTA techniques to be surprisingly usable.
granite-4.0-h-small-IQ2_S.ggufIQ2_S9.30GBfalseLow quality, uses SOTA techniques to be usable.
granite-4.0-h-small-IQ2_XS.ggufIQ2_XS9.29GBfalseLow quality, uses SOTA techniques to be usable.
granite-4.0-h-small-IQ2_XXS.ggufIQ2_XXS8.15GBfalseVery low quality, uses SOTA techniques to be 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/ibm-granite_granite-4.0-h-small-GGUF --include "ibm-granite_granite-4.0-h-small-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/ibm-granite_granite-4.0-h-small-GGUF --include "ibm-granite_granite-4.0-h-small-Q8_0/*" --local-dir ./

You can either specify a new local-dir (ibm-granite_granite-4.0-h-small-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. 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 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 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)

modelsizeparamsbackendthreadstestt/s% (vs Q4_0)
qwen2 3B Q4_01.70 GiB3.09 BCPU64pp512204.03 ± 1.03100%
qwen2 3B Q4_01.70 GiB3.09 BCPU64pp1024282.92 ± 0.19100%
qwen2 3B Q4_01.70 GiB3.09 BCPU64pp2048259.49 ± 0.44100%
qwen2 3B Q4_01.70 GiB3.09 BCPU64tg12839.12 ± 0.27100%
qwen2 3B Q4_01.70 GiB3.09 BCPU64tg25639.31 ± 0.69100%
qwen2 3B Q4_01.70 GiB3.09 BCPU64tg51240.52 ± 0.03100%
qwen2 3B Q4_K_M1.79 GiB3.09 BCPU64pp512301.02 ± 1.74147%
qwen2 3B Q4_K_M1.79 GiB3.09 BCPU64pp1024287.23 ± 0.20101%
qwen2 3B Q4_K_M1.79 GiB3.09 BCPU64pp2048262.77 ± 1.81101%
qwen2 3B Q4_K_M1.79 GiB3.09 BCPU64tg12818.80 ± 0.9948%
qwen2 3B Q4_K_M1.79 GiB3.09 BCPU64tg25624.46 ± 3.0483%
qwen2 3B Q4_K_M1.79 GiB3.09 BCPU64tg51236.32 ± 3.5990%
qwen2 3B Q4_0_8_81.69 GiB3.09 BCPU64pp512271.71 ± 3.53133%
qwen2 3B Q4_0_8_81.69 GiB3.09 BCPU64pp1024279.86 ± 45.63100%
qwen2 3B Q4_0_8_81.69 GiB3.09 BCPU64pp2048320.77 ± 5.00124%
qwen2 3B Q4_0_8_81.69 GiB3.09 BCPU64tg12843.51 ± 0.05111%
qwen2 3B Q4_0_8_81.69 GiB3.09 BCPU64tg25643.35 ± 0.09110%
qwen2 3B Q4_0_8_81.69 GiB3.09 BCPU64tg51242.60 ± 0.31105%

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

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

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

Files

31 files · 518 GBWeights 108 MB (smallest of 28 GGUF variants). Sizes and sha256 from the signed manifest.
Show all 31 files with their sha256
FileSizesha256
.gitattributes3.93 KBb4a4ca9fbbffe77ff76da893b2e8b6f2a87ced11dcb5f95664b7ca76dc96e58c
README.md14.9 KB16bad7ad4df1407136fd10bc7dfa58a504bfae305523a2d48c97e704164b41e1
ibm-granite_granite-4.0-h-small-IQ2_M.gguf10.5 GB23c6641eacef3ce73f0b38aa62a29d1f62023fcb74fcc8b15b2174395f4f0d3b
ibm-granite_granite-4.0-h-small-IQ2_S.gguf9.30 GBfb7797654b3ded029079c9014d96637be2f574b07a57d34a1d8166bbe8d7c561
ibm-granite_granite-4.0-h-small-IQ2_XS.gguf9.29 GB48317cce41c1c16278683645af9f95f9c3795434481f2ce5c401a2d3795da26b
ibm-granite_granite-4.0-h-small-IQ2_XXS.gguf8.15 GBf4a0ade9dd13f220416aa3ce34749d7d8538de68c73aa7fdca35128b9acc0fa8
ibm-granite_granite-4.0-h-small-IQ3_M.gguf15.0 GB112ac88fceed057ef32868aaba0839158d4e9b5b672af4da3216e7bd8462b186
ibm-granite_granite-4.0-h-small-IQ3_XS.gguf13.8 GB8a55b0c97900668ca56992adbe15ffdfa75c4866f08cc169ce5b2e89ca837767
ibm-granite_granite-4.0-h-small-IQ3_XXS.gguf13.1 GBfbb460b2e0d3ed89e5859a60d4c04552ebe099e72c1ee3afd6dbf4c7b25b73fb
ibm-granite_granite-4.0-h-small-IQ4_NL.gguf18.5 GB9074474855aeb2a1af597a9f10ab3ba9eec0b128800b7daad2f955cf4b324a6f
ibm-granite_granite-4.0-h-small-IQ4_XS.gguf17.6 GBb21879529495512f35373edce4b39686d8ed30b4a8cd35d15e9941d9e31bb417
ibm-granite_granite-4.0-h-small-Q2_K.gguf11.7 GB4487b40ebba731761d8f1d5dd89eacea52a33fb4d5b6d0158cc0f0f7057e4a91
ibm-granite_granite-4.0-h-small-Q2_K_L.gguf11.8 GB3b5d5505f38f5595f133a5de98f3ce5a1ab700d1226220e4df8bae201b4236b8
ibm-granite_granite-4.0-h-small-Q3_K_L.gguf15.6 GB42a3c796745d89bae3c8dc3ebb13c5119160b2d153d7373229f357aa647e0eb5
ibm-granite_granite-4.0-h-small-Q3_K_M.gguf15.0 GB14e7c697a19e34d393aa6b31f93b548d9b98a0722441493963450678afe27d79
ibm-granite_granite-4.0-h-small-Q3_K_S.gguf14.4 GB789e51caa5458cbdf9ee703a89266bb55136b406c7dea20012f34e0bd54e799f
ibm-granite_granite-4.0-h-small-Q3_K_XL.gguf15.7 GB39ee5daf9daf784d6b4a5eaac9c616090af6b169bcc6553f992dd49063e00fe4
ibm-granite_granite-4.0-h-small-Q4_0.gguf18.8 GBea22d550b8f4fb5cbd4eb915661943016ebf3a3bbb67d0f20972469377ebb130
ibm-granite_granite-4.0-h-small-Q4_1.gguf20.5 GB4ea15b347a8a56d4f572722188ec81652a414adf33969e51a8863be818dd38ee
ibm-granite_granite-4.0-h-small-Q4_K_L.gguf19.8 GB74af2aced5e5629ffaac73408d219998577930e2877dfc8ebd49d91b5e189748
ibm-granite_granite-4.0-h-small-Q4_K_M.gguf19.7 GBc59ce76239bd5794acdbdf88616dfc296247f4e78792a9678d4b3e24966ead69
ibm-granite_granite-4.0-h-small-Q4_K_S.gguf19.1 GB7a70d2f4f9831365d40007aede19c0cdafd62adde972f773727828a4dd9f17bf
ibm-granite_granite-4.0-h-small-Q5_K_L.gguf23.2 GBb5c74ab62611a572b80227441f56475b324f6c419e999957551dd98db49b7ff1
ibm-granite_granite-4.0-h-small-Q5_K_M.gguf23.1 GBe2992c043b0a0ea5ba58616eae4070fb4960b23ab67e0c751e17e79e3dcbb334
ibm-granite_granite-4.0-h-small-Q5_K_S.gguf22.4 GBbd09d888b7c710792831b0b26d43d963958a91d88d79151ac108202725c11336
ibm-granite_granite-4.0-h-small-Q6_K.gguf26.7 GB896d8f0fe9f740cf81c1d6039c4936c192cdff6cfffbbe23cfdeab6055913373
ibm-granite_granite-4.0-h-small-Q6_K_L.gguf26.8 GBc66e98905a61de787ac99e8fb61b5f8fdc73b405f2fef80ce6dcbb6a837e4018
ibm-granite_granite-4.0-h-small-Q8_0.gguf34.3 GB759c7c51c068e151cf893c236391b1fd51459c236d6f6491c596f7defc28a318
ibm-granite_granite-4.0-h-small-bf16/ibm-granite_granite-4.0-h-small-bf16-00001-of-00002.gguf40.0 GBf5b6bcc08b7884466c12fcf9497f2126d738248a1ec3284823ce53ac10faca39
ibm-granite_granite-4.0-h-small-bf16/ibm-granite_granite-4.0-h-small-bf16-00002-of-00002.gguf24.5 GB5d5eeb03cde15ee69a7288bf1089e9cb9a334fe3b24e85ac7efcf7ea98939e53
ibm-granite_granite-4.0-h-small-imatrix.gguf108 MB0ef99d9cc470f402729554647eaf65ff96271899835c1bac48ad77e8918b56a6
VersionsEach time the pinned upstream commit or file list changed in this repo. Newest first.
Upstream commitDateContents
03d2ac577d pinned now2026-11-15 05:00 UTC31 files · 518 GB

Use it

$ fw get bartowski/ibm-granite_granite-4.0-h-small-GGUF
# manifest sha256 88e8c394c384… · 518 GB · 31 files
$ fw verify ./ibm-granite_granite-4.0-h-small-GGUF bartowski/ibm-granite_granite-4.0-h-small-GGUF
fw.pyChecks the signature and every sha256, tries each source in order, resumes.
$ python3 fw.py get https://freeweights.allternit.com/manifests/bartowski/ibm-granite_granite-4.0-h-small-GGUF.json --dir ./ibm-granite_granite-4.0-h-small-GGUF $ python3 fw.py verify ./ibm-granite_granite-4.0-h-small-GGUF ./bartowski__ibm-granite_granite-4.0-h-small-GGUF.json
hfThe Hugging Face CLI with one setting. Same repo id.
$ HF_ENDPOINT=https://freeweights.allternit.com hf download bartowski/ibm-granite_granite-4.0-h-small-GGUF --revision 03d2ac577ddf67e3ab67086eb7525eb418d8a31d --local-dir ./ibm-granite_granite-4.0-h-small-GGUF
llama.cppDownload one GGUF variant (ibm-granite_granite-4.0-h-small-imatrix, 108 MB), then serve it.
$ HF_ENDPOINT=https://freeweights.allternit.com hf download bartowski/ibm-granite_granite-4.0-h-small-GGUF --include "ibm-granite_granite-4.0-h-small-imatrix*" --local-dir ./ibm-granite_granite-4.0-h-small-GGUF $ llama-server -m ./ibm-granite_granite-4.0-h-small-GGUF/ibm-granite_granite-4.0-h-small-imatrix.gguf
OllamaMake an Ollama model from the downloaded file.
$ printf 'FROM ./ibm-granite_granite-4.0-h-small-GGUF/ibm-granite_granite-4.0-h-small-imatrix.gguf\n' > Modelfile $ ollama create ibm-granite-granite-4.0-h-small-gguf -f Modelfile

License

Name
Apache License 2.0
Id
Apache-2.0
Class
Permissive
Redistribution
yes
Listing
Hosted (signed)
Decided
Inherited from the base model ibm-granite/granite-4.0-h-small: the strictest license along the lineage applies. 2026-11-15
Text in
README.md
Text sha256
16bad7ad4df1407136fd10bc7dfa58a504bfae305523a2d48c97e704164b41e1
Terms gate
No extra terms beyond the license.

Read the license text

Licenses are checked against the license table. A custom license passes only after a person reads it.

Provenance

From: bartowski <huggingface.co/bartowski>Newsgroups: alt.freeweights.graniteSubject: ibm-granite_granite-4.0-h-small-GGUFDate: 2026-11-15Commit: 03d2ac5Signed: 2DC28CC7B26A283B ✓
Upstream
bartowski/ibm-granite_granite-4.0-h-small-GGUF
Pinned commit
03d2ac577ddf67e3ab67086eb7525eb418d8a31d
Manifest
ibm-granite_granite-4.0-h-small-GGUF.json · .minisig
Manifest sha256
88e8c394c3845ad8a1d7aab652320eea1998ef55434d1e195be14dc6a87817e4
Signature
minisign, Ed25519, key 2DC28CC7B26A283B
Created
2026-11-15 05:00 UTC
Generator
freeweights-manifest/0.1.0
Takedowns
None.

How to verify

$ curl -O https://freeweights.allternit.com/manifests/bartowski/ibm-granite_granite-4.0-h-small-GGUF.json $ curl -O https://freeweights.allternit.com/manifests/bartowski/ibm-granite_granite-4.0-h-small-GGUF.json.minisig $ minisign -Vm ibm-granite_granite-4.0-h-small-GGUF.json -P RWQ7KGqyx4zCLXtUFOqvfv8L3g+8fpKJ1FsuxPyOYMF+4KufbUxKq1Oq $ shasum -a 256 <file> # compare with the Files tab

A manifest whose signature fails must be rejected. A file whose size or sha256 does not match must be discarded. Verify a download

Model tree

Parent

ibm-granite/granite-4.0-h-small · this model is a quantization of it

No model in the catalog names this one as its parent.

Get it
Download
$ HF_ENDPOINT=https://freeweights.allternit.com hf download bartowski/ibm-granite_granite-4.0-h-small-GGUF
Open in Freeweights Studio

Pull, verify and run it in the Allternit app on Desktop, web or phone.

Signed manifest
minisign, key 2DC28CC7B26A283B. ibm-granite_granite-4.0-h-small-GGUF.json. Provenance. Takedown history: none.
From: ibm-granite <huggingface.co/ibm-granite>Subject: GneissWeb.7B_ablation_model_on_350B_FineWeb.Edu.seed1
From: ibm-granite <huggingface.co/ibm-granite>Subject: GneissWeb.7B_ablation_model_on_350B_FineWeb.Edu.seed2
From: ibm-granite <huggingface.co/ibm-granite>Subject: GneissWeb.7B_ablation_model_on_350B_FineWeb.Edu.seed3
From: ibm-granite <huggingface.co/ibm-granite>Subject: GneissWeb.7B_ablation_model_on_350B_FineWeb.seed1
From: ibm-granite <huggingface.co/ibm-granite>Subject: GneissWeb.7B_ablation_model_on_350B_FineWeb.seed2
From: ibm-granite <huggingface.co/ibm-granite>Subject: GneissWeb.7B_ablation_model_on_350B_FineWeb.seed3