GLM-4.6: Anleitung zum lokalen Betrieb
Eine Anleitung, wie man Z.ai GLM-4.6 und GLM-4.6V-Flash auf dem eigenen lokalen Gerät ausführt!
GLM-4.6 und GLM-4.6V-Flash sind die neuesten Reasoning-Modelle von Z.ai, die SOTA-Leistung in Coding- und Agent-Benchmarks erreichen und gleichzeitig verbesserte konversationelle Chats bieten. GLM-4.6V-Flash Das kleinere 9B-Modell wurde im Dezember 2025 veröffentlicht und Sie können es jetzt ebenfalls ausführen.
Das vollständige Modell mit 355B Parametern benötigt 400GB Festplattenspeicher, während das Unsloth Dynamic 2-bit GGUF die Größe reduziert auf 135GB (-75%). GLM-4.6-GGUF
Wir haben mehrere Chat-Vorlagen-Fixes für GLM-4.6 durchgeführt, um llama.cpp/llama-cli --jinja funktionieren zu lassen - bitte verwenden Sie nur --jinja ansonsten sind die Ausgaben falsch!
Sie haben nach Benchmarks für unsere Quants gefragt, deshalb zeigen wir Aider Polyglot Ergebnisse! Unsere Dynamic 3-bit DeepSeek V3.1 GGUF erzielt 75.6%, und übertrifft damit viele SOTA-LLMs in voller Präzision. Mehr lesen.
Alle Uploads verwenden Unsloth Dynamic 2.0 für SOTA 5-shot MMLU- und Aider-Leistung, was bedeutet, dass Sie quantisierte GLM-LLMs mit minimalem Genauigkeitsverlust ausführen und feinabstimmen können.
Tutorial-Navigation:
GLM-4.6V-Flash ausführenGLM-4.6 ausführen
🐛Unsloth Chat-Vorlage & Fehlerbehebungen
Eine der wichtigen Korrekturen, die wir vorgenommen haben, betrifft ein Problem beim Prompting von GGUFs, bei dem der zweite Prompt nicht funktionierte. Wir haben dieses Problem behoben; dieses Problem besteht jedoch weiterhin in GGUFs ohne unsere Korrekturen. Zum Beispiel funktioniert bei 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 noch 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.
🔎Eigenheiten und Korrekturen von GLM 4.6V Flash
GLM-4.6V-Flash kann auf Chinesisch denken und ausgeben. Das ist nicht einzigartig für unsere Quants, sondern eine Eigenheit des Modells. Verwenden Sie einen System-Prompt wie "Respond in English and reason in English", um Denken und Ausgaben auf Englisch zu erzwingen!
Wir haben die BF16- und Q8_0-Quants anderer Quant-Anbieter getestet, und alle scheinen auf Chinesisch zu denken. Zum Beispiel zeigen 2 separate Quants mit Seed 3407 und demselben Prompt "Create a Flappy Bird game in Python" das Denken auf Chinesisch:


Indem man einen System-Prompt "Reason in English" verwendet über --system-prompt "Respond in English" in llama.cpp, also zum Beispiel wie unten:
Wir erhalten Gedanken/Begründungen auf Chinesisch, aber Ausgaben auf Englisch. Wir fragen auch nach einer Folgefrage "What is 1+1" und erhalten nur Englisch:

Und schließlich, indem man einen System-Prompt "Respond in English and reason in English" verwendet über --system-prompt "Respond in English and reason in English" in llama.cpp, also zum Beispiel wie unten:
Erhalten wir Denken/Begründungen auf Englisch und Ausgaben auf Englisch! Wir fragen auch nach einer Folgefrage "What is 1+1" und erhalten nur Englisch:

⚙️ Gebrauchsanleitung
Das 2-Bit Dynamic Quant UD-Q2_K_XL benötigt 135GB Festplattenspeicher – das funktioniert gut in einer 1x24GB-Karte und 128GB RAM mit MoE-Offloading. Das 1-Bit UD-TQ1 GGUF funktioniert auch nativ in Ollama!
Sie müssen --jinja für llama.cpp-Quants verwenden – dies nutzt unsere festen Chat-Vorlagen und aktiviert die richtige Vorlage! Sie könnten falsche Ergebnisse erhalten, wenn Sie nicht --jinja
Die 4-Bit-Quants passen auf eine 1x40GB-GPU (mit MoE-Schichten ausgelagert in den RAM). Rechnen Sie bei dieser Konfiguration mit etwa 5 Token/s, wenn Sie zusätzlich 165GB RAM haben. Es wird empfohlen, mindestens 205GB RAM zu haben, um dieses 4-Bit-Modell zu betreiben. Für optimale Leistung benötigen Sie mindestens 205GB Unified Memory oder 205GB kombinierter RAM+VRAM für 5+ Token/s. Um zu erfahren, wie man die Generationsgeschwindigkeit erhöht und längere Kontexte unterbringt, hier lesen.
Obwohl nicht zwingend, sollten VRAM + RAM kombiniert ungefähr der Größe des heruntergeladenen Quants entsprechen für beste Leistung. Wenn nicht, funktioniert Festplatten-/SSD-Auslagerung mit llama.cpp, die Inferenz wird nur langsamer sein.
Empfohlene Einstellungen
Laut Z.ai gibt es unterschiedliche Einstellungen für die Inferenz von 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)
Kontextlänge 128K oder weniger
200K Kontextlänge oder weniger
repeat_penalty = 1.1
max_generate_tokens = 16.384
max_generate_tokens = 16.384
Verwende
--jinjafür llama.cpp-Varianten – wir haben einige Probleme mit Chat-Vorlagen behoben!
GLM-4.6 Tutorials ausführen:
Sieh dir unsere Schritt-für-Schritt-Anleitungen zum Ausführen von GLM-4.6V-Flash und dem großen GLM-4.6 Modelle.
GLM-4.6V-Flash
NEU seit 16. Dez. 2025: GLM-4.6-V ist jetzt mit Vision-Unterstützung aktualisiert!
✨ In llama.cpp ausführen
Hole dir die neueste llama.cpp auf GitHub. Sie können auch die untenstehenden Build-Anweisungen verwenden. Ändern Sie -DGGML_CUDA=ON zu -DGGML_CUDA=OFF wenn du keine GPU hast oder nur CPU-Inferenz möchtest. Für Apple Mac / Metal-Geräte, setze -DGGML_CUDA=OFF dann wie gewohnt fort - Metal-Unterstützung ist standardmäßig aktiviert.
Wenn du llama.cpp direkt zum Laden von Modellen, Sie können Folgendes tun: (:Q8_K_XL) ist der Quantisierungstyp. Sie können auch über Hugging Face (Punkt 3) herunterladen. Das ist ähnlich zu ollama run . Verwenden Sie export LLAMA_CACHE="folder" um llama.cpp zu zwingen, an einem bestimmten Ort zu speichern. Denken Sie daran, dass das Modell nur eine maximale Kontextlänge von 128K hat.
Laden Sie das Modell herunter (nach der Installation pip install huggingface_hub hf_transfer ). Sie können wählen ). Sie können auswählenQ4_K_XL (dynamische 4-Bit-Quantisierung) oder andere quantisierte Versionen wie Q8_K_XL .
GLM-4.6
🦙 --seed 3407 \
In Ollama ausführen Installieren Sie ollama falls Sie es noch nicht getan haben! Um weitere Varianten des Modells auszuführen,.
curl -fsSL https://ollama.com/install.sh | sh Führen Sie das Modell aus! Beachten Sie, dass Sieollama serve in einem anderen Terminal aufrufen können, wenn es fehlschlägt! Wir fügen alle unsere Fixes und vorgeschlagenen Parameter (Temperatur usw.) in params
OLLAMA_MODELS=unsloth ollama run hf.co/unsloth/GLM-4.7-GGUF:TQ1_0
✨ In llama.cpp ausführen
Hole dir die neueste llama.cpp auf GitHub hier. Du kannst auch den Build-Anweisungen unten folgen. Ändere -DGGML_CUDA=ON zu -DGGML_CUDA=OFF wenn du keine GPU hast oder nur CPU-Inferenz möchtest.
Wenn du llama.cpp direkt zum Laden von Modellen verwenden möchten, können Sie Folgendes tun: (:Q2_K_XL) ist der Quantisierungstyp. Sie können auch über Hugging Face (Punkt 3) herunterladen. Das ist ähnlich wie ollama run . Verwenden Sie export LLAMA_CACHE="folder" um llama.cpp zu zwingen, an einem bestimmten Ort zu speichern. Denken Sie daran, dass das Modell nur eine maximale Kontextlänge von 128K hat.
Bitte probieren Sie -ot ".ffn_.*_exps.=CPU" um alle MoE-Schichten auf die CPU auszulagern! Dadurch können Sie effektiv alle Nicht-MoE-Schichten auf einer GPU unterbringen, was die Generationsgeschwindigkeit verbessert. Sie können den Regex-Ausdruck anpassen, um mehr Schichten zu verschieben, wenn Sie mehr GPU-Kapazität haben.
Wenn Sie etwas mehr GPU-Speicher haben, versuchen Sie -ot ".ffn_(up|down)_exps.=CPU" Dies lagert Up- und Down-Projektions-MoE-Schichten aus.
Versuchen Sie -ot ".ffn_(up)_exps.=CPU" wenn Sie noch mehr GPU-Speicher haben. Dies lagert nur Up-Projektions-MoE-Schichten aus.
Und schließlich lagern Sie alle Schichten über -ot ".ffn_.*_exps.=CPU" aus.
Sie können auch den Regex 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-Schichten auszulagern, aber nur ab der 6. Schicht.
Laden Sie das Modell herunter (nach der Installation pip install huggingface_hub hf_transfer ). Sie können wählen ). Sie können auswählenUD- Q4_K_XL Q4_K_XL . Wir empfehlen die Verwendung unseres 2,7-Bit Dynamic Quant UD-Q2_K_XL.
--include "*UD-Q2_K_XL*" # Verwenden Sie "*UD-TQ1_0*" für Dynamic 1bit Sie können --threads 32 für die Anzahl der CPU-Threads bearbeiten, --ctx-size 16384 für Kontextlänge, --n-gpu-layers 2
OLLAMA_MODELS=unsloth ollama run merged_file.gguf
✨ Mit llama-server und OpenAIs Completion-Bibliothek bereitstellen
--port 8001 \ pip install openai :
💽Model-Uploads
ALLE unsere Uploads - einschließlich derjenigen, die nicht imatrix-basiert oder dynamisch sind, nutzen unseren Kalibrierungsdatensatz, der speziell für Konversations-, Coding- und Sprachaufgaben optimiert ist.
Vollständige GLM-4.6 Modell-Uploads unten:
Wir haben außerdem hochgeladen IQ4_NL und Q4_1 Quants, die speziell für ARM- bzw. Apple-Geräte jeweils schneller laufen.
🏂 "content": [{"type": "text", "text": "Erstelle eine Fibonacci-Funktion in Python und finde fib(20)."}],
Wenn Sie mehr VRAM haben, können Sie versuchen, mehr MoE-Schichten auszulagern oder ganze Schichten selbst auszulagern.
Normalerweise, -ot ".ffn_.*_exps.=CPU" lagert alle MoE-Schichten auf die CPU aus! Dies ermöglicht effektiv, alle Nicht-MoE-Schichten auf 1 GPU unterzubringen und verbessert die Generationsgeschwindigkeit. Sie können den Regex-Ausdruck anpassen, um mehr Schichten unterzubringen, wenn Sie mehr GPU-Kapazität haben.
Wenn Sie etwas mehr GPU-Speicher haben, versuchen Sie -ot ".ffn_(up|down)_exps.=CPU" Dies lagert Up- und Down-Projektions-MoE-Schichten aus.
Versuchen Sie -ot ".ffn_(up)_exps.=CPU" wenn Sie noch mehr GPU-Speicher haben. Dies lagert nur Up-Projektions-MoE-Schichten aus.
Sie können auch den Regex 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-Schichten auszulagern, aber nur ab der 6. Schicht.
lagert alle MoE-Schichten auf die CPU aus! Dadurch können Sie effektiv alle Nicht-MoE-Schichten auf einer GPU unterbringen, was die Generationsgeschwindigkeit verbessert. Sie können den Regex-Ausdruck anpassen, um mehr Schichten zu verschieben, wenn Sie mehr GPU-Kapazität haben. llama-parallel. Lesen Sie mehr darüber hier. Sie können auch den KV-Cache z. B. auf 4 Bit quantisieren, den KV-Cache auf 4 Bit quantisieren
📐Wie man langen Kontext einpasst (volle 200K)
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 Generationsgeschwindigkeit erhöhen aufgrund reduzierter RAM-/VRAM-Datenbewegungen. Die erlaubten Optionen für K-Quantisierung (Standard ist f16) umfassen die untenstehenden.
--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 erhöhte Genauigkeit verwenden, obwohl sie etwas langsamer sind. Zum Beispiel q4_1, q5_1
Sie können auch den V-Cache quantisieren, aber Sie müssen llama.cpp mit Flash Attention kompilieren Unterstützung via -DGGML_CUDA_FA_ALL_QUANTS=ON, und verwenden --flash-attn --flash-attn um es zu aktivieren. Dann können Sie es zusammen mit :
--cache-type-k verwenden, und
Zuletzt aktualisiert
War das hilfreich?

