> For the complete documentation index, see [llms.txt](https://unsloth.ai/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://unsloth.ai/docs/de/modelle/gemma-4/qat.md).

# Gemma 4 QAT

Gemma 4 QAT (Quantization-Aware Training) ist Google DeepMinds neues [Gemma 4](/docs/de/modelle/gemma-4.md) Varianten, die entwickelt wurden, um **den Speicherbedarf zu reduzieren und gleichzeitig die Modellqualität zu erhalten**. Dadurch ist es möglich, größere Modelle auszuführen, wie zum Beispiel **Gemma 4 26B-A4B**, lokal auf Consumer-GPUs mit nur **16GB RAM**.

Gemma 4 QAT wird mit Blick auf Quantisierung trainiert, wodurch das 4-Bit-Format etwa**72 % geringeren Speicherverbrauch** mit **nahezu ursprünglicher Leistung**. Außerdem werden 2 spezielle Mobile-Quants für E2B und E4B bereitgestellt, die eine Mischung aus Quantisierungsbreiten verwenden.

Umwandeln in `Q4_0` aus QAT ergibt naiv nur 70,2 % Top-1-%-Genauigkeit für 26B-A4B. [Wir haben unsere Unsloth-Dynamic-Methode angewendet](#qat-analysis) um es zu steigern auf **85,6 % (+15,6 %), während es gleichzeitig** [**200 MB kleiner**](#usage-guide)!

Gemma 4 QAT umfasst: **E2B**, **E4B**, **12B, 26B-A4B**, und **31B.** Es sind multimodale Modelle mit Hybrid-Denken, die über 140 Sprachen und bis zu **256K Kontext unterstützen.**

{% columns %}
{% column %} <a href="/pages/5f03e50470f4e75e2f364ba071a97734e3604a69#run-gemma-4-qat-tutorials" class="button primary">Gemma 4 QAT ausführen</a><a href="/pages/5f03e50470f4e75e2f364ba071a97734e3604a69#qat-analysis" class="button secondary">QAT-Analyse</a>

**Gemma-4-E2B** QAT läuft mit 3 GB RAM, **E4B** mit 5 G&#x42;**, 12B** mit 7 G&#x42;**, 26-A4B** mit 15 GB und **31B** mit 18 G&#x42;**.**

Wir bezeichnen unsere Gemma-4-QAT-GGUFs als `UD-Q4_K_XL` da wir festgestellt haben, dass q4\_0 die Genauigkeit verschlechtert, obwohl es größer ist. Siehe unsere [Gemma 4 QAT GGUFs](https://huggingface.co/collections/unsloth/gemma-4-qat).

Zum Vergleich `int4` Quantisierung; siehe unten die Größenunterschiede zwischen Original und QAT. QAT verwendet etwa 72 % weniger Speicher und behält dabei fast seine gesamte ursprüngliche Genauigkeit bei:
{% endcolumn %}

{% column %}

<div data-with-frame="true"><figure><img src="/files/472ad902bfe272af61f347e2fc47382a07921899" alt="" width="563"><figcaption><p>Visualisierung der Funktionsweise von Gemma 4 Mobile QAT.</p></figcaption></figure></div>
{% endcolumn %}
{% endcolumns %}

| Gemma 4     | QAT (int4) GGUF | Original BF16 | Prozentuale Änderung |
| ----------- | --------------: | ------------: | -------------------: |
| **E2B**     |         2,62 GB |       9,31 GB |               71.86% |
| **E4B**     |         4,22 GB |       15,1 GB |               72.05% |
| **12B**     |         6,72 GB |       23,8 GB |               71.76% |
| **26B A4B** |         14,2 GB |       50,5 GB |               71.88% |
| **31B**     |         17,3 GB |       61,4 GB |               71.82% |

### Anleitung

Gemma-4-QAT-Varianten für E2B und E4B sind für Smartphones und Laptops konzipiert, während die größeren 26B-A4B und 31B QAT Modelle jetzt auf Laptops funktionieren und nicht nur auf leistungsstarken Heim-GPUs.

Es gibt **nur eine GGUF-Datei** für jedes Gemma-4-Modell, da wir festgestellt haben, dass Genauigkeiten höher als die hochgeladene `UD-Q4_K_XL` Version die Genauigkeit verschlechtern, statt sie zu verbessern. Verwenden Sie die ursprünglichen nicht-QAT-Q4\_0-Quants [hier](https://huggingface.co/collections/unsloth/gemma-4).

<figure><img src="/files/bfb339d087886257480dcec95f0fb952c42578ea" alt="" width="563"><figcaption></figcaption></figure>

### Hardwareanforderungen

**Tabelle: Empfohlene Hardwareanforderungen für Gemma 4 QAT Inference GGUF** (Einheiten = Gesamtspeicher: RAM + VRAM oder Unified Memory).

| Gemma 4 QAT     | Anforderungen |
| --------------- | ------------: |
| **E2B** QAT     |          3 GB |
| **E4B** QAT     |          5 GB |
| **12B** QAT     |          7 GB |
| **26B A4B** QAT |         15 GB |
| **31B** QAT     |         18 GB |

### Empfohlene Einstellungen

Die QAT-Checkpoints verwenden dieselben empfohlenen Gemma-4-Einstellungen:

* `temperature = 1.0`
* `top_p = 0.95`
* `top_k = 64`

{% hint style="info" %}
Gemma 4s maximales Kontextfenster beträgt **128K** für **E2B**, **E4B** und **256K** für **12B**, **26B A4B**, **31B**.
{% endhint %}

## QAT-Analyse

Wir haben festgestellt, dass die naive Umwandlung des QAT-Q4\_0-Checkpoints in das Q4\_0-Format in der llama.cpp-Welt die Genauigkeit tatsächlich verschlechterte und nicht wirklich mit dem BF16-QAT-Lattice für Q4\_0 übereinstimmte. Wir haben unsere Unsloth-Dynamic-Methode angewendet, um eine bessere Übereinstimmung zwischen dem mit llama.cpp kompatiblen Q4\_0-Format und dem echten BF16-QAT-Q4\_0-Format zu erzwingen, und es geschafft, die Quants sowohl kleiner zu machen (Q6\_K wurde für Embeddings nicht benötigt) als auch genauer!

<figure><img src="/files/bfb68aa2a72aaed438a2b4aef7997008d9783909" alt=""><figcaption></figcaption></figure>

Unten ist eine Tabelle mit KLD, Top-1-%-Genauigkeit und Speicherplatz. Sie können sehen, dass unsere Versionen 99,9 % KLD und den mittleren KLD dramatisch verbessern. **E2B hat beispielsweise einen mittleren KLD von 0,00173 gegenüber 0,05109 (relativ 29-mal besser) bei einer naiven Q4\_0-Quantisierung, und unsere ist sogar 22 % kleiner!**

Das Hauptproblem ist, dass die Umwandlung von QAT BF16 in das Q4\_0-Format von llama.cpp nicht verlustfrei ist. llama.cpp verwendet F16-Skalierungen, während QAT BF16 BF16-Skalierungen verwendet, und die Skalierungen werden in der llama.cpp-Welt nicht optimal bestimmt.

Die naive Umwandlung erreicht 24,77 % Byte-Exaktheit gegenüber BF16-QAT, während wir festgestellt haben, dass wir sie mit einigen Tricks auf 99,96 % steigern können!

<table><thead><tr><th width="100">Modell</th><th>Methode</th><th>Speicher (GB)</th><th>99,9 % KLD</th><th>Mittlerer KLD</th><th width="77.5999755859375">Top-1-%</th></tr></thead><tbody><tr><td>E2B</td><td>Unsloth</td><td><strong>2.62</strong></td><td>0.0557</td><td>0.00173</td><td><strong>98.16</strong></td></tr><tr><td>E2B</td><td>Q4_0</td><td>3.35</td><td>1.0513</td><td>0.05109</td><td>89.29</td></tr><tr><td>E4B</td><td>Unsloth</td><td><strong>4.22</strong></td><td>0.0536</td><td>0.00121</td><td><strong>98.54</strong></td></tr><tr><td>E4B</td><td>Q4_0</td><td>5.15</td><td>0.6722</td><td>0.03778</td><td>90.94</td></tr><tr><td>26B</td><td>Unsloth</td><td><strong>14.25</strong></td><td>2.7087</td><td>0.09788</td><td><strong>85.63</strong></td></tr><tr><td>26B</td><td>Q4_0</td><td>14.44</td><td>4.5420</td><td>0.36094</td><td>70.20</td></tr><tr><td>31B</td><td>Unsloth</td><td><strong>17.29</strong></td><td>1.3659</td><td>0.01403</td><td><strong>96.67</strong></td></tr><tr><td>31B</td><td>Q4_0</td><td>17.65</td><td>3.0030</td><td>0.09349</td><td>87.91</td></tr><tr><td>12B</td><td>Unsloth</td><td><strong>6.72</strong></td><td>9.2740</td><td>0.13288</td><td><strong>88.76</strong></td></tr><tr><td>12B</td><td>Q4_0</td><td>6.98</td><td>14.7323</td><td>0.50702</td><td>74.08</td></tr></tbody></table>

## Mobile-Mixture-QAT

Das Gemma-4-Team hat außerdem spezielle mobile Mixture-QAT-Versionen von Gemma-4-E2B-it und Gemma-4-E4B-it veröffentlicht. Wir haben sie ebenfalls treu in ein mit llama.cpp kompatibles Format konvertiert und dabei fast die gesamte Genauigkeit wiederhergestellt. Wir verwendeten TQ2\_0 für die 2-Bit-Schichten und haben einen negativen Skalierer verwendet.

Wir haben UD-Q2\_K\_XL-Quants für sowohl E2B als auch E4B erstellt.

|                              | E2B mobil                | E4B mobil          |
| ---------------------------- | ------------------------ | ------------------ |
| Größe                        | 2,19 GB                  | 3,22 GB            |
| 2-Bit-(TQ2\_0)-Tensoren      | 61 (einschl. tiefem MLP) | 2 (nur Embeddings) |
| Mittlerer KLD gegenüber BF16 | 0.00409                  | 0.00102            |
| Top-1-%                      | 97.82%                   | 98.76%             |
| Basis-PPL                    | \~103                    | 42.4               |

Siehe [gemma-4-E2B-it-qat-GGUF](https://huggingface.co/unsloth/gemma-4-E2B-it-qat-GGUF) und [gemma-4-E4B-it-qat-GGUF](https://huggingface.co/unsloth/gemma-4-E4B-it-qat-GGUF) für `UD-Q2_K_XL`.

## Gemma-4-QAT-Tutorials ausführen

Da Gemma-4-GGUFs in mehreren Größen vorliegen, ist der empfohlene Ausgangspunkt für die kleinen Modelle 8-Bit und für die größeren Modelle **Dynamisches 4-Bit**. [Gemma 4 GGUFs](https://huggingface.co/collections/unsloth/gemma-4-qat):

| [E2B](https://huggingface.co/unsloth/gemma-4-E2B-it-qat-GGUF) | [E4B](https://huggingface.co/unsloth/gemma-4-E4B-it-qat-GGUF) | [12b](https://huggingface.co/unsloth/gemma-4-12b-it-qat-GGUF) | [26B-A4B](https://huggingface.co/unsloth/gemma-4-26B-A4B-it-qat-GGUF) | [31B](https://huggingface.co/unsloth/gemma-4-31B-it-qat-GGUF) |
| ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | --------------------------------------------------------------------- | ------------------------------------------------------------- |

<a href="/pages/5f03e50470f4e75e2f364ba071a97734e3604a69#unsloth-studio-guide" class="button primary">🦥 Unsloth Studio-Anleitung</a><a href="/pages/5f03e50470f4e75e2f364ba071a97734e3604a69#llama.cpp-guide" class="button primary">🦙 Llama.cpp-Anleitung</a>

{% columns %}
{% column %}
**Sie können Gemma 4 QAT kostenlos mit einer Benutzeroberfläche in unserem ausführen und trainieren** [**Unsloth Studio**](/docs/de/neu/studio.md)✨ **Notebook:**
{% endcolumn %}

{% column %}
{% embed url="<https://colab.research.google.com/github/unslothai/unsloth/blob/main/studio/Unsloth_Studio_Colab.ipynb>" %}
{% endcolumn %}
{% endcolumns %}

### 🦥 Unsloth Studio-Anleitung

Gemma 4 QAT kann jetzt ausgeführt und trainiert werden in [Unsloth Studio](/docs/de/neu/studio.md), unserer neuen Open-Source-Web-UI für lokale KI. Mit Unsloth Studio können Sie Modelle lokal ausführen auf **MacOS, Windows**, Linux und:

{% columns %}
{% column %}

* Suchen, herunterladen, [GGUFs ausführen](/docs/de/neu/studio.md#run-models-locally) und Safetensor-Modelle
* [**Selbstheilendes** Tool-Calling](/docs/de/neu/studio.md#execute-code--heal-tool-calling) + **Websuche**
* [**Code-Ausführung**](/docs/de/neu/studio.md#run-models-locally) (Python, Bash)
* [Automatische Inferenz](/docs/de/neu/studio.md#model-arena) Parameter-Tuning (Temp, Top-p usw.)
* Schnelle CPU- + GPU-Inferenz über llama.cpp
* [LLMs trainieren](/docs/de/neu/studio.md#no-code-training) 2x schneller mit 70 % weniger VRAM
  {% endcolumn %}

{% column %}

<div data-with-frame="true"><figure><img src="/files/25b89cbb431e29420702ee3c1e8f64e47233d588" alt=""><figcaption></figcaption></figure></div>
{% endcolumn %}
{% endcolumns %}

{% stepper %}
{% step %}

#### Unsloth installieren

Führen Sie im Terminal aus:

**macOS, Linux, WSL:**

```bash
curl -fsSL https://unsloth.ai/install.sh | sh
```

**Windows PowerShell:**

```bash
irm https://unsloth.ai/install.ps1 | iex
```

{% endstep %}

{% step %}

#### Unsloth starten

**macOS, Linux, WSL und Windows:**

```bash
unsloth studio -H 0.0.0.0 -p 8888
```

Öffnen Sie dann `http://127.0.0.1:8888` (oder Ihre spezifische URL) in Ihrem Browser.
{% endstep %}

{% step %}

#### Gemma 4 QAT suchen und herunterladen

Beim ersten Start müssen Sie ein Passwort erstellen, um Ihr Konto zu sichern, und sich erneut anmelden.

Gehen Sie dann zur [Unsloth Chat](/docs/de/neu/studio/chat.md) Registerkarte und suchen Sie in der Suchleiste nach Gemma 4 und laden Sie Ihr gewünschtes Modell und Ihren gewünschten Quant herunter.
{% endstep %}

{% step %}

#### Gemma 4 QAT ausführen

Die Inferenzparameter sollten bei der Verwendung von Unsloth Studio automatisch gesetzt werden, du kannst sie jedoch weiterhin manuell ändern. Du kannst außerdem die Kontextlänge, die Chat-Vorlage und andere Einstellungen bearbeiten.

Für weitere Informationen können Sie unseren [Unsloth-Studio-Inferenzleitfaden](/docs/de/neu/studio/chat.md).

<div data-with-frame="true"><figure><img src="/files/25b89cbb431e29420702ee3c1e8f64e47233d588" alt="" width="563"><figcaption></figcaption></figure></div>
{% endstep %}
{% endstepper %}

### 🦙 Llama.cpp-Anleitung

Für diese Anleitung müssen Sie keinen Quantisierungstyp auswählen, da es nur einen gibt: `UD-Q4_K_XL`.  Siehe: [Gemma 4 QAT-Sammlung](https://huggingface.co/collections/unsloth/gemma-4-qat). Für diese Tutorials werden wir verwenden [llama.cpp](llama.cpphttps://github.com/ggml-org/llama.cpp) für schnelle lokale Inferenz, insbesondere wenn Sie eine CPU haben.

{% stepper %}
{% step %}
Hole dir das Neueste `llama.cpp` **auf** [**GitHub hier**](https://github.com/ggml-org/llama.cpp). Sie können auch den folgenden Build-Anweisungen folgen. Ändern Sie `-DGGML_CUDA=ON` zu `-DGGML_CUDA=OFF` wenn Sie keine GPU haben oder nur CPU-Inferenz möchten. **Für Apple-Mac-/Metal-Geräte**, setzen Sie `-DGGML_CUDA=OFF` und fahren Sie dann wie gewohnt fort - Metal-Unterstützung ist standardmäßig aktiviert.

```bash
apt-get update
apt-get install pciutils build-essential cmake curl libcurl4-openssl-dev -y
git clone https://github.com/ggml-org/llama.cpp
cmake llama.cpp -B llama.cpp/build \\
    -DBUILD_SHARED_LIBS=OFF -DGGML_CUDA=ON
cmake --build llama.cpp/build --config Release -j --clean-first --target llama-cli llama-mtmd-cli llama-server llama-gguf-split
cp llama.cpp/build/bin/llama-* llama.cpp
```

{% endstep %}

{% step %}
Wenn Sie `llama.cpp` direkt zum Laden von Modellen können Sie die folgenden Befehle entsprechend jedem Modell befolgen. `UD-Q4_K_XL` ist der EINZIGE Quantisierungstyp. Sie können auch über Hugging Face herunterladen (Schritt 3). Das ist ähnlich wie `ollama run` . Verwenden Sie `export LLAMA_CACHE="folder"` um zu erzwingen, dass `llama.cpp` um an einem bestimmten Ort zu speichern.

**26B-A4B:**

```bash
export LLAMA_CACHE="unsloth/gemma-4-26B-A4B-it-qat-GGUF"
./llama.cpp/llama-cli \\
    -hf unsloth/gemma-4-26B-A4B-it-qat-GGUF:UD-Q4_K_XL \\
    --temp 1.0 \\
    --top-p 0.95 \\
    --top-k 64
```

**31B:**

```bash
export LLAMA_CACHE="unsloth/gemma-4-31B-it-qat-GGUF"
./llama.cpp/llama-cli \\
    -hf unsloth/gemma-4-31B-it-qat-GGUF:UD-Q4_K_XL \\
    --temp 1.0 \\
    --top-p 0.95 \\
    --top-k 64
```

**E4B:**

```bash
export LLAMA_CACHE="unsloth/gemma-4-E4B-it-qat-GGUF"
./llama.cpp/llama-cli \\
    -hf unsloth/gemma-4-E4B-it-qat-GGUF:UD-Q4_K_XL \\
    --temp 1.0 \\
    --top-p 0.95 \\
    --top-k 64
```

**E2B:**

```bash
export LLAMA_CACHE="unsloth/gemma-4-E2B-it-GGUF"
./llama.cpp/llama-cli \\
    -hf unsloth/gemma-4-E2B-it-qat-GGUF:UD-Q4_K_XL \\
    --temp 1.0 \\
    --top-p 0.95 \\
    --top-k 64
```

{% endstep %}

{% step %}
Laden Sie das Modell über (nach der Installation von `pip install huggingface_hub hf_transfer` ). Sie können wählen `UD-Q4_K_XL` oder andere quantisierte Versionen wie `Q8_0` . Wenn Downloads hängen bleiben, siehe: [Hugging Face Hub, XET-Debugging](/docs/de/grundlagen/troubleshooting-and-faqs/hugging-face-hub-xet-debugging.md)

```bash
hf download unsloth/gemma-4-26B-A4B-it-qat-GGUF \\
    --local-dir unsloth/gemma-4-26B-A4B-it-qat-GGUF \\
    --include "*mmproj-BF16*" \\
    --include "*UD-Q4_K_XL*" # Verwenden Sie "*UD-Q2_K_XL*" für dynamische 2-Bit
```

{% endstep %}

{% step %}
Führen Sie dann das Modell im Konversationsmodus aus (mit Vision `mmproj-F16`):

{% code overflow="wrap" %}

```bash
./llama.cpp/llama-cli \\
    --model unsloth/gemma-4-26B-A4B-it-qat-GGUF/gemma-4-26B-A4B-it-qat-UD-Q4_K_XL.gguf \\
    --mmproj unsloth/gemma-4-26B-A4B-it-qat-GGUF/mmproj-BF16.gguf \\
    --temp 1.0 \\
    --top-p 0.95 \\
    --top-k 64
```

{% endcode %}
{% endstep %}

{% step %}

### Bereitstellung von Llama-Server

Um Gemma-4 auf llama-server bereitzustellen, verwenden Sie:

```bash
./llama.cpp/llama-server \\
    --model unsloth/gemma-4-26B-A4B-it-qat-GGUF/gemma-4-26B-A4B-it-qat-UD-Q4_K_XL.gguf \\
    --mmproj unsloth/gemma-4-26B-A4B-it-qat-GGUF/mmproj-BF16.gguf \\
    --temp 1.0 \\
    --top-p 0.95 \\
    --top-k 64 \\
    --alias "unsloth/gemma-4-26B-A4B-it-qat-GGUF" \\
    --port 8001 \\
    --chat-template-kwargs '{"enable_thinking":true}'
```

{% hint style="warning" %}
Um [Den Denk-/Reasoning-Modus deaktivieren](#how-to-enable-or-disable-reasoning-and-thinking), verwenden Sie `--chat-template-kwargs '{"enable_thinking":false}'`

Wenn Sie auf **Windows** Powershell sind, verwenden Sie: `--chat-template-kwargs "{\"enable_thinking\":false}"`

Verwenden Sie 'true' und 'false' austauschbar.
{% endhint %}
{% endstep %}
{% endstepper %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://unsloth.ai/docs/de/modelle/gemma-4/qat.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
