For the complete documentation index, see llms.txt. This page is also available as Markdown.

GLM-4.6: Anleitung zum lokalen Ausführen

Ein Leitfaden dazu, wie du das Modell Z.ai GLM-4.6 und GLM-4.6V-Flash auf deinem eigenen lokalen Gerät ausführst!

GLM-4.6 und GLM-4.6V-Flash sind die neuesten Reasoning-Modelle von Z.ai, die SOTA-Leistung bei Coding- und Agent-Benchmarks erzielen und gleichzeitig verbesserte Konversations-Chats bieten. GLM-4.6V-Flash das kleinere 9B-Modell wurde im Dezember 2025 veröffentlicht und du kannst es jetzt ebenfalls ausführen.

Das vollständige Modell mit 355B Parametern benötigt 400 GB Festplattenspeicher, während das Unsloth Dynamic 2-bit GGUF die Größe reduziert auf 135 GB (-75%). GLM-4.6-GGUF

Alle Uploads verwenden Unsloth Dynamic 2.0 für SOTA-Leistung bei 5-shot MMLU und Aider, was bedeutet, dass du quantisierte GLM-LLMs mit minimalem Genauigkeitsverlust ausführen und feinabstimmen kannst.

Navigation durch die Tutorials:

GLM-4.6V-Flash ausführenGLM-4.6 ausführen

🐛Unsloth-Chat-Vorlage & Fehlerbehebungen

Einer der wesentlichen Fixes, die wir vorgenommen haben, behebt ein Problem beim Prompting von GGUFs, bei dem der zweite Prompt nicht funktionieren würde. Wir haben dieses Problem behoben, allerdings besteht dieses Problem in GGUFs ohne unsere Fixes weiterhin. Zum Beispiel funktioniert bei der Verwendung eines beliebigen nicht-Unsloth GLM-4.6 GGUF die erste Konversation einwandfrei, aber die zweite bricht ab.

Wir haben dies in unserer Chat-Vorlage behoben, sodass bei Verwendung unserer Version Konversationen über die zweite hinaus (dritte, vierte usw.) ohne Fehler funktionieren. Es gibt weiterhin einige Probleme mit Tool-Calling, die wir aufgrund von Bandbreitenbeschränkungen noch nicht vollständig untersucht haben. Wir haben das GLM-Team bereits über diese verbleibenden Probleme informiert.

🔎GLM 4.6V Flash-Eigenheiten und Fixes

GLM-4.6V-Flash kann auf Chinesisch reasoning und ausgeben. Das ist nicht einzigartig für unsere Quants, sondern eine Eigenheit des Modells. Verwende einen Systemprompt von "Auf Englisch antworten und auf Englisch denken", um Reasoning und Ausgaben auf Englisch zu erzwingen!

Wir haben die BF16- und Q8_0-Quants anderer Quant-Anbieter getestet, und alle scheinen auf Chinesisch zu reasoning. Zum Beispiel zeigen 2 separate Quants mit Seed 3407 und demselben Prompt "Erstelle ein Flappy-Bird-Spiel in Python" Reasoning auf Chinesisch:

Durch die Verwendung eines Systemprompts von "Auf Englisch denken" über --system-prompt "Auf Englisch antworten" in llama.cpp, also wie unten:

Wir erhalten Reasoning auf Chinesisch, aber Ausgaben auf Englisch. Wir stellen auch eine Folgefrage von "Was ist 1+1" und erhalten nur Englisch:

Und schließlich, durch die Verwendung eines Systemprompts von "Auf Englisch antworten und auf Englisch denken" über --system-prompt "Auf Englisch antworten und auf Englisch denken" in llama.cpp, also wie unten:

Wir erhalten Reasoning auf Englisch und Ausgaben auf Englisch! Wir stellen auch eine Folgefrage von "Was ist 1+1" und erhalten nur Englisch:

⚙️ Verwendungshandbuch

Das dynamische 2-bit Quant UD-Q2_K_XL verwendet 135 GB Festplattenspeicher - das funktioniert gut in einer 1x24GB-Karte und 128 GB RAM mit MoE-Offloading. Der 1-bit UD-TQ1 GGUF funktioniert ebenfalls nativ in Ollama!

Du musst --jinja für llama.cpp-Quants verwenden - das nutzt unsere behobenen Chat-Vorlagen und aktiviert die korrekte Vorlage! Du könntest falsche Ergebnisse erhalten, wenn du --jinja

Die 4-bit Quants passen in eine 1x 40GB GPU (mit auf RAM ausgelagerten MoE-Layern). Rechne mit etwa 5 Tokens/s mit diesem Setup, wenn du zusätzlich 165 GB RAM hast. Es wird empfohlen, mindestens 205 GB RAM zu haben, um dieses 4-bit-Modell auszuführen. Für optimale Leistung benötigst du mindestens 205 GB einheitlichen Speicher oder 205 GB kombinierte RAM+VRAM für 5+ Tokens/s. Um zu lernen, wie man die Generierungsgeschwindigkeit erhöht und längere Kontexte unterbringt, lies hier.

Empfohlene Einstellungen

Laut Z.ai gibt es unterschiedliche Einstellungen für die Inferenz von GLM-4.6V-Flash & GLM-4.6:

GLM-4.6V-Flash
GLM-4.6

temperature = 0.8

temperature = 1.0

top_p = 0.6 (empfohlen)

top_p = 0.95 (empfohlen für Coding)

top_k = 2 (empfohlen)

top_k = 40 (empfohlen für Coding)

128K Kontextlänge oder weniger

200K Kontextlänge oder weniger

repeat_penalty = 1.1

max_generate_tokens = 16,384

max_generate_tokens = 16,384

  • Verwende --jinja für llama.cpp-Varianten - wir haben ebenfalls einige Probleme mit der Chat-Vorlage behoben!

GLM-4.6-Tutorials ausführen:

Sieh dir unsere Schritt-für-Schritt-Anleitungen zum Ausführen von GLM-4.6V-Flash und den großen GLM-4.6 Modellen an.

GLM-4.6V-Flash

✨ In llama.cpp ausführen

1

Holen Sie sich die neueste llama.cpp auf GitHub. Du kannst auch die folgenden Build-Anweisungen verwenden. Ändere -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.

2

Wenn Sie llama.cpp um Modelle direkt zu laden, kannst du Folgendes tun: (:Q8_K_XL) ist der Quantisierungstyp. Du kannst auch über Hugging Face herunterladen (Punkt 3). Das ist ähnlich wie ollama run . Verwenden Sie export LLAMA_CACHE="folder" um zu erzwingen llama.cpp um an einem bestimmten Ort zu speichern. Beachte, dass das Modell nur eine maximale Kontextlänge von 128K hat.

3

Lade das Modell über herunter (nach der Installation von pip install huggingface_hub hf_transfer ). Du kannst UD-Q4_K_XL (dynamischer 4bit-Quant) oder andere quantisierte Versionen wie Q8_K_XL .

GLM-4.6

🦙 In Ollama ausführen

1

Installiere ollama falls du es noch nicht hast! Um weitere Varianten des Modells auszuführen, siehe hier.

2

Führe das Modell aus! Beachte, dass du ollama servein einem anderen Terminal aufrufen kannst, falls es fehlschlägt! Wir enthalten alle unsere Fixes und vorgeschlagenen Parameter (temperature usw.) in params in unserem Hugging-Face-Upload!

3

Um andere Quants auszuführen, musst du zuerst die gesplitteten GGUF-Dateien zu einer einzigen zusammenführen, wie im folgenden Code. Dann musst du das Modell lokal ausführen.

✨ In llama.cpp ausführen

1

Holen Sie sich die neueste llama.cpp auf GitHub hier. 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.

2

Wenn Sie llama.cpp um Modelle direkt zu laden, kannst du Folgendes tun: (:Q2_K_XL) ist der Quantisierungstyp. Du kannst auch über Hugging Face herunterladen (Punkt 3). Das ist ähnlich wie ollama run . Verwenden Sie export LLAMA_CACHE="folder" um zu erzwingen llama.cpp um an einem bestimmten Ort zu speichern. Beachte, dass das Modell nur eine maximale Kontextlänge von 128K hat.

3

Lade das Modell über herunter (nach der Installation von pip install huggingface_hub hf_transfer ). Du kannst UD-Q2_K_XL (dynamischer 2bit-Quant) oder andere quantisierte Versionen wie Q4_K_XL . Wir empfehlen die Verwendung unseres dynamischen 2.7bit-Quants UD-Q2_K_XL um Größe und Genauigkeit auszubalancieren.

4

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, also wie viele Layer. Versuche es anzupassen, wenn dein GPU-Speicher voll läuft. Entferne es auch, wenn du nur CPU-Inferenz hast.

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

Um llama-server für das Deployment zu verwenden, nutze den folgenden Befehl:

Dann verwende die Python-Bibliothek von OpenAI nach pip install openai :

💽Modell-Uploads

ALLE unsere Uploads - einschließlich derjenigen, die nicht imatrix-basiert oder dynamisch sind, verwenden unser Kalibrierungsdatenset, das speziell für Konversations-, Coding- und Sprachaufgaben optimiert ist.

  • Vollständige GLM-4.6-Modell-Uploads unten:

Wir haben außerdem IQ4_NL und Q4_1 Quants hochgeladen, die speziell schneller auf ARM- bzw. Apple-Geräten laufen.

MoE-Bits
Typ + Link
Festplattengröße
Details

1.66bit

84 GB

1.92/1.56bit

1.78bit

96 GB

2.06/1.56bit

1.93bit

107 GB

2.5/2.06/1.56

2.42bit

115 GB

2.5/2.06bit

2.71bit

135 GB

3.5/2.5bit

3.12bit

145 GB

3.5/2.06bit

3.5bit

158 GB

4.5/3.5bit

4.5bit

204 GB

5.5/4.5bit

5.5bit

252 GB

6.5/5.5bit

🏂 Die Generierungsgeschwindigkeit verbessern

Wenn du mehr VRAM hast, kannst du versuchen, mehr MoE-Layer auszulagern oder ganze Layer selbst auszulagern.

Normalerweise -ot ".ffn_.*_exps.=CPU" lagert alle MoE-Layer auf die CPU aus! Dadurch kannst du effektiv alle Nicht-MoE-Layer auf 1 GPU unterbringen und die Generierungsgeschwindigkeit verbessern. Du kannst den Regex-Ausdruck anpassen, um mehr Layer unterzubringen, wenn du über mehr GPU-Kapazität verfügst.

Wenn du etwas mehr GPU-Speicher hast, probiere -ot ".ffn_(up|down)_exps.=CPU" Dies lagert die Up- und Down-Projektions-MoE-Layer aus.

Probiere -ot ".ffn_(up)_exps.=CPU" wenn du noch mehr GPU-Speicher hast. Dies lagert nur die Up-Projektions-MoE-Layer aus.

Du kannst 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, die Gate-, Up- und Down-MoE-Layer auszulagern, aber nur ab der 6. Schicht aufwärts.

Llama.cpp führt außerdem einen High-Throughput-Modus ein. Verwende llama-parallel. Lies mehr darüber hier. Du kannst auch den KV-Cache auf 4bits quantisieren zum Beispiel, um die VRAM-/RAM-Bewegung zu reduzieren, was den Generierungsprozess ebenfalls beschleunigen kann.

📐 Wie man langen Kontext unterbringt (volle 200K)

Um längeren Kontext unterzubringen, kannst du KV-Cache-Quantisierung verwenden, um die K- und V-Caches auf niedrigere Bits zu quantisieren. Dadurch kann auch die Generierungsgeschwindigkeit aufgrund reduzierter RAM-/VRAM-Datenbewegung steigen. Die zulässigen Optionen für die K-Quantisierung (Standard ist f16) umfassen die folgenden.

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

Du solltest die _1 Varianten verwenden, um die Genauigkeit etwas zu erhöhen, auch wenn es etwas langsamer ist. Zum Beispiel q4_1, q5_1

Du kannst auch den V-Cache quantisieren, aber dafür musst du llama.cpp mit Unterstützung für Flash Attention kompilieren über -DGGML_CUDA_FA_ALL_QUANTS=ON, und --flash-attn verwenden, um es zu aktivieren. Dann kannst du es zusammen mit --cache-type-k :

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

Zuletzt aktualisiert

War das hilfreich?