zGLM-4.7-Flash: Anleitung zum lokalen Betrieb

Führe GLM-4.7-Flash lokal aus & finetune es auf deinem Gerät!

GLM-4.7-Flash ist Z.ais neues 30B MoE-Reasoning-Modell für lokale Bereitstellung und bietet erstklassige Leistung beim Codieren, bei agentischen Workflows und im Chat. Es verwendet ~3,6B Parameter, unterstützt 200K Kontext und führt SWE-Bench, GPQA sowie Reasoning-/Chat-Benchmarks an.

GLM-4.7-Flash läuft auf 24GB RAM/VRAM/Unified Memory (32 GB für Vollpräzision), und Sie können jetzt mit Unsloth feinabstimmen. Um GLM 4.7 Flash mit vLLM auszuführen, siehe GLM-4.7-Flash in vLLM

circle-check

Ausführungs-TutorialFeinabstimmung

GLM-4.7-Flash GGUF zum Ausführen: unsloth/GLM-4.7-Flash-GGUFarrow-up-right

⚙️ Gebrauchsanleitung

Nach Rücksprache mit dem Z.ai-Team empfehlen sie die Verwendung ihrer GLM-4.7-Sampling-Parameter:

Standardeinstellungen (die meisten Aufgaben)
Terminal Bench, SWE Bench verifiziert

temperature = 1.0

temperature = 0.7

top_p = 0.95

top_p = 1.0

repeat penalty = deaktiviert oder 1.0

repeat penalty = deaktiviert oder 1.0

  • Für allgemeine Anwendungsfälle: --temp 1.0 --top-p 0.95

  • Für Tool-Aufrufe: --temp 0.7 --top-p 1.0

  • Wenn Sie llama.cpp verwenden, setzen Sie --min-p 0.01 da der Standard von llama.cpp 0,05 ist

  • Manchmal müssen Sie experimentieren, welche Zahlen für Ihren Anwendungsfall am besten funktionieren.

circle-exclamation
  • Maximales Kontextfenster: 202,752

🖥️ GLM-4.7-Flash ausführen

Je nach Anwendungsfall müssen Sie unterschiedliche Einstellungen verwenden. Manche GGUFs sind in der Größe ähnlich, weil die Modellarchitektur (wie gpt-oss) Dimensionen hat, die nicht durch 128 teilbar sind, sodass Teile nicht auf niedrigere Bits quantisiert werden können.

Da diese Anleitung 4-Bit verwendet, benötigen Sie etwa 18 GB RAM/Unified Memory. Wir empfehlen mindestens 4-Bit-Präzision für beste Leistung.

circle-exclamation

Llama.cpp Tutorial (GGUF):

Anleitung zum Ausführen in llama.cpp (Hinweis: Wir verwenden 4-Bit, um die meisten Geräte passend zu machen):

1

Holen Sie sich die neueste llama.cpp auf GitHub hierarrow-up-right. Sie können auch den unten stehenden Build-Anweisungen folgen. Ändern Sie -DGGML_CUDA=ON zu -DGGML_CUDA=OFF wenn Sie keine GPU haben oder nur CPU-Inferenz wünschen.

2

Sie können direkt von Hugging Face ziehen. Sie können den Kontext auf 200K erhöhen, je nachdem, wie viel RAM/VRAM Sie haben.

Sie können auch Z.ais empfohlene GLM-4.7-Sampling-Parameter ausprobieren:

  • Für allgemeine Anwendungsfälle: --temp 1.0 --top-p 0.95

  • Für Tool-Aufrufe: --temp 0.7 --top-p 1.0

  • Denken Sie daran, die Wiederholungsstrafe zu deaktivieren!

Folge dem für allgemeine Instruktions- Anwendungsfälle:

Folge dem für Tool-Aufrufe Anwendungsfälle:

3

Laden Sie das Modell herunter über (nach Installation von pip install huggingface_hub). Sie können wählen UD-Q4_K_XL oder andere quantisierte Versionen.

4

Führen Sie dann das Modell im Konversationsmodus aus:

Passen Sie außerdem Kontextfenster nach Bedarf, bis zu 202752

Wiederholungen und Schleifen reduzieren

circle-check

Das bedeutet, dass Sie jetzt Z.ais empfohlene Parameter verwenden und großartige Ergebnisse erzielen können:

  • Für allgemeine Anwendungsfälle: --temp 1.0 --top-p 0.95

  • Für Tool-Aufrufe: --temp 0.7 --top-p 1.0

  • Wenn Sie llama.cpp verwenden, setzen Sie --min-p 0.01 da der Standard von llama.cpp 0,05 ist

  • Denken Sie daran, die Wiederholungsstrafe zu deaktivieren! Oder setzen Sie --repeat-penalty 1.0

Wir haben hinzugefügt "scoring_func": "sigmoid" zu config.json für das Hauptmodell - siehearrow-up-right.

circle-exclamation

🐦Flappy Bird Beispiel mit UD-Q4_K_XL

Als Beispiel führten wir das folgende lange Gespräch durch, indem wir UD-Q4_K_XL über ./llama.cpp/llama-cli --model unsloth/GLM-4.7-Flash-GGUF/GLM-4.7-Flash-UD-Q4_K_XL.gguf --fit on --temp 1.0 --top-p 0.95 --min-p 0.01 :

welches das folgende Flappy-Bird-Spiel in HTML-Form gerendert hat:

chevron-rightFlappy Bird Spiel in HTML (erweiterbar)hashtag

Und wir haben einige Screenshots gemacht (4bit funktioniert):

🦥 Feinabstimmung von GLM-4.7-Flash

Unsloth unterstützt jetzt die Feinabstimmung von GLM-4.7-Flash, jedoch müssen Sie transformers v5. Das 30B-Modell passt nicht auf eine kostenlose Colab-GPU; Sie können jedoch unser Notebook verwenden. 16-Bit-LoRA-Feinabstimmung von GLM-4.7-Flash benötigt etwa 60GB VRAM:

circle-exclamation

Beim Feinabstimmen von MoEs ist es wahrscheinlich keine gute Idee, die Router-Schicht zu fine-tunen, daher haben wir sie standardmäßig deaktiviert. Wenn Sie seine Reasoning-Fähigkeiten erhalten möchten (optional), können Sie eine Mischung aus direkten Antworten und Chain-of-Thought-Beispielen verwenden. Verwenden Sie mindestens 75% Reasoning und 25% Nicht-Reasoning in Ihrem Datensatz, damit das Modell seine Reasoning-Fähigkeiten behält.

🦙Llama-Server Bereitstellung & Deployment

Um GLM-4.7-Flash produktiv bereitzustellen, verwenden wir llama-server In einem neuen Terminal, z. B. via tmux, deployen Sie das Modell über:

Dann in einem neuen Terminal, nachdem Sie pip install openai, tun Sie:

Was ausgeben wird

💻 GLM-4.7-Flash in vLLM

Sie können jetzt unser neues FP8 Dynamic Quantarrow-up-right des Modells für Premium- und schnelle Inferenz. Installieren Sie zuerst vLLM aus dem Nightly-Build:

Dann servieren Unsloths dynamische FP8-Versionarrow-up-right des Modells. Wir haben FP8 aktiviert, um den KV-Cache-Speicherverbrauch um 50 % zu reduzieren, und auf 4 GPUs. Wenn Sie 1 GPU haben, verwenden Sie CUDA_VISIBLE_DEVICES='0' und setze --tensor-parallel-size 1 oder entfernen Sie dieses Argument. Um FP8 zu deaktivieren, entfernen Sie --quantization fp8 --kv-cache-dtype fp8

Du kannst dann das bereitgestellte Modell über die OpenAI-API aufrufen:

vLLM GLM-4.7-Flash Spekulatives Decoding

Wir stellten fest, dass die Verwendung des MTP-(Multi-Token-Prediction)-Moduls von GLM 4.7 Flash den Generationsdurchsatz von 13.000 Token auf 1x B200 auf 1.300 Token reduziert! (10x langsamer) Auf Hopper sollte es hoffentlich in Ordnung sein.

Nur 1.300 Token/s Durchsatz auf 1xB200 (130 Token/s Dekodierung pro Nutzer)

Und 13.000 Token/s Durchsatz auf 1xB200 (immer noch 130 Token/s Dekodierung pro Nutzer)

🔨Tool-Aufrufe mit GLM-4.7-Flash

Siehe Tool Calling Guide für weitere Details zur Durchführung von Tool-Aufrufen. In einem neuen Terminal (wenn Sie tmux verwenden, drücken Sie STRG+B+D) erstellen wir einige Tools wie das Addieren von 2 Zahlen, Ausführen von Python-Code, Ausführen von Linux-Funktionen und vieles mehr:

Dann verwenden wir die unten stehenden Funktionen (kopieren, einfügen und ausführen), die Funktionsaufrufe automatisch parsen und den OpenAI-Endpunkt für jedes Modell aufrufen:

Nach dem Start von GLM-4.7-Flash über llama-server wie in GLM-4.7-Flash oder siehe Tool Calling Guide für weitere Details, können wir dann einige Tool-Aufrufe durchführen:

Tool-Aufruf für mathematische Operationen für GLM 4.7

Tool-Aufruf zur Ausführung generierten Python-Codes für GLM-4.7-Flash

Benchmarks

GLM-4.7-Flash ist das leistungsstärkste 30B-Modell in allen Benchmarks außer AIME 25.

Zuletzt aktualisiert

War das hilfreich?