🦥Unsloth Dynamic 2.0 GGUFs
Ein großes neues Upgrade für unsere Dynamic Quants!
Wir freuen uns, unsere Dynamic v2.0-Quantisierungsmethode vorzustellen – ein großes Upgrade gegenüber unseren vorherigen Quants. Diese neue Methode übertrifft führende Quantisierungsmethoden und setzt neue Maßstäbe für 5-shot MMLU und KL-Divergenz.
Das bedeutet, dass Sie jetzt quantisierte LLMs ausführen und feinabstimmen können, wobei so viel Genauigkeit wie möglich erhalten bleibt! Sie können die 2.0 GGUFs auf jeder Inferenz-Engine wie llama.cpp, Ollama, Open WebUI usw. ausführen.
10. Sept. 2025 Update: Ihr wolltet härtere Benchmarks, also präsentieren wir Aider Polyglot Ergebnisse! Unser dynamisches 3-Bit DeepSeek V3.1 GGUF erzielt 75.6%, und übertrifft damit viele SOTA-LLMs in voller Genauigkeit. Weiterlesen.
Der Hauptvorteil bei der Verwendung des Unsloth-Pakets und der Modelle ist unsere aktive Rolle bei der Behebung kritischer Fehler 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)zusammengearbeitet und wesentliche Fixes beigetragen, die die Genauigkeit erheblich verbessern.
Detaillierte Analyse unserer Benchmarks und Bewertungen weiter unten.


💡 Was ist neu in Dynamic v2.0?
Überarbeitete Schichtauswahl für GGUFs + safetensors: Unsloth Dynamic 2.0 quantisiert nun Schichten selektiver, intelligenter und umfassender. Anstatt nur ausgewählte Schichten zu ändern, passen wir jetzt dynamisch den Quantisierungstyp jeder möglichen Schicht an, und die Kombinationen unterscheiden sich für jede Schicht und jedes Modell.
Aktuelle ausgewählte und alle zukünftigen GGUF-Uploads werden Dynamic 2.0 und unseren neuen Kalibrierungsdatensatz nutzen. Der Datensatz enthält mehr als >1,5M Token (je nach Modell) und besteht aus hochwertigen, handkuratierten und bereinigten Daten – um die Leistung bei konversationalen Chats erheblich zu verbessern.
Früher war unsere Dynamic-Quantisierung (DeepSeek-R1 1,58-bit GGUF) nur für MoE-Architekturen effektiv. Dynamic 2.0-Quantisierung funktioniert jetzt bei allen Modellen (einschließlich MoEs & Nicht-MoEs).
Modellspezifische Quants: Jedes Modell verwendet jetzt ein maßgeschneidertes Quantisierungsschema. Z. B. unterscheiden sich die in Gemma 3 quantisierten Schichten deutlich von denen in Llama 4.
Um die Effizienz, insbesondere auf Apple Silicon und ARM-Geräten, zu maximieren, fügen wir jetzt auch Q4_NL, Q5.1, Q5.0, Q4.1 und Q4.0 Formate hinzu.
Um genaue Benchmarks sicherzustellen, haben wir ein internes Evaluationsframework aufgebaut, das die offiziell berichteten 5-shot MMLU-Werte von Llama 4 und Gemma 3 reproduziert. Dies ermöglichte einen Apfel-zu-Apfel-Vergleich zwischen Full-Precision und Dynamic v2.0, QAT und standard imatrix GGUF-Quants.


Alle zukünftigen GGUF-Uploads werden Unsloth Dynamic 2.0 nutzen, und unsere Dynamic 4-bit safetensor-Quants werden in Zukunft ebenfalls davon profitieren.
📊 Warum KL-Divergenz?
Genauigkeit ist nicht alles, was man braucht zeigt, wie das Beschneiden von Schichten, sogar durch Auswahl unnötiger Schichten, immer noch große Unterschiede in Bezug auf "Flips" ergibt. Ein "Flip" ist definiert als eine Antwort, die sich von falsch zu richtig oder umgekehrt ändert. Die Arbeit zeigt, wie MMLU möglicherweise nicht abnimmt, wenn wir Schichten beschneiden oder quantisieren, aber das liegt daran, dass einige falsche Antworten sich zu richtigen Antworten "geflipped" haben könnten. Unser Ziel ist es, das ursprüngliche Modell nachzubilden, daher ist das Messen von "Flips" eine gute Metrik.


KL-Divergenz sollte der Goldstandard für die Meldung von Quantisierungsfehlern sein laut dem Forschungspapier "Accuracy is Not All You Need". Perplexity zu verwenden ist inkorrekt da sich Ausgabewert von Tokens aufheben können, daher müssen wir KLD verwenden!
Die Arbeit zeigt außerdem, dass KL-Divergenz interessanterweise stark mit Flips korreliert, und unser Ziel ist es daher, die mittlere KL-Divergenz zu reduzieren, während wir die Zunahme des Speicherplatzes durch die Quantisierung so gering wie möglich halten.
⚖️ Überanpassung an den Kalibrierungsdatensatz
Die meisten Frameworks melden Perplexity und KL-Divergenz unter Verwendung eines Testsets von Wikipedia-Artikeln. Wir stellten jedoch fest, dass die Verwendung des Kalibrierungsdatensatzes, der ebenfalls Wikipedia-bezogen ist, dazu führt, dass Quants überangepasst werden und niedrigere Perplexity-Werte erreichen. Wir verwenden Calibration_v3 und Calibration_v5 Datensätze für faire Tests, die neben anderem auch etwas Wikitext-Daten enthalten. Außerdem haben Instruct-Modelle einzigartige Chat-Vorlagen, und die Verwendung nur textbasierter Kalibrierungsdatensätze ist für Instruct-Modelle nicht effektiv (bei Basismodellen ja). Tatsächlich werden die meisten imatrix GGUFs typischerweise unter diesen Problemen kalibriert. Infolgedessen schneiden sie naturgemäß besser bei KL-Divergenz-Benchmarks ab, die ebenfalls Wikipedia-Daten verwenden, da das Modell im Wesentlichen für dieses Gebiet optimiert ist.
Um eine faire und kontrollierte Evaluation sicherzustellen, verwenden wir nicht unseren eigenen Kalibrierungsdatensatz (der für Chat-Leistung optimiert ist) beim Benchmarking der KL-Divergenz. Stattdessen führten wir Tests mit denselben Standard-Wikipedia-Datensätzen durch, sodass wir die Leistung unserer Dynamic 2.0-Methode direkt mit dem Basis-imatrix-Ansatz vergleichen konnten.
🔢 MMLU-Replikationsabenteuer
Die Replikation von MMLU 5-shot war albtraumhaft. Wir konnten nicht MMLU-Ergebnisse für viele Modelle replizieren, einschließlich Llama 3.1 (8B) Instruct, Gemma 3 (12B) und anderer, aufgrund von feinen Implementierungsproblemen. Llama 3.1 (8B) sollte zum Beispiel ~68,2% erreichen, während falsche Implementierungen 35% Genauigkeit erreichen können.

Llama 3.1 (8B) Instruct hat eine MMLU 5-shot-Genauigkeit von 67,8% bei einer naiven MMLU-Implementierung. Wir stellen jedoch fest, dass Llama "A" und "_A" (A mit einem führenden Leerzeichen) als unterschiedliche Token-IDs tokenisiert. Wenn wir sowohl getrennte als auch nicht-getrennte Tokens berücksichtigen, erhalten wir 68,2% (+0.4%)
Interessanterweise fügt Llama 3 gemäß Eleuther AIs LLM Harness auch an "The best answer is" zur Frage hinzu, in Anlehnung an Llama 3s ursprüngliche 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 entworfen, indem wir github.com/hendrycks/test direkt untersucht und unsere Ergebnisse über mehrere Modelle hinweg mit den berichteten Zahlen verglichen und verifiziert.
✨ Gemma 3 QAT Replikation, Benchmarks
Das Gemma-Team veröffentlichte zwei QAT (quantization aware training)-Versionen von Gemma 3:
Q4_0 GGUF - quantisiert alle Schichten zu Q4_0 mittels der Formel
w = q * block_scalewobei jeder Block 32 Gewichte hat. Siehe llama.cpp wiki für weitere Details.int4-Version - vermutlich TorchAO int4-Stil?
Wir haben alle Q4_0 GGUF-Versionen benchmarked und umfangreiche Experimente am 12B-Modell durchgeführt. Wir sehen, dass das 12B Q4_0 QAT-Modell 67,07% erreicht während die vollständige bfloat16 12B-Version 67,15% beim 5-shot MMLU erreicht. Das ist sehr beeindruckend! Das 27B-Modell ist größtenteils fast dort!
MMLU 5-shot
26.12%
55.13%
67,07% (67,15% BF16)
70,64% (71,5% BF16)
Speicherplatz
0,93GB
2,94GB
7,52GB
16,05GB
Effizienz*
1.20
10.26
5.59
2.84
Wir haben eine neue Effizienzmetrik entwickelt, die die Nützlichkeit des Modells berechnet und dabei sowohl seine Festplattengröße als auch die MMLU 5-shot-Punktzahl berücksichtigt:
Wir müssen minus 25 ziehen, da MMLU 4 Mehrfachauswahlen hat - A, B, C oder D. Angenommen, wir erstellen ein Modell, das einfach zufällig Antworten wählt – es würde 25% Genauigkeit erreichen und nur wenige Bytes Speicherplatz benötigen. Das ist jedoch eindeutig kein nützliches Modell.
Im Vergleich der KL-Divergenz zum Basismodell zeigt die folgende Tabelle die Verbesserungen. Zur Erinnerung: Je näher die KL-Divergenz an 0 liegt, desto besser (d. h. 0 bedeutet identisch mit dem Full-Precision-Modell)
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 der Zunahme des Speicherplatzes und die Veränderung des KL-Divergenz-Verhältnisses aufzeichnen, sehen wir einen viel klareren Nutzen! Unser dynamisches 2-Bit Q2_K_XL reduziert die KLD ziemlich stark (etwa 7,5%).
Gekürzte Ergebnistabelle für MMLU für Gemma 3 (27B). Siehe unten.
Unsere dynamische 4-Bit-Version ist 2 GB kleiner und hat gleichzeitig +1% zusätzliche Genauigkeit gegenüber der QAT-Version!
In puncto Effizienz schneiden 2-Bit Q2_K_XL und andere sehr gut ab!
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
Klicken Sie hier für die vollständigen Google Gemma 3 (27B) QAT-Benchmarks:
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 Bugfixes + Ausführung
Wir haben außerdem bei einigen Llama 4-Bugs geholfen und diese behoben:
Llama 4 Scout änderte die RoPE-Scaling-Konfiguration in ihrem offiziellen Repo. Wir halfen, 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 halfen dabei, diese in llama.cpp und transformers
Das Llama 4-Team und vLLM haben unabhängig auch ein Problem behoben, bei dem QK Norm über alle Heads geteilt wurde (was nicht so sein sollte) hier. MMLU Pro stieg von 68,58% auf 71,53% Genauigkeit.
Wolfram Ravenwolf zeigte, wie unsere GGUFs über llama.cpp deutlich höhere Genauigkeit erreichen als Drittanbieter-Inferenzanbieter – dies war höchstwahrscheinlich eine Kombination der oben erklärten Probleme und wahrscheinlich auch auf Quantisierungsprobleme zurückzuführen.

Wie in unserem Diagramm gezeigt, liefern unsere 4-Bit Dynamic QAT-Quantisierungen eine bessere Leistung beim 5-shot MMLU und sind gleichzeitig kleiner in der Größe.
Ausführen von Llama 4 Scout:
Um beispielsweise Llama 4 Scout auszuführen, klonen Sie zuerst llama.cpp:
Laden Sie dann unseren neuen Dynamic v2.0-Quant für Scout herunter:
Und nun lassen Sie uns Inferenz durchführen!
Erfahren Sie hier mehr zum Ausführen von Llama 4: https://docs.unsloth.ai/basics/tutorial-how-to-run-and-fine-tune-llama-4
Zuletzt aktualisiert
War das hilfreich?

