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

🦥Unsloth Dynamic 2.0 GGUFs

Ein großes neues Upgrade für unsere Dynamic Quants!

Wir freuen uns, vorzustellen Unsloth Die Dynamic-v2.0-Quantisierung – ein großes Upgrade gegenüber unseren bisherigen Quants. Diese neue Methode übertrifft führende Quantisierungsmethoden und setzt neue Maßstäbe für Aider Polyglot, 5-Shot-MMLU und KL-Divergenz.

Das bedeutet, dass Sie jetzt ausführen + feinabstimmen können quantisierte LLMs wobei so viel Genauigkeit wie möglich erhalten bleibt! Sie können die 2.0-GGUFs auf den meisten Inferenz-Engines wie llama.cpp ausführen, Unsloth Studio usw.

Update vom 20. Apr. 2026: Sehen Sie sich unsere neuen GGUF-Benchmarks für Qwen3.6 und Gemma 4.

Update vom 27. Feb. 2026: Qwen3.5 ist da, und wir haben einige Probleme mit Chat-Templates für Tool-Aufrufe behoben und jedes GGUF auf Perplexität und KL-Divergenz getestet. Siehe Benchmarks!

Der Hauptvorteil der Verwendung des Unsloth-Pakets und Quants ist unsere aktive Rolle beim Beheben von Fehlern in großen Modellen. Wir haben direkt mit den Teams hinter Qwen3, Meta (Llama 4), Mistral (Devstral), Google (Gemma 1–3) und Microsoft (Phi-3/4), und dabei Korrekturen beigetragen, die die Genauigkeit erhöhen.

Gemma 4 26B A4B Benchmarks (niedriger ist besser)
Qwen3.6 Benchmarks (niedriger ist besser)

Sie können auch Benchmarks für reale Anwendungsfälle ansehen, die von Benjamin Marie für LiveCodeBench v6, MMLU Pro usw. durchgeführt wurden:

Sie können sehen, wie Unsloths GGUFs besser abschneiden als die Nicht-Unsloth-Quants, obwohl sie etwa 8 GB kleiner sind.

Eine detaillierte Analyse unserer Benchmarks und Bewertungen finden Sie weiter unten.

💡 Was ist neu in Dynamic v2.0?

  • Überarbeitete Layer-Auswahl für GGUFs + safetensors: Unsloth Dynamic 2.0 quantisiert Layer jetzt viel intelligenter und umfangreicher selektiv. Anstatt nur bestimmte Layer zu verändern, passen wir nun dynamisch den Quantisierungstyp jedes möglichen Layers an, und die Kombinationen unterscheiden sich je nach Layer und Modell.

  • Aktuell ausgewählte und alle zukünftigen GGUF-Uploads werden Dynamic 2.0 und unseren neuen Kalibrierungsdatensatz verwenden. Der Datensatz enthält mehr als >1,5 Mio. Token (je nach Modell) und besteht aus hochwertigen, von Hand kuratierten und bereinigten Daten – um die Konversations-Chat-Leistung erheblich zu verbessern.

  • Früher war unsere Dynamic-Quantisierung (DeepSeek-R1 1,58-Bit-GGUF) nur für MoE-Architekturen wirksam. Dynamic-2.0-Quantisierung funktioniert jetzt bei allen Modellen (einschließlich MOEs und Nicht-MoEs).

  • Modellspezifische Quants: Jedes Modell verwendet jetzt ein maßgeschneidertes Quantisierungsschema. Z. B. unterscheiden sich die in Gemma 3 quantisierten Layer deutlich von denen in Llama 4.

  • Um die Effizienz zu maximieren, insbesondere auf Apple Silicon und ARM-Geräten, fügen wir jetzt auch die Formate Q4_NL, Q5.1, Q5.0, Q4.1 und Q4.0 hinzu.

Um präzises Benchmarking sicherzustellen, haben wir ein internes Bewertungs-Framework entwickelt, um die offiziell berichteten 5-Shot-MMLU-Werte von Llama 4 und Gemma 3 zu erreichen. Dies ermöglichte einen direkten Vergleich zwischen voller Präzision und Dynamic v2.0, QAT und standardmäßigen imatrix GGUF-Quants.

Alle zukünftigen GGUF-Uploads werden Unsloth Dynamic 2.0 verwenden, und unsere Dynamic-4-Bit-Safe-Tensor-Quants werden davon künftig ebenfalls profitieren.

📊 Warum KL-Divergenz?

Genauigkeit ist nicht alles, was Sie brauchen zeigt, wie das Beschneiden von Layern, selbst durch die Auswahl unnötiger, dennoch enorme Unterschiede in Bezug auf „Flips“ erzeugt. Ein „Flip“ ist definiert als ein Wechsel von Antworten von falsch zu richtig oder umgekehrt. Das Papier zeigt, dass MMLU möglicherweise nicht sinkt, wenn wir Layer beschneiden oder quantisieren, aber das liegt daran, dass einige falsche Antworten zu richtigen „geflippt“ sein könnten. Unser Ziel ist es, das ursprüngliche Modell nachzubilden, daher ist das Messen von „Flips“ eine gute Kennzahl.

KL-Divergenz sollte einer der Goldstandards für die Berichterstattung über Quantisierungsfehler sein gemäß dem Forschungsartikel „Accuracy is Not All You Need“. Die Verwendung von Perplexity ist falsch da sich Ausgabewerte von Tokens gegenseitig aufheben können, müssen wir also KLD oder schwierigere Benchmarks wie Aider.

Das Papier zeigt auch interessanterweise, dass KL-Divergenz stark mit Flips korreliert, und daher ist unser Ziel, die mittlere KL-Divergenz zu verringern und gleichzeitig den zusätzlichen Speicherbedarf der Quantisierung so wenig wie möglich zu erhöhen.

⚖️ Overfitting des Kalibrierungsdatensatzes

Die meisten Frameworks berichten Perplexity und KL-Divergenz anhand eines Testsets aus Wikipedia-Artikeln. Wir haben jedoch festgestellt, dass die Verwendung des Kalibrierungsdatensatzes, der ebenfalls Wikipedia-bezogen ist, dazu führt, dass Quants overfitten und niedrigere Perplexity-Werte erzielen. Wir verwenden Calibration_v3 und Calibration_v5 Datensätze für faire Tests, die unter anderem einige Wikitext-Daten enthalten. Außerdem haben Instruct-Modelle einzigartige Chat-Templates, und die Verwendung textbasierter Kalibrierungsdatensätze ist für Instruct-Modelle nicht effektiv (bei Basismodellen ja). Tatsächlich werden die meisten imatrix-GGUFs typischerweise mit diesen Problemen kalibriert. Dadurch schneiden sie auf KL-Divergenz-Benchmarks, die ebenfalls Wikipedia-Daten verwenden, natürlich besser ab, da das Modell im Wesentlichen für diese Domäne optimiert ist.

Um eine faire und kontrollierte Bewertung sicherzustellen, verwenden wir unseren eigenen Kalibrierungsdatensatz (der für Chat-Leistung optimiert ist) nicht beim Benchmarking der KL-Divergenz. Stattdessen führten wir Tests mit denselben standardmäßigen Wikipedia-Datensätzen durch, sodass wir die Leistung unserer Dynamic-2.0-Methode direkt mit dem Basisansatz imatrix vergleichen konnten.

🔢 MMLU-Replikationsabenteuer

  • Die Replikation von MMLU 5-Shot war ein Albtraum. Wir konnten nicht MMLU-Ergebnisse für viele Modelle, darunter Llama 3.1 (8B) Instruct, Gemma 3 (12B) und andere, reproduzieren aufgrund von subtilen Implementierungsproblemen. Llama 3.1 (8B) sollte beispielsweise etwa 68,2 % erreichen, während fehlerhafte Implementierungen 35 % Genauigkeit erreichen können.

MMLU-Implementierungsprobleme
  • Llama 3.1 (8B) Instruct hat mit einer naiven MMLU-Implementierung eine MMLU-5-Shot-Genauigkeit von 67,8 %. Wir stellen jedoch fest, dass Llama „A“ und „_A“ (A mit einem Leerzeichen davor) als unterschiedliche Token-IDs tokenisiert. Wenn wir sowohl Token mit als auch ohne Leerzeichen berücksichtigen, erhalten wir 68,2 % (+0.4%)

  • Interessanterweise Llama 3 laut Eleuther AIs LLM Harness hängt ebenfalls „Die beste Antwort ist“ an die Frage an, entsprechend Llama 3s ursprünglichen MMLU-Benchmarks.

  • Es gibt viele weitere subtile Probleme, und um alles in einer kontrollierten Umgebung zu benchmarken, haben wir unsere eigene MMLU-Implementierung von Grund auf neu entworfen, indem wir github.com/hendrycks/test direkt untersucht und unsere Ergebnisse über mehrere Modelle hinweg sowie im Vergleich zu den berichteten Zahlen verifiziert haben.

Replikation und Benchmarks von Gemma 3 QAT

Das Gemma-Team hat zwei QAT-(quantization aware training-)Versionen von Gemma 3 veröffentlicht:

  1. Q4_0 GGUF – quantisiert alle Layer mittels der Formel auf Q4_0 w = q * block_scale wobei jeder Block 32 Gewichte hat. Siehe llama.cpp-Wiki für weitere Details.

  2. int4-Version – vermutlich TorchAO-int4-Stil?

Wir haben alle Q4_0-GGUF-Versionen benchmarked und umfangreiche Experimente mit dem 12B-Modell durchgeführt. Wir sehen, dass das 12B Q4_0 QAT-Modell 67,07 % erreicht während die vollständige bfloat16-12B-Version bei 5-Shot-MMLU 67,15 % erreicht. Das ist sehr beeindruckend! Das 27B-Modell ist größtenteils schon fast dort!

Metrik
1B
4B
12B
27B

MMLU 5-Shot

26.12%

55.13%

67,07 % (67,15 % BF16)

70,64 % (71,5 % BF16)

Speicherplatz

0,93 GB

2,94 GB

7,52 GB

16,05 GB

Effizienz*

1.20

10.26

5.59

2.84

Wir haben eine neue Effizienzmetrik entwickelt, die den Nutzen des Modells berechnet und dabei auch seine Speichergröße sowie seinen MMLU-5-Shot-Score berücksichtigt:

Efficiency=MMLU 5 shot score25Disk Space GB\text{Efficiency} = \frac{\text{MMLU 5 shot score} - 25}{\text{Disk Space GB}}

Zur KL-Divergenz gegenüber dem Basismodell zeigt die folgende Tabelle die Verbesserungen. Erinnerung: Je näher die KL-Divergenz bei 0 liegt, desto besser (d. h. 0 bedeutet identisch zum Modell in voller Präzision)

Quant
Basis-KLD
GB
Neue KLD
GB

IQ1_S

1.035688

5.83

0.972932

6.06

IQ1_M

0.832252

6.33

0.800049

6.51

IQ2_XXS

0.535764

7.16

0.521039

7.31

IQ2_M

0.26554

8.84

0.258192

8.96

Q2_K_XL

0.229671

9.78

0.220937

9.95

Q3_K_XL

0.087845

12.51

0.080617

12.76

Q4_K_XL

0.024916

15.41

0.023701

15.64

Wenn wir das Verhältnis des Anstiegs des Speicherplatzes und der Veränderung des KL-Divergenz-Verhältnisses auftragen, sehen wir einen viel klareren Vorteil! Unser dynamisches 2-Bit-Q2_K_XL reduziert KLD deutlich (etwa 7,5 %).

Gekürzte Ergebnistabelle für MMLU für Gemma 3 (27B). Siehe unten.

  1. Unsere dynamische 4-Bit-Version ist 2 GB kleiner und hat gleichzeitig +1 % zusätzliche Genauigkeit gegenüber der QAT-Version!

  2. Hinsichtlich der Effizienz scheinen 2-Bit-Q2_K_XL und andere sehr gut abzuschneiden!

Quant
Unsloth
Unsloth + QAT
Speichergröße
Effizienz

IQ1_M

48.10

47.23

6.51

3.42

IQ2_XXS

59.20

56.57

7.31

4.32

IQ2_M

66.47

64.47

8.96

4.40

Q2_K_XL

68.70

67.77

9.95

4.30

Q3_K_XL

70.87

69.50

12.76

3.49

Q4_K_XL

71.47

71.07

15.64

2.94

Google QAT

70.64

17.2

2.65

Hier klicken für die vollständigen QAT-Benchmarks von Googles Gemma 3 (27B):
Modell
Unsloth
Unsloth + QAT
Speichergröße
Effizienz

IQ1_S

41.87

43.37

6.06

3.03

IQ1_M

48.10

47.23

6.51

3.42

IQ2_XXS

59.20

56.57

7.31

4.32

IQ2_M

66.47

64.47

8.96

4.40

Q2_K

68.50

67.60

9.78

4.35

Q2_K_XL

68.70

67.77

9.95

4.30

IQ3_XXS

68.27

67.07

10.07

4.18

Q3_K_M

70.70

69.77

12.51

3.58

Q3_K_XL

70.87

69.50

12.76

3.49

Q4_K_M

71.23

71.00

15.41

2.98

Q4_K_XL

71.47

71.07

15.64

2.94

Q5_K_M

71.77

71.23

17.95

2.58

Q6_K

71.87

71.60

20.64

2.26

Q8_0

71.60

71.53

26.74

1.74

Google QAT

70.64

17.2

2.65

🦙 Llama-4-Fehlerbehebungen + Ausführung

Wir haben auch bei einigen Llama-4-Fehlern geholfen und sie behoben:

  • Llama 4 Scout hat die RoPE-Scaling-Konfiguration in ihrem offiziellen Repo geändert. Wir haben geholfen, Probleme in llama.cpp zu beheben, um dies zu ermöglichen Änderung hier

  • Das Epsilon von Llama 4s QK Norm für sowohl Scout als auch Maverick sollte aus der Konfigurationsdatei stammen – das bedeutet, 1e-05 und nicht 1e-06 zu verwenden. Wir haben geholfen, dies zu beheben in llama.cpp und transformers

  • Das Llama-4-Team und vLLM haben außerdem unabhängig voneinander ein Problem behoben, bei dem QK Norm über alle Heads hinweg geteilt wurde (was nicht so sein sollte) hier. MMLU Pro stieg bei der Genauigkeit von 68,58 % auf 71,53 %.

  • Wolfram Ravenwolf zeigte, dass unsere GGUFs über llama.cpp eine deutlich höhere Genauigkeit erreichen als Inferenzanbieter von Drittanbietern – dies war höchstwahrscheinlich eine Kombination der oben erläuterten Probleme und wahrscheinlich auch auf Quantisierungsprobleme zurückzuführen.

Wie in unserer Grafik gezeigt, liefert unsere 4-Bit-Dynamic-QAT-Quantisierung eine bessere Leistung bei 5-Shot-MMLU und ist gleichzeitig kleiner.

Llama 4 Scout ausführen:

Um Llama 4 Scout auszuführen, klonen Sie zuerst llama.cpp:

Dann laden Sie unsere neue Dynamic-v2.0-Quantisierung für Scout herunter:

Und und lassen wir Inferenz durchführen!

Zuletzt aktualisiert

War das hilfreich?