> 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/tutorials/deepseek-v3.1-how-to-run-locally.md).

# DeepSeek-V3.1: Wie man lokal ausführt

Ein Leitfaden, wie du DeepSeek-V3.1 und Terminus auf deinem eigenen lokalen Gerät ausführst!

DeepSeeks V3.1 und **Terminus** Das Update führt hybride Reasoning-Inferenz ein und kombiniert „think“ und „non-think“ in einem Modell. Das vollständige Modell mit 671 Mrd. Parametern benötigt 715 GB Festplattenspeicher. Die quantisierte dynamische 2-Bit-Version benötigt 245 GB (-75 % Größenreduktion). GGUF: [**DeepSeek-V3.1-GGUF**](https://huggingface.co/unsloth/DeepSeek-V3.1-GGUF)

{% hint style="success" %}
**NEU:** DeepSeek-V3.1-Terminus jetzt verfügbar: [DeepSeek-V3.1-Terminus-GGUF](https://huggingface.co/unsloth/DeepSeek-V3.1-Terminus-GGUF)\
\
[**Aktualisierung vom 10. September 2025:**](/docs/de/grundlagen/dynamic-3.0-ggufs/unsloth-dynamic-ggufs-on-aider-polyglot.md) Ihr habt nach härteren Benchmarks gefragt, also zeigen wir die Aider-Polyglot-Ergebnisse! Unser dynamisches 3-Bit DeepSeek V3.1 GGUF erzielt **75.6%**, und übertrifft damit viele vollständige SOTA-LLMs. [Mehr lesen.](/docs/de/grundlagen/dynamic-3.0-ggufs/unsloth-dynamic-ggufs-on-aider-polyglot.md)

Unsere DeepSeek-V3.1-GGUFs enthalten Unsloth [Chat-Template-Fixes](#chat-template-bug-fixes) für von llama.cpp unterstützte Backends.
{% endhint %}

Alle Uploads verwenden Unsloth [Dynamic 2.0](/docs/de/grundlagen/dynamic-3.0-ggufs.md) für SOTA-5-Shot-MMLU- und KL-Divergenz-Leistung, sodass Sie quantisierte DeepSeek-LLMs mit minimalem Genauigkeitsverlust ausführen und feinabstimmen können.

**Tutorial-Navigation:**

<a href="#run-in-llama.cpp" class="button secondary">In llama.cpp ausführen</a><a href="#run-in-ollama-open-webui" class="button secondary">In Ollama/Open WebUI ausführen</a>

## :gear: Empfohlene Einstellungen

Die 1-Bit-dynamische Quantisierung TQ1\_0 (1 Bit für unwichtige MoE-Schichten, 2–4 Bit für wichtige MoE-Schichten und 6–8 Bit für den Rest) benötigt 170 GB Festplattenspeicher – das funktioniert gut in einem **1x24GB-Karte und 128GB RAM** mit MoE-Auslagerung – es funktioniert auch **nativ in Ollama**!

{% hint style="info" %}
Sie müssen `--jinja` für llama.cpp-Quants verwenden – das nutzt unsere [festen Chat-Vorlagen](#chat-template-bug-fixes) und aktiviert die richtige Vorlage! Sie könnten falsche Ergebnisse erhalten, wenn Sie `--jinja`
{% endhint %}

Die 2-Bit-Quants passen auf eine 1x 24-GB-GPU (wobei die MoE-Schichten in den RAM ausgelagert werden). Erwarten Sie mit diesem Setup etwa 5 Token/s, wenn Sie zusätzlich 128 GB RAM haben. Es wird empfohlen, mindestens 226 GB RAM zu haben, um diese 2-Bit-Version auszuführen. Für optimale Leistung benötigen Sie mindestens 226 GB Unified Memory oder 226 GB kombinierten RAM+VRAM für 5+ Token/s. Um zu erfahren, wie Sie die Generierungsgeschwindigkeit erhöhen und längere Kontexte unterbringen können, [lesen Sie hier](#improving-generation-speed).

{% hint style="success" %}
Obwohl nicht zwingend erforderlich, erzielen Sie die beste Leistung, wenn Ihr VRAM + RAM zusammen der Größe der Quantisierung entspricht, die Sie herunterladen. Falls nicht, funktioniert Auslagerung auf Festplatte/SSD mit llama.cpp; nur die Inferenz wird langsamer sein.
{% endhint %}

## :butterfly:Fehlerbehebungen am Chat-Template

Wir haben einige Probleme mit dem Chat-Template von DeepSeek V3.1 behoben, da es in llama.cpp und anderen Engines nicht korrekt funktionierte:

1. DeepSeek V3.1 ist ein hybrides Reasoning-Modell, das heißt, Sie können das Chat-Template ändern, um Reasoning zu aktivieren. Das eingeführte Chat-Template `thinking = True` , aber andere Modelle verwenden `enable_thinking = True` . Wir haben die Option hinzugefügt, stattdessen `enable_thinking` als Schlüsselwort zu verwenden.
2. llama.cpps Jinja-Renderer über [minja](https://github.com/google/minja) erlaubt die Verwendung zusätzlicher Argumente im `.split()` Befehl nicht, daher funktioniert die Verwendung von `.split(text, 1)` in Python, aber nicht in minja. Wir mussten das ändern, damit llama.cpp korrekt funktioniert, ohne Fehler auszugeben.\n\nSie erhalten den folgenden Fehler bei der Verwendung anderer Quants:\
   `terminate called after throwing an instance of 'std::runtime_error' what(): Die split-Methode muss zwischen 1 und 1 Positionsargumente und zwischen 0 und 0 Keyword-Argumente haben bei Zeile 3, Spalte 1908` Wir haben es in all unseren Quants behoben!

### 🐳Offizielle empfohlene Einstellungen

Laut [DeepSeek](https://huggingface.co/deepseek-ai/DeepSeek-V3.1)sind dies die empfohlenen Einstellungen für die V3.1-Inferenz:

* Stellen Sie <mark style="background-color:green;">**Temperatur 0,6**</mark> ein, um Wiederholungen und Inkohärenz zu reduzieren.
* Setzen Sie <mark style="background-color:green;">**top\_p auf 0,95**</mark> (empfohlen)
* **128K Kontextlänge** oder weniger
* Verwenden Sie `--jinja` für llama.cpp-Varianten – wir **haben auch einige Probleme mit Chat-Vorlagen behoben!**
* **Verwenden Sie** `enable_thinking = True` um den Reasoning-/Denken-Modus zu verwenden. Standardmäßig ist es auf Nicht-Reasoning gesetzt.

#### :1234: Chat-Template-/Prompt-Format

Sie müssen nicht erzwingen `<think>\n` , aber Sie können es trotzdem hinzufügen! Mit dem angegebenen Präfix erzeugt DeepSeek V3.1 Antworten auf Anfragen im Nicht-Denken-Modus. Im Gegensatz zu DeepSeek V3 führt es ein zusätzliches Token ein `</think>`.

```
<｜begin▁of▁sentence｜>{system prompt}<｜User｜>{query}<｜Assistant｜></think>
```

Ein BOS wird zwangsweise hinzugefügt, und ein EOS trennt jede Interaktion. Um doppelte BOS-Tokens während der Inferenz zu vermeiden, sollten Sie nur aufrufen `tokenizer.encode(..., add_special_tokens = False)` da das Chat-Template auch automatisch ein BOS-Token hinzufügt. Für llama.cpp / GGUF-Inferenz sollten Sie das BOS überspringen, da es automatisch hinzugefügt wird.

#### :notebook\_with\_decorative\_cover: Nicht-Denken-Modus (verwende `thinking = False`oder `enable_thinking = False` und ist standardmäßig)

**Erster Durchgang**

Präfix: `<｜begin▁of▁sentence｜>{system prompt}<｜User｜>{query}<｜Assistant｜></think>`

Mit dem angegebenen Präfix erzeugt DeepSeek V3.1 Antworten auf Anfragen im Nicht-Denken-Modus. Im Gegensatz zu DeepSeek V3 führt es ein zusätzliches Token ein `</think>`.

**Mehrturn**

Kontext: `<｜begin▁of▁sentence｜>{system prompt}<｜User｜>{query}<｜Assistant｜></think>{response}<｜end▁of▁sentence｜>...<｜User｜>{query}<｜Assistant｜></think>{response}<｜end▁of▁sentence｜>`

Präfix: `<｜User｜>{query}<｜Assistant｜></think>`

Durch die Verkettung von Kontext und Präfix erhalten wir den korrekten Prompt für die Anfrage.

#### :books: Denken-Modus (verwende `thinking = True`oder `enable_thinking = True` und ist standardmäßig)

**Erster Durchgang**

Präfix: `<｜begin▁of▁sentence｜>{system prompt}<｜User｜>{query}<｜Assistant｜><think>`

Das Präfix des Denk-Modus ähnelt DeepSeek-R1.

**Mehrturn**

Kontext: `<｜begin▁of▁sentence｜>{system prompt}<｜User｜>{query}<｜Assistant｜></think>{response}<｜end▁of▁sentence｜>...<｜User｜>{query}<｜Assistant｜></think>{response}<｜end▁of▁sentence｜>`

Präfix: `<｜User｜>{query}<｜Assistant｜><think>`

Das Mehrturn-Template ist dasselbe wie das Nicht-Denken-Mehrturn-Chat-Template. Das bedeutet, dass das Thinking-Token in der letzten Runde entfernt wird, aber das `</think>` in jeder Runde des Kontexts beibehalten wird.

#### :bow\_and\_arrow: Tool-Aufruf

Tool-Aufrufe werden im Nicht-Denken-Modus unterstützt. Das Format ist:

`<｜begin▁of▁sentence｜>{system prompt}{tool_description}<｜User｜>{query}<｜Assistant｜></think>` wobei wir tool\_description im Bereich nach dem Systemprompt einfügen.

## :arrow\_forward:DeepSeek-V3.1-Tutorials ausführen:

### :llama: In Ollama/Open WebUI ausführen

{% stepper %}
{% step %}
Installieren `ollama` falls Sie es noch nicht getan haben! Um weitere Varianten des Modells auszuführen, [sehen Sie hier](#run-in-llama.cpp).

```bash
apt-get update
apt-get install pciutils -y
curl -fsSL https://ollama.com/install.sh | sh
```

{% endstep %}

{% step %}
Führen Sie das Modell aus! Beachten Sie, dass Sie `ollama serve`in einem anderen Terminal aufrufen können, falls es fehlschlägt! Wir enthalten alle unsere Korrekturen und empfohlenen Parameter (Temperatur usw.) in `params` in unserem Hugging-Face-Upload!\
**(NEU) Um das DeepSeek-V3.1-Modell in Ollama zu nutzen, können Sie unsere TQ1\_0 (170-GB-Quantisierung) verwenden:**

```bash
OLLAMA_MODELS=unsloth ollama serve &

OLLAMA_MODELS=unsloth ollama run hf.co/unsloth/DeepSeek-V3.1-Terminus-GGUF:TQ1_0
```

{% endstep %}

{% step %}
Um andere Quants auszuführen, müssen Sie zuerst die gesplitteten GGUF-Dateien zu einer einzigen zusammenführen, wie im folgenden Code. Danach müssen Sie das Modell lokal ausführen.

```bash
./llama.cpp/llama-gguf-split --merge \
  DeepSeek-V3.1-Terminus-GGUF/DeepSeek-V3.1-Terminus-UD-Q2_K_XL/DeepSeek-V3.1-Terminus-UD-Q2_K_XL-00001-of-00006.gguf \\
	merged_file.gguf
```

```bash
OLLAMA_MODELS=unsloth ollama serve &

OLLAMA_MODELS=unsloth ollama run merged_file.gguf
```

{% endstep %}

{% step %}
Open WebUI hat außerdem eine [Schritt-für-Schritt-Anleitung](https://docs.openwebui.com/tutorials/integrations/deepseekr1-dynamic/) zum Ausführen von R1 erstellt, und für V3.1 müssen Sie R1 nur durch die neue V3.1-Quantisierung ersetzen.
{% endstep %}
{% endstepper %}

### ✨ In llama.cpp ausführen

{% stepper %}
{% step %}
Holen Sie sich die neueste `llama.cpp` auf [hier auf GitHub](https://github.com/ggml-org/llama.cpp). Sie können auch die folgenden Build-Anweisungen befolgen. Ändern Sie `-DGGML_CUDA=ON` zu `-DGGML_CUDA=OFF` wenn Sie keine GPU haben oder nur CPU-Inferenz möchten.

```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 -DLLAMA_CURL=ON
cmake --build llama.cpp/build --config Release -j --clean-first --target llama-quantize llama-cli llama-gguf-split llama-mtmd-cli llama-server
cp llama.cpp/build/bin/llama-* llama.cpp
```

{% endstep %}

{% step %}
Wenn Sie `llama.cpp` direkt zum Laden von Modellen verwenden können, können Sie Folgendes tun: (:Q2\_K\_XL) ist der Quantisierungstyp. Sie können auch über Hugging Face herunterladen (Punkt 3). Dies ähnelt `ollama run` . Verwenden Sie `export LLAMA_CACHE="folder"` um zu erzwingen `llama.cpp` um an einem bestimmten Ort zu speichern. Denken Sie daran, dass das Modell nur eine maximale Kontextlänge von 128K hat.

{% hint style="success" %}
Bitte probieren Sie `-ot ".ffn_.*_exps.=CPU"` um alle MoE-Layer auf die CPU auszulagern! Dadurch können Sie effektiv alle Nicht-MoE-Layer auf 1 GPU unterbringen, was die Generierungsgeschwindigkeit verbessert. Sie können den Regex-Ausdruck anpassen, um mehr Layer unterzubringen, wenn Sie mehr GPU-Kapazität haben.

Wenn Sie etwas mehr GPU-Speicher haben, versuchen Sie `-ot ".ffn_(up|down)_exps.=CPU"` Dadurch werden Up- und Down-Projektions-MoE-Layer ausgelagert.

Versuchen Sie `-ot ".ffn_(up)_exps.=CPU"` wenn Sie noch mehr GPU-Speicher haben. Dadurch werden nur Up-Projektions-MoE-Layer ausgelagert.

Und schließlich alle Layer auslagern über `-ot ".ffn_.*_exps.=CPU"` Dies verwendet am wenigsten VRAM.

Sie können den Regex auch anpassen, zum Beispiel `-ot "\.(6|7|8|9|[0-9][0-9]|[0-9][0-9][0-9])\.ffn_(gate|up|down)_exps.=CPU"` bedeutet, Gate-, Up- und Down-MoE-Layer auszulagern, aber nur ab dem 6. Layer aufwärts.
{% endhint %}

```bash
export LLAMA_CACHE="unsloth/DeepSeek-V3.1-GGUF"
./llama.cpp/llama-cli \\
    -hf unsloth/DeepSeek-V3.1-Terminus-GGUF:UD-Q2_K_XL \\
    --jinja \
    --n-gpu-layers 99 \\
    --temp 0.6 \
    --top-p 0.95 \\
    --min-p 0.01 \\
    --ctx-size 16384 \\
    --seed 3407 \\
    -ot ".ffn_.*_exps.=CPU"
```

{% endstep %}

{% step %}
Lade das Modell über (nach der Installation von `pip install huggingface_hub hf_transfer` ). Sie können `UD-`Q2\_K\_XL (dynamische 2-Bit-Quantisierung) oder andere quantisierte Versionen wie `Q4_K_M` . Wir <mark style="background-color:green;">**empfehlen unsere dynamische 2,7-Bit-Quantisierung**</mark><mark style="background-color:green;">**&#x20;**</mark><mark style="background-color:green;">**`UD-Q2_K_XL`**</mark><mark style="background-color:green;">**&#x20;**</mark><mark style="background-color:green;">**zu verwenden, um Größe und Genauigkeit auszubalancieren**</mark>.

```python
# !pip install huggingface_hub hf_transfer
import os
os.environ["HF_HUB_ENABLE_HF_TRANSFER"] = "0" # Kann manchmal zu Rate-Limits führen, daher auf 0 setzen, um zu deaktivieren
from huggingface_hub import snapshot_download
snapshot_download(
    repo_id = "unsloth/DeepSeek-V3.1-Terminus-GGUF",
    local_dir = "unsloth/DeepSeek-V3.1-Terminus-GGUF",
    allow_patterns = ["*UD-Q2_K_XL*"], # Dynamische 2-Bit-Version. Verwende "*UD-TQ1_0*" für dynamische 1-Bit-Version
)
```

{% endstep %}

{% step %}
Du kannst `--threads 32` für die Anzahl der CPU-Threads, `--ctx-size 16384` für die Kontextlänge, `--n-gpu-layers 2` für GPU-Offloading auf wie viele Layer. Versuche, ihn anzupassen, wenn deiner GPU der Speicher ausgeht. Entferne ihn auch, wenn du nur CPU-Inferenz hast.

{% code overflow="wrap" %}

```bash
./llama.cpp/llama-cli \\
    --model unsloth/DeepSeek-V3.1-Terminus-GGUF/UD-Q2_K_XL/DeepSeek-V3.1-Terminus-UD-Q2_K_XL-00001-of-00006.gguf \\
    --jinja \
    --n-gpu-layers 99 \\
    --temp 0.6 \
    --top-p 0.95 \\
    --min-p 0.01 \\
    --ctx-size 16384 \\
    --seed 3407 \\
    -ot ".ffn_.*_exps.=CPU"
```

{% endcode %}
{% endstep %}

{% step %}
Holen Sie sich die 1-Bit-Version (170 GB), wenn Sie nicht genug kombinierten RAM und VRAM haben:

```python
from huggingface_hub import snapshot_download
snapshot_download(
    repo_id = "unsloth/DeepSeek-V3.1-Terminus-GGUF",
    local_dir = "unsloth/DeepSeek-V3.1-Terminus-GGUF",
    allow_patterns = ["*UD-TQ1_0*"], # Verwende "*UD-Q2_K_XL*" für dynamische 2-Bit-Version
)
```

{% endstep %}
{% endstepper %}

### ✨ Bereitstellen mit llama-server und der Completion-Bibliothek von OpenAI

Um llama-server für die Bereitstellung zu verwenden, nutzen Sie den folgenden Befehl:

{% code overflow="wrap" %}

```bash
./llama.cpp/llama-server \\
    --model unsloth/DeepSeek-V3.1-Terminus-GGUF/DeepSeek-V3.1-Terminus-UD-TQ1_0.gguf \\
    --alias "unsloth/DeepSeek-V3.1-Terminus" \\
    --n-gpu-layers 999 \\
    -ot ".ffn_.*_exps.=CPU" \\
    --prio 3 \\
    --min-p 0.01 \\
    --ctx-size 16384 \\
    --port 8001 \
    --jinja
```

{% endcode %}

Verwenden Sie dann die Python-Bibliothek von OpenAI `pip install openai` :

```python
from openai import OpenAI
import json
openai_client = OpenAI(
    base_url = "http://127.0.0.1:8001/v1",
    api_key = "sk-no-key-required",
)
completion = openai_client.chat.completions.create(
    model = "unsloth/DeepSeek-V3.1-Terminus",
    messages = [{"role": "user", "content": "Was ist 2+2?"},],
)
print(completion.choices[0].message.content)
```

## :minidisc:Modell-Uploads

**ALLE unsere Uploads** - einschließlich derer, die nicht auf imatrix basieren oder dynamisch sind, nutzen unseren Kalibrierungsdatensatz, der speziell für Gesprächs-, Coding- und Sprachaufgaben optimiert ist.

* Die vollständigen DeepSeek-V3.1-Modell-Uploads unten:

Wir haben außerdem [IQ4\_NL](https://huggingface.co/unsloth/DeepSeek-V3.1-GGUF/tree/main/IQ4_NL) und [Q4\_1](https://huggingface.co/unsloth/DeepSeek-V3.1-GGUF/tree/main/Q4_1) Quants hochgeladen, die speziell auf ARM- bzw. Apple-Geräten schneller laufen.

<table data-full-width="false"><thead><tr><th>MoE-Bits</th><th>Typ + Link</th><th>Festplattengröße</th><th>Details</th></tr></thead><tbody><tr><td>1,66 Bit</td><td><a href="https://huggingface.co/unsloth/DeepSeek-V3.1-GGUF?show_file_info=DeepSeek-V3.1-UD-TQ1_0.gguf">TQ1_0</a></td><td><strong>170 GB</strong></td><td>1,92/1,56 Bit</td></tr><tr><td>1,78 Bit</td><td><a href="https://huggingface.co/unsloth/DeepSeek-V3.1-GGUF/tree/main/UD-IQ1_S">IQ1_S</a></td><td><strong>185 GB</strong></td><td>2,06/1,56 Bit</td></tr><tr><td>1,93 Bit</td><td><a href="https://huggingface.co/unsloth/DeepSeek-V3.1-GGUF/tree/main/UD-IQ1_M">IQ1_M</a></td><td><strong>200 GB</strong></td><td>2.5/2.06/1.56</td></tr><tr><td>2,42 Bit</td><td><a href="https://huggingface.co/unsloth/DeepSeek-V3.1-GGUF/tree/main/UD-IQ2_XXS">IQ2_XXS</a></td><td><strong>216 GB</strong></td><td>2,5/2,06 Bit</td></tr><tr><td>2,71 Bit</td><td><a href="https://huggingface.co/unsloth/DeepSeek-V3.1-GGUF/tree/main/UD-Q2_K_XL">Q2_K_XL</a></td><td><strong>251 GB</strong></td><td>3,5/2,5 Bit</td></tr><tr><td>3,12 Bit</td><td><a href="https://huggingface.co/unsloth/DeepSeek-V3.1-GGUF/tree/main/UD-IQ3_XXS">IQ3_XXS</a></td><td><strong>273 GB</strong></td><td>3,5/2,06 Bit</td></tr><tr><td>3,5 Bit</td><td><a href="https://huggingface.co/unsloth/DeepSeek-V3.1-GGUF/tree/main/UD-Q3_K_XL">Q3_K_XL</a></td><td><strong>296 GB</strong></td><td>4,5/3,5 Bit</td></tr><tr><td>4,5 Bit</td><td><a href="https://huggingface.co/unsloth/DeepSeek-V3.1-GGUF/tree/main/UD-Q4_K_XL">Q4_K_XL</a></td><td><strong>384 GB</strong></td><td>5,5/4,5 Bit</td></tr><tr><td>5,5 Bit</td><td><a href="https://huggingface.co/unsloth/DeepSeek-V3.1-GGUF/tree/main/UD-Q5_K_XL">Q5_K_XL</a></td><td><strong>481 GB</strong></td><td>6,5/5,5 Bit</td></tr></tbody></table>

Wir haben auch Versionen in [BF16-Format](https://huggingface.co/unsloth/DeepSeek-V3.1-BF16), sowie das originale [FP8-(float8)-Format](https://huggingface.co/unsloth/DeepSeek-V3.1).

## :snowboarder: Die Generierungsgeschwindigkeit verbessern

Wenn Sie mehr VRAM haben, können Sie versuchen, mehr MoE-Layer oder ganze Layer selbst auszulagern.

Normalerweise `-ot ".ffn_.*_exps.=CPU"` lagert alle MoE-Layer auf die CPU aus! Dadurch können Sie effektiv alle Nicht-MoE-Layer auf 1 GPU unterbringen, was die Generierungsgeschwindigkeit verbessert. Sie können den Regex-Ausdruck anpassen, um mehr Layer unterzubringen, wenn Sie mehr GPU-Kapazität haben.

Wenn Sie etwas mehr GPU-Speicher haben, versuchen Sie `-ot ".ffn_(up|down)_exps.=CPU"` Dadurch werden Up- und Down-Projektions-MoE-Layer ausgelagert.

Versuchen Sie `-ot ".ffn_(up)_exps.=CPU"` wenn Sie noch mehr GPU-Speicher haben. Dadurch werden nur Up-Projektions-MoE-Layer ausgelagert.

Sie können den Regex auch anpassen, zum Beispiel `-ot "\.(6|7|8|9|[0-9][0-9]|[0-9][0-9][0-9])\.ffn_(gate|up|down)_exps.=CPU"` bedeutet, Gate-, Up- und Down-MoE-Layer auszulagern, aber nur ab dem 6. Layer aufwärts.

Der [neueste llama.cpp-Version](https://github.com/ggml-org/llama.cpp/pull/14363) führt außerdem den High-Throughput-Modus ein. Verwenden Sie `llama-parallel`. Lesen Sie mehr darüber [hier](https://github.com/ggml-org/llama.cpp/tree/master/examples/parallel). Sie können auch **den KV-Cache auf 4 Bit quantisieren** zum Beispiel, um VRAM-/RAM-Bewegungen zu reduzieren, was den Generierungsprozess ebenfalls beschleunigen kann.

## 📐Wie man langen Kontext unterbringt (volle 128K)

Um längeren Kontext unterzubringen, können Sie **KV-Cache-Quantisierung** verwenden, um die K- und V-Caches auf niedrigere Bits zu quantisieren. Dies kann auch die Generierungsgeschwindigkeit erhöhen, da weniger RAM-/VRAM-Datenbewegung nötig ist. Die erlaubten Optionen für die K-Quantisierung (Standard ist `f16`) sind die folgenden.

`--cache-type-k f32, f16, bf16, q8_0, q4_0, q4_1, iq4_nl, q5_0, q5_1`

Sie sollten die `_1` Varianten für etwas höhere Genauigkeit verwenden, obwohl sie etwas langsamer ist. Zum Beispiel `q4_1, q5_1`

Sie können auch den V-Cache quantisieren, aber dafür müssen Sie **llama.cpp mit Flash-Attention-Unterstützung kompilieren** über `-DGGML_CUDA_FA_ALL_QUANTS=ON`, und `--flash-attn` verwenden, um es zu aktivieren. Dann können Sie es zusammen mit `--cache-type-k` :

`--cache-type-v f32, f16, bf16, q8_0, q4_0, q4_1, iq4_nl, q5_0, q5_1`


---

# 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 by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://unsloth.ai/docs/de/modelle/tutorials/deepseek-v3.1-how-to-run-locally.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

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.
