turintech/gemma-4-E4B-it-Artemis-GGUF overview
Gemma 4 E4B Artemis GGUF Start here. Download gemma 4 E4B it Artemis Q4 0.gguf 4.22 GB . 98.4% same next tokens as BF16; the smaller variants drift more during…
Runs locally from ~3.31 GB disk (4 GB VRAM class GPUs with llama.cpp / guIDE).
Repository Files & Downloads
| File | Type | Quantization | Size | Link |
|---|---|---|---|---|
| gemma-4-E4B-it-Artemis-3.6GB.gguf | GGUF | GGUF | 3.31 GB | Download |
| gemma-4-E4B-it-Artemis-3.8GB.gguf | GGUF | GGUF | 3.58 GB | Download |
| gemma-4-E4B-it-Artemis-4.2GB.gguf | GGUF | GGUF | 3.93 GB | Download |
| gemma-4-E4B-it-Artemis-IQ3_M.gguf | GGUF | IQ3_M | 3.58 GB | Download |
| gemma-4-E4B-it-Artemis-Q3_K_M.gguf | GGUF | Q3_K_M | 3.31 GB | Download |
| gemma-4-E4B-it-Artemis-Q4_0.gguf | GGUF | Q4_0 | 3.93 GB | Download |
Model Details
| Model ID | turintech/gemma-4-E4B-it-Artemis-GGUF |
|---|---|
| Author | turintech |
| Pipeline | text-generation |
| License | apache-2.0 |
| Base model | google/gemma-4-E4B-it-qat-q4_0-unquantized |
| Last modified | 2026-10-15T22:46:27.000Z |
Model README
---
license: apache-2.0
license_link: https://ai.google.dev/gemma/docs/gemma_4_license
base_model: google/gemma-4-E4B-it-qat-q4_0-unquantized
base_model_relation: quantized
library_name: gguf
pipeline_tag: text-generation
tags:
- gemma
- gguf
- llama.cpp
---
Gemma 4 E4B Artemis GGUF
Start here. Download gemma-4-E4B-it-Artemis-Q4_0.gguf (4.22 GB). 98.4% same next tokens as BF16; the smaller variants drift more during longer answers. Text only. Details.
<!-- chart:start -->
Next-token agreement with BF16 on 640 scored positions, measured on an AMD Ryzen 9 9950X CPU with llama.cpp 0504396. BF16 agrees with itself by definition. Token agreement is not task accuracy; smaller variants drift more in longer continuations. No bartowski result is reported. The unconfirmed-checkpoint row and aggregate range of six files are omitted from the plot; all results remain in the comparison table.
<!-- chart:end -->
Earlier file names still work for now; new downloads should use the names below. Use the exact filename or the :Q4_0 tag; without a tag, apps may pick a different file.
llama-server -hf turintech/gemma-4-E4B-it-Artemis-GGUF:Q4_0 --port 8080 -c 8192 --jinja
<div>
<a href="https://turintech.ai"><img src="https://huggingface.co/turintech/gemma-4-E4B-it-Artemis-GGUF/resolve/main/assets/turintech-logo.png" width="180" alt="TurinTech"></a>
<p style="margin: 4px 0;"><em>TurinTech models, built with Artemis</em></p>
</div>
Gemma 4 E4B is Google's small instruction model for chat, reasoning and tool use, built
for laptops and phones. These files are made from Google's quantisation-aware (QAT) checkpoint
(google/gemma-4-E4B-it-qat-q4_0-unquantized),
which Google trained to hold up well at low precision. Text only.
This is an independent TurinTech conversion, not affiliated with or endorsed by Google. The files are standard GGUF
and run on stock llama.cpp. Changes from the original: the weights are converted to GGUF and quantized for
llama.cpp. See NOTICE.
Why use this file
- Run locally so inputs can stay on the same machine.
- Work offline after downloading the model and runtime.
- Use for local chat, summaries and code assistance.
- Plan a local setup with the default file's measured 3.3 GiB peak GPU memory; hardware and settings are listed below.
Files
| Variant | Size | Saved | Next token | First 32 | Acc. Δ | Choose for |
| --- | --- | --- | --- | --- | --- | --- |
| BF16 original (QAT) | 14.9 GB | | 100.0% | reference | reference | |
| Q4_0 | 4.22 GB | 72% | 98.4% | 93.9% | +0.3 | Default. |
| IQ3_M | 3.84 GB | 74% | 94.7% | 85.6% | 0.0 | Under 4 GB. |
| Q3_K_M | 3.56 GB | 76% | 93.6% | 65.2% | +1.6 | Smallest. |
"Saved" is the file-size reduction versus the BF16 original. "Acc. Δ" is the accuracy change in percentage points; the other columns are defined below. Variant links download the exact GGUF; full filenames are in the commands and checksums. File labels are size classes, explained under "File names, sizes and SHA-256 checksums" at the end of the card.
Q4_0: Default. Closest to the original among our files.
Q3_K_M: Smallest. Answers hold up; longer text drifts from the original sooner.
"Same next token" is how often a file predicts the same next token as the original. "Matching tokens (first 32)" is the
share of the first 32 generated tokens that match the original's token at the same position (greedy decoding,
averaged over 50 prompts). "Task
accuracy change" is the difference in accuracy against the original on 310 task items, in points. This small sample does not establish equivalence. KL (in the test table) measures how far a file's next-token probabilities are from
the original's; lower is closer.
Run it
llama-server -m gemma-4-E4B-it-Artemis-Q4_0.gguf --port 8080 -c 8192 --jinja
Tested on an Apple M3 Max (36 GB) with llama.cpp Metal (b11617): loads and answers with the command above; about 45 tokens/s generation with the Q4_0 file.
curl http://localhost:8080/v1/chat/completions -H 'Content-Type: application/json' -d '{
"messages": [{"role": "user", "content": "In two sentences, why is the sky blue?"}],
"max_tokens": 1500
}'
-c 8192 sets an 8,192-token context; --jinja uses the chat template stored in the file. The template turns on
thinking by default, so allow enough output tokens (about 1,500) or turn thinking off in the request.
# a smaller file: download it, then the same command
hf download turintech/gemma-4-E4B-it-Artemis-GGUF gemma-4-E4B-it-Artemis-IQ3_M.gguf --local-dir .
llama-server -m gemma-4-E4B-it-Artemis-IQ3_M.gguf --port 8080 -c 8192 --jinja
Questions, problems or a model to consider for a smaller version? Reply in our feedback thread.
Run it with Ollama
The same files are packaged on Ollama with the Gemma 4 renderer and parser:
ollama run turintech/gemma-4-e4b-it-artemis:4.2gb
Ollama tags are named by size: 4.2gb (the default, also latest) is the Q4_0 file, 3.8gb is IQ3_M and 3.6gb is Q3_K_M. Each tag holds the same file, with the same SHA-256, as this repository. To import the GGUF locally instead, use Ollama's local import with the exact default file:
hf download turintech/gemma-4-E4B-it-Artemis-GGUF gemma-4-E4B-it-Artemis-Q4_0.gguf --local-dir .
printf 'FROM ./gemma-4-E4B-it-Artemis-Q4_0.gguf\nPARAMETER num_ctx 8192\n' > Modelfile
ollama create gemma-4-e4b-it-artemis -f Modelfile
ollama run gemma-4-e4b-it-artemis
This recipe follows Ollama's GGUF import instructions. It sets an 8,192-token context. The quality results on this card were measured with llama.cpp; importing the file into Ollama does not establish equivalent results or compatibility with every Ollama version.
<details>
<summary>Evaluation details and limitations</summary>
How it was tested
Recommendation notes
Download gemma-4-E4B-it-Artemis-Q4_0.gguf (4.22 GB) and run it with llama.cpp's chat server, as in
Run it. It predicts the same next token as the original 98.4% of the time and tests about the same as
Unsloth's UD-Q4_K_XL of the same size. To stay under 4 GB take IQ3_M (94.7%, no change on our 310-item task
sample). Q3_K_M is the smallest, and its longer answers drift from the original sooner. Text only.
These files are conversions of Google's quantization-aware Gemma checkpoint. Google also publishes its own Q4_0 GGUF of it (google/gemma-4-E4B-it-qat-q4_0-gguf), which is not in the comparisons below. Compare the measured results below with the named public alternatives when choosing a file.
The recommended Q4_0 file is a plain Q4_0 conversion: every weight tensor is Q4_0, the same per-tensor layout as Unsloth's UD-Q4_K_XL of this checkpoint. The two smaller files keep those Q4_0 tensors and store the per-layer embedding table at lower precision (Q3_K or Q2_K); their labels are size classes, explained in the file names table at the end.
Use the exact filename or the :Q4_0 tag in the commands above; without a tag, an automatic download may select a different file.
Size and quality trade-offs
Google's Gemma 4 E4B is 14.9 GB at full precision (BF16). The files here
are 3.6 to 4.2 GB, 72 to 76% smaller. The Artemis Q4_0 file is the closest of the three: it predicts the same next token
98.4% of the time, and 93.9% of the first 32 tokens it writes match the original's. Under 4 GB, the Artemis IQ3_M file
still predicts the same next token 94.7% of the time and scores the same on a 310-item task sample (0.0 points;
this small sample does not establish equivalence), while the public files we tested below 4 GB predict a different
next token 27 to 74% of the time and lose 7 to 40 points on the same tasks.
At 4.2 GB the main public alternative is Unsloth's UD-Q4_K_XL; the two test about the same (tables below).
Every file, ours and public, was compared with the BF16 conversion of the same QAT original at identical llama.cpp
settings (context 8192, flash attention on, F16 KV cache, greedy decoding, thinking off), on:
- KL divergence and next-token agreement over 640 positions (20 fixed documents, 32 scored positions each),
- greedy 32-token continuations on 50 prompts (10 each of code repair, maths, chat, multilingual and report excerpts),
- a 310-item task sample from ARC-Challenge, WinoGrande, HellaSwag, MMLU-Pro, GSM8K, BFCL and IFEval (64 ARC-Challenge, 64 WinoGrande, 64 HellaSwag, 70 MMLU-Pro, 16 GSM8K, 16 BFCL, 16 IFEval).
This is a sample for comparing files, not a benchmark score.
| File | Size | KL | Same next token | Matching tokens (first 32) | Task accuracy change |
|---|---|---|---|---|---|
| Unsloth UD-Q4_K_XL (QAT) | 4.22 GB | .0014 | 98.8% | 90.2% | -0.6 |
| Artemis Q4_0 | 4.22 GB | .0014 | 98.4% | 93.9% | +0.3 |
| TheStageAI M | 4.03 GB | .140 | 83.6% | 38.9% | -1.3 |
| mradermacher i1-IQ3_XXS | 3.98 GB | .354 | 73.1% | 28.3% | -6.8 |
| Artemis IQ3_M | 3.84 GB | .017 | 94.7% | 85.6% | 0.0 |
| mradermacher i1-IQ1_S to IQ2_M (6 files) | 3.29 to 3.79 GB | .74 to 3.41 | 26.1 to 62.5% | 2.2 to 20.7% | -20.0 to -39.7 |
| Artemis Q3_K_M | 3.56 GB | .038 | 93.6% | 65.2% | +1.6 |
| Unsloth UD-Q2_K_XL (source checkpoint not confirmed, so not like for like) | 3.22 GB | 1.05 | 59.1% | 24.4% | -16.8 |
Public files: unsloth/gemma-4-E4B-it-qat-GGUF revision 8c5a9e4, TheStageAI/gemma-4-E4B-it-qat-GGUF revision 5639e0e,
mradermacher/gemma-4-E4B-it-qat-q4_0-unquantized-i1-GGUF revision 4dd100a. Measured with llama.cpp 0504396 on an AMD
Ryzen 9 9950X, CPU only (8 threads). Every row comes from the same
machine. The sections below were measured later on newer llama.cpp builds, named in each.
</details>
<details>
<summary>Results on other hardware</summary>
Same files on other hardware
A second check on GPU with the latest llama.cpp release (v0.6.0, default CUDA build) on an NVIDIA RTX 5090: KL and
same-next-token against the BF16 original on 51,200 positions of WikiText-2, all layers on the GPU. A different text
from the tests above, so compare rows within this table only.
| File | Size | KL to the original | Same next token |
|---|---|---|---|
| Unsloth UD-Q4_K_XL | 4.22 GB | .0013 | 98.6% |
| Artemis Q4_0 | 4.22 GB | .0012 | 98.5% |
| mradermacher i1-IQ3_XXS | 3.98 GB | .365 | 73.4% |
| Artemis IQ3_M | 3.84 GB | .0072 | 96.5% |
| Artemis Q3_K_M | 3.56 GB | .022 | 93.6% |
All files loaded and answered normally in llama-server.
</details>
Memory
Peak memory of llama-server with the command above (--port 8080 -c 8192 --jinja) answering 10 short chat prompts,
llama.cpp b11574 on an NVIDIA A100 80 GB and its host.
| File | All layers on the GPU: GPU memory | System memory | CPU only: system memory |
|---|---|---|---|
| gemma-4-E4B-it-Artemis-Q4_0 | 3.3 GiB | 4.4 GiB | 5.1 GiB |
| gemma-4-E4B-it-Artemis-IQ3_M | 3.3 GiB | 4.0 GiB | 4.6 GiB |
| gemma-4-E4B-it-Artemis-Q3_K_M | 3.3 GiB | 3.8 GiB | 4.3 GiB |
llama.cpp keeps part of this model in system memory even with every layer on the GPU, so GPU memory is the same for
all three files and the difference shows in system memory.
<details>
<summary>File names, sizes and SHA-256 checksums</summary>
File names
File names end in a standard llama.cpp quant label, so llama.cpp, Ollama and LM Studio can pick a file by tag. The Q4_0 file is a plain Q4_0 conversion: every weight tensor is Q4_0. The other two files keep the Q4_0 tensors and store the per-layer embedding table at lower precision, so their labels are size classes: the smallest standard llama.cpp quant whose typical bits per weight are at least the file's. The general.file_type field inside every file reads Q4_0.
| File | Earlier name | Bits per weight | Main tensor types (share of bytes) |
|---|---|---|---|
| gemma-4-E4B-it-Artemis-Q4_0.gguf | gemma-4-E4B-it-Artemis-4.2GB.gguf | 4.50 | Q4_0 100% |
| gemma-4-E4B-it-Artemis-IQ3_M.gguf | gemma-4-E4B-it-Artemis-3.8GB.gguf | 4.10 | Q4_0 68%, Q3_K 32% |
| gemma-4-E4B-it-Artemis-Q3_K_M.gguf | gemma-4-E4B-it-Artemis-3.6GB.gguf | 3.79 | Q4_0 74%, Q2_K 26% |
The earlier names still download the same bytes, with the same checksums, for a transition period.
File checksums
| File | Bytes | sha256 |
|---|---|---|
| gemma-4-E4B-it-Artemis-Q4_0.gguf | 4,215,695,712 | 1d23b7340a5828d12c50ee60a9fd0662c6cf23117d4cd4f6a7e3ec1bfb503260 |
| gemma-4-E4B-it-Artemis-IQ3_M.gguf | 3,841,354,080 | 7d19112172d02bfe3edd711627bb988330e3fea8714c77362e2b77ae1634ac39 |
| gemma-4-E4B-it-Artemis-Q3_K_M.gguf | 3,555,092,832 | 182f4a4f29461620f7404b9eb25a03bd7fe9f91de49718662c9146c01c9d3547 |
</details>
Custom versions
We also make fine-tuned and further optimised versions on request: tuned on specific data, built for the target hardware
(CPU servers, laptops, Apple Silicon, edge devices), or compressed from a private model. Book a call with TurinTech.
Licence
Apache-2.0, the licence Google releases Gemma 4 under (Gemma 4 licence page); see LICENSE and
NOTICE.
When serving these files to others, for example through an API, an inference provider or OpenRouter, we'd
appreciate a mention of TurinTech (turintech.ai) as the source of the quantization.
These files keep improving.
Run turintech/gemma-4-E4B-it-Artemis-GGUF with guIDE
Download guIDE — the AI-native code editor with local LLM inference and 69 built-in tools.
Source: Hugging Face · Compare models