Wissen
Quantisierung
Quantisierung reduziert die numerische Präzision von Gewichten, Aktivierungen oder Key-Value-Caches eines Large Language Models. Werte werden durch eine begrenzte Menge darstellbarer Zahlen angenähert. Das kann Speicherbedarf und Datentransfer senken und mit geeigneter Hardware die Inferenz beschleunigen. Der Gewinn hängt vom Zahlenformat, dem Quantisierungsverfahren, der Laufzeitumgebung und der tolerierbaren Veränderung der Modellqualität ab.
Die numerische Darstellung ausgewählter Modellwerte: weniger Bits pro Wert oder ein kompakteres Quantisierungsschema.
Weniger Speicher für Gewichte oder KV Cache, geringerer Datentransfer und potenziell effizientere Berechnung.
Quantisierungsfehler und zusätzlicher Umrechnungsaufwand müssen gegen Speicherersparnis, Laufzeit und Aufgabenqualität geprüft werden.
Dokument-Metadaten
Worum geht es in diesem Wissensbeitrag?
Einordnung des Inhalts
- Entity Class
- Wissen
- Content-Typ
- Technischer Grundlagenbeitrag
- Hauptthema
- Quantisierung bei Large Language Models
- Alternative Bezeichnungen
- Quantization, LLM Quantization, niedrigbitige Modellrepräsentation
- Themenkategorie
- Numerische Formate / Modellkompression / LLM-Inferenz / effiziente Modellanpassung
- Betrachtete Objekte
- Modellgewichte, Laufzeitaktivierungen und Key-Value-Cache
- Kernfrage
- Wie lassen sich LLMs mit weniger Bits darstellen und ausführen, ohne die für eine konkrete Aufgabe erforderliche Qualität zu verlieren?
- Bezugsrahmen
- Erklärung grundlegender Verfahren und ausgewählter Forschungsarbeiten; keine universelle Rangliste von Formaten oder Implementierungen.
Definition
Was bedeutet Quantisierung bei einem LLM?
Quantisierung bildet numerische Werte auf eine endliche Menge von Repräsentationsstufen ab. Bei LLMs werden beispielsweise ursprünglich in FP16 oder BF16 gespeicherte Gewichte durch 8-Bit- oder 4-Bit-Repräsentationen angenähert. Die Anzahl der Parameter bleibt bei einer reinen Gewichtsquantisierung grundsätzlich gleich; verändert wird ihre Darstellung.
Definition als Faktenstruktur
- Eingabe
- Ein Tensor mit höherpräzisen Werten, beispielsweise eine Gewichtsmatrix.
- Transformation
- Skalieren, gegebenenfalls einen Nullpunkt berücksichtigen, runden und auf den zulässigen Wertebereich begrenzen.
- Ausgabe
- Kompakte Codes und die zur Interpretation benötigten Skalen, Nullpunkte oder Codebücher.
- Informationsverlust
- Unterschiedliche ursprüngliche Werte können auf dieselbe Repräsentationsstufe fallen. Die exakte ursprüngliche Zahl ist danach im Allgemeinen nicht rekonstruierbar.
- Ziel
- Ein günstigeres Verhältnis zwischen Speicher, Datentransfer, Rechenaufwand und aufgabenbezogener Qualität.
- Wichtige Unterscheidung
- Speicherformat, Rechenformat und Präzision der Akkumulation müssen nicht identisch sein.
Wissenschaftliche Grundlage: Jacob et al. (Einordnung im Quellenverzeichnis).
Quantisierungsobjekte
Gewichte, Aktivierungen und KV Cache sind unterschiedliche Ziele
Eine Angabe wie „4-Bit-Modell“ beschreibt nicht automatisch alle numerischen Werte eines LLM-Systems. Gewichte sind dauerhaft gespeicherte Parameter. Aktivierungen entstehen während der Berechnung. Der KV Cache hält Attention-Repräsentationen bereits verarbeiteter Tokens für weitere Decoding-Schritte bereit.
Weight Quantization
Komprimiert trainierte Parameter. Weight-only-Verfahren können Gewichte niedrigbitig speichern, während Aktivierungen und große Teile der Berechnung höherpräzise bleiben.
Activation Quantization
Komprimiert Zwischenwerte der aktuellen Eingabe. Ihre Verteilung ist eingabeabhängig; große Ausreißer können die Wahl der Skalen erschweren.
KV-Cache Quantization
Komprimiert gespeicherte Keys und Values. Das adressiert Speicher, der bei langen Kontexten und mehreren gleichzeitig aktiven Sequenzen wächst.
Eine Quantisierungskonfiguration eindeutig beschreiben
- W4A16
- Üblicherweise 4-Bit-Gewichte und 16-Bit-Aktivierungen. Die Bezeichnung allein legt weder den KV-Cache-Datentyp noch alle internen Rechenoperationen fest.
- W8A8
- Üblicherweise 8-Bit-Gewichte und 8-Bit-Aktivierungen für die betreffenden Operationen. Weitere Komponenten können höherpräzise bleiben.
- Cache-Präzision
- Gesondert angeben, beispielsweise 16-Bit-KV-Cache oder niedrigbitiger Cache mit einem höherpräzisen Restbereich.
- Mixed Precision
- Verschiedene Tensoren, Layer, Kanäle oder Operationen verwenden unterschiedliche Präzision.
Wissenschaftliche Grundlage: LLM.int8() (Einordnung im Quellenverzeichnis); SmoothQuant (Einordnung im Quellenverzeichnis); KIVI (Einordnung im Quellenverzeichnis).
Mechanismus
Wie funktioniert affine Integer-Quantisierung?
Bei affiner Integer-Quantisierung verbinden eine positive Skala s und ein ganzzahliger Nullpunkt z die ursprünglichen Werte mit den Integer-Codes. Rundung erzeugt den Quantisierungsfehler; Clipping begrenzt Werte außerhalb des gewählten Bereichs.
q = clip(round(x / s) + z, q_min, q_max)x̂ = s × (q − z)Der rekonstruierte Wert x̂ nähert x an. Die Formel beschreibt ein uniformes affines Schema, nicht jedes Gleitkommaformat oder jedes nichtuniforme Codebuch.
Bestandteile der Abbildung
- x
- Ursprünglicher numerischer Wert.
- s
- Schrittweite beziehungsweise Skala der Quantisierung; sie muss positiv sein.
- z
- Integer-Code für den realen Wert null.
- q_min / q_max
- Unterste und oberste erlaubte Integer-Repräsentation.
- round
- Rundung auf einen Integer-Code. Bei Werten genau zwischen zwei Stufen hängt die Auswahl von der Rundungsregel ab.
- clip
- Begrenzung auf den erlaubten Codebereich. Werte außerhalb des kalibrierten Bereichs werden gesättigt.
- Dequantisierung
- Rekonstruktion einer höherpräzisen Näherung aus Code und Skala; keine Wiederherstellung der verlorenen Originalpräzision.
Wissenschaftliche Grundlage: Jacob et al. (Einordnung im Quellenverzeichnis).
Rechenbeispiel
Ein einzelner Wert wird auf eine diskrete Stufe gerundet
Das folgende Beispiel ist eine didaktische Berechnung, kein gemessenes Ergebnis eines quantisierten LLM. Angenommen wird eine symmetrische Quantisierung mit s = 0,1, z = 0 und einem Codebereich von −7 bis +7. Dieser Bereich nutzt 15 Stufen, die sich mit 4 Bits codieren lassen; ein möglicher Code bleibt ungenutzt.
Quantisierung von x = 0,26
- Eingabewert
- x = 0,26
- Skalierung
- x / s = 0,26 / 0,1 = 2,6
- Rundung
- q = round(2,6) = 3; der Wert liegt im zulässigen Bereich.
- Rekonstruktion
- x̂ = 0,1 × 3 = 0,30
- Absoluter Fehler
- |x − x̂| = |0,26 − 0,30| = 0,04
- Clipping-Beispiel
- x = 0,95 würde auf q = 7 begrenzt und als 0,70 rekonstruiert. Der Fehler wäre 0,25.
- Interpretation
- Bei festem Wertebereich erlauben mehr Stufen eine feinere Auflösung. Bei fester Stufenzahl macht ein größerer abgedeckter Bereich die Schritte gröber.
Skalen und Gruppen
Die Quantisierungsgranularität bestimmt, welche Werte sich eine Skala teilen
Eine einzige Skala für einen großen Tensor ist einfach, kann aber ungleichartige Werteverteilungen schlecht abbilden. Feinere Gruppen passen sich lokal an. Dafür benötigen sie mehr Metadaten und eine dazu passende Implementierung.
Typische Granularitäten
- Per-Tensor
- Alle Werte eines Tensors teilen eine Skala und gegebenenfalls einen Nullpunkt.
- Per-Channel
- Einzelne Kanäle erhalten eigene Skalen. Welche Achse als Kanal gilt, muss für den jeweiligen Tensor dokumentiert sein.
- Group-wise / Block-wise
- Kleine Gruppen von Werten teilen Quantisierungsparameter. Die Gruppengröße beeinflusst Rekonstruktionsfehler, Metadatenbedarf und Kernel-Kompatibilität.
- Per-Token
- Aktivierungs- oder Cache-Werte einer Tokenposition erhalten eigene Quantisierungsparameter.
- Symmetrisch
- Der Wertebereich ist um null ausgerichtet; häufig wird z = 0 verwendet.
- Asymmetrisch
- Ein Nullpunkt erlaubt einen gegenüber null verschobenen Wertebereich. „Asymmetrisch“ bezeichnet in KIVI zusätzlich die unterschiedliche Behandlung von Keys und Values.
- Effektive Bits pro Wert
- Nutzbits plus anteilige Skalen, Nullpunkte, Padding und höherpräzise Ausnahmen; daher häufig mehr als die nominelle Bitbreite.
Wissenschaftliche Grundlage: Jacob et al. (Einordnung im Quellenverzeichnis); QLoRA (Einordnung im Quellenverzeichnis); KIVI (Einordnung im Quellenverzeichnis).
Zahlenformate
INT4, INT8, FP8 und NF4 sind keine austauschbaren Bezeichnungen
FP16 und BF16
Beide verwenden 16 Bits, verteilen sie aber unterschiedlich auf Exponent und Mantisse. Gleiche Speicherbreite bedeutet deshalb weder identischen Wertebereich noch identische numerische Auflösung.
INT8 und INT4
Ganzzahlige Codes werden mit Skalen und gegebenenfalls Nullpunkten interpretiert. In der Matrixberechnung kann eine höherpräzise Akkumulation erforderlich sein.
FP8
FP8 umfasst unterschiedliche Formate. E4M3 und E5M2 unterscheiden sich unter anderem in Exponenten- und Mantissenbreite und damit in Dynamik und Präzision.
NF4
NormalFloat 4 verwendet nicht gleichmäßig verteilte Repräsentationswerte für blockweise skalierte Gewichte. Das in QLoRA eingeführte Format orientiert sich an einer normalverteilten Gewichtsbasis und ist kein gewöhnliches INT4.
Speicherung und Berechnung getrennt angeben
- Weight-only-Inferenz
- Niedrigbitig gepackte Gewichte können im Kernel zur Berechnung in ein höherpräzises Format dequantisiert werden.
- Niedrigbitige Matrixoperation
- Gewichte und Aktivierungen können niedrigpräzise multipliziert werden, während die Summe in einem breiteren Format akkumuliert wird.
- Formatwahl
- Bitbreite allein reicht nicht: Skalierung, Gruppen, Ausnahmebehandlung, Hardware und unterstützte Operationen bestimmen das tatsächliche Verhalten.
Wissenschaftliche Grundlage: FP8 Formats (Einordnung im Quellenverzeichnis); QLoRA (Einordnung im Quellenverzeichnis).
Zeitpunkt
PTQ und QAT unterscheiden sich darin, wann Quantisierungsfehler berücksichtigt werden
Ein trainiertes Modell nachträglich quantisieren
PTQ setzt bei einem bestehenden Modell an. Je nach Verfahren werden Skalen direkt bestimmt oder Kalibrierungsdaten verwendet, um die Rekonstruktion wichtiger Berechnungen zu verbessern. Ein vollständiges erneutes Modelltraining ist dafür nicht erforderlich.
Quantisierung während des Trainings berücksichtigen
QAT simuliert beziehungsweise berücksichtigt Quantisierungseffekte im Training oder in einer zusätzlichen Anpassungsphase. Trainierbare Parameter können sich an diese Fehler anpassen. Training und Gradientenauswertung erfolgen dabei nicht zwingend durchgehend in niedriger Bitbreite.
Praktische Unterschiede
- PTQ-Aufwand
- Konvertierung und gegebenenfalls Kalibrierung; Methoden können sich in Datenbedarf und Optimierung stark unterscheiden.
- QAT-Aufwand
- Zusätzliche Trainingsschritte, geeignete Daten und eine Quantisierungssimulation, die zur späteren Ausführung passt.
- Kein allgemeiner Sieger
- Die Qualität hängt von Modell, Zielpräzision, Verfahren und Aufgabe ab. QAT ist nicht automatisch in jedem Szenario wirtschaftlicher oder besser.
- QLoRA-Abgrenzung
- Das Training von Adaptern auf einer eingefrorenen quantisierten Modellbasis ist nicht gleichbedeutend mit QAT aller Basisgewichte.
Wissenschaftliche Grundlage: Jacob et al. (Einordnung im Quellenverzeichnis); GPTQ (Einordnung im Quellenverzeichnis); QLoRA (Einordnung im Quellenverzeichnis).
Kalibrierung
Kalibrierungsdaten und Ausreißer beeinflussen den Quantisierungsfehler
Kalibrierung beobachtet relevante Werte oder Layer-Ausgaben mit ausgewählten Eingaben und bestimmt daraus Quantisierungsparameter. Diese Eingaben dienen nicht automatisch dem Lernen neuer Fachinformationen. Ausreißer sind Werte oder Dimensionen mit ungewöhnlich großen Beträgen; sie können bei einer gemeinsamen Skala die Auflösung für kleinere Werte verschlechtern.
Warum eine naive Skalierung scheitern kann
- Breiter Wertebereich
- Wenige große Beträge erzwingen große Schritte, obwohl viele übrige Werte dicht um null liegen.
- Clipping
- Ein engerer Bereich kann kleinere Werte genauer darstellen, schneidet aber Ausreißer ab. Der beste Kompromiss ist aufgaben- und verfahrensabhängig.
- Repräsentative Eingaben
- Für kalibrierungsabhängige Verfahren sollten Sprache, Textlänge und Aufgabenmuster der geplanten Nutzung angemessen vertreten sein.
- Getrennte Evaluation
- Kalibrierungsdaten und abschließende Testdaten trennen, damit eine gute Rekonstruktion auf bekannten Eingaben nicht mit allgemeiner Qualität verwechselt wird.
- Ausnahmebehandlung
- LLM.int8() isoliert Ausreißerdimensionen für höherpräzise Berechnung; SmoothQuant verwendet eine äquivalente Skalierung von Aktivierungen und Gewichten.
Wissenschaftliche Grundlage: LLM.int8() (Einordnung im Quellenverzeichnis); SmoothQuant (Einordnung im Quellenverzeichnis).
Gewichtsquantisierung
GPTQ und AWQ nutzen unterschiedliche Informationen zur Fehlerbegrenzung
GPTQ: Rekonstruktion mit Information zweiter Ordnung
- Quantisierungsobjekt
- Modellgewichte nach dem Training.
- Mechanismus
- GPTQ nutzt approximierte Information zweiter Ordnung, um Gewichte schrittweise zu quantisieren und Fehler durch Anpassung verbleibender Gewichte zu kompensieren.
- Datenbezug
- Kalibrierungseingaben liefern Informationen über die Layer-Berechnungen, deren Rekonstruktion erhalten werden soll.
- Forschungsaussage
- Die Arbeit untersucht unter anderem 3- und 4-Bit-Gewichte in den dort getesteten generativen Transformern. Die Ergebnisse sind an diese Modelle, Aufgaben und Implementierungen gebunden.
- Grenze
- GPTQ beschreibt ein Quantisierungsverfahren; der Name allein garantiert keinen passenden Inferenzkernel und keine bestimmte Geschwindigkeit.
Wissenschaftliche Grundlage: GPTQ (Einordnung im Quellenverzeichnis).
AWQ: Aktivierungen informieren die Gewichtsskalierung
- Quantisierungsobjekt
- Niedrigbitige Weight-only-Repräsentation.
- Mechanismus
- AWQ verwendet Aktivierungsstatistiken zur Identifikation wichtiger Gewichtskanäle und schützt sie durch geeignete Skalierung vor übermäßigen Quantisierungsfehlern.
- Wichtige Abgrenzung
- „Activation-aware“ bedeutet nicht automatisch, dass die Aktivierungen selbst niedrigbitig gespeichert oder berechnet werden.
- Forschungsaussage
- Die Arbeit untersucht Quantisierungsqualität und eine speziell darauf abgestimmte Inferenzimplementierung. Algorithmus und Implementierung tragen gemeinsam zu den Ergebnissen bei.
- Grenze
- Ein AWQ-Checkpoint und ein GPTQ-Checkpoint sind ohne passende Konvertierung nicht automatisch austauschbar.
Wissenschaftliche Grundlage: AWQ (Einordnung im Quellenverzeichnis).
Aktivierungsquantisierung
SmoothQuant verschiebt die Quantisierungsschwierigkeit zwischen Aktivierungen und Gewichten
SmoothQuant setzt an großen Aktivierungswerten an. Eine mathematisch äquivalente kanalweise Skalierung glättet die Aktivierungen und verschiebt einen Teil der numerischen Schwierigkeit zu den Gewichten. So wird in den untersuchten LLMs eine W8A8-Quantisierung erleichtert.
Prinzip und Geltungsbereich
- Vor der Rundung
- Die gekoppelte Skalierung von Aktivierungen und Gewichten erhält die betreffende lineare Berechnung mathematisch.
- Nach der Rundung
- Die niedrigbitigen Repräsentationen bleiben Näherungen. Die äquivalente Skalierung beseitigt nicht jeden Quantisierungsfehler.
- Ziel
- Gewichte und Aktivierungen so vorbereiten, dass geeignete 8-Bit-Matrixoperationen eingesetzt werden können.
- Grenze
- Qualität und Geschwindigkeit müssen für die tatsächliche Hardware, das konkrete Modell und den jeweiligen Workload überprüft werden.
Wissenschaftliche Grundlage: SmoothQuant (Einordnung im Quellenverzeichnis).
Effiziente Modellanpassung
QLoRA verbindet eine quantisierte Modellbasis mit trainierbaren Adaptern
QLoRA hält die quantisierte Modellbasis eingefroren und trainiert zusätzliche LoRA-Parameter. Die Basisgewichte werden für Vorwärts- und Rückwärtsberechnungen in ein höherpräzises Rechenformat dequantisiert. Damit ist ein Modell in 4-Bit-Speicherung nicht zugleich ein durchgehend mit 4-Bit-Arithmetik trainiertes Modell.
Drei zentrale Speichermechanismen
- NF4
- Ein nichtuniformes 4-Bit-Codebuch für blockweise skalierte Gewichte.
- Double Quantization
- Auch Quantisierungskonstanten werden quantisiert, um den anteiligen Speicherbedarf der Metadaten zu reduzieren.
- Paged Optimizers
- Adressieren Speicherspitzen während der Anpassung; dieser Mechanismus ist von der Gewichtscodierung zu unterscheiden.
- Trainierbare Parameter
- LoRA-Adapter statt vollständiger Aktualisierung aller Basisgewichte.
- Einordnung
- QLoRA ist ein Verfahren zur effizienten Modellanpassung auf einer quantisierten Basis, nicht bloß ein neues Dateiformat für Inferenz.
Wissenschaftliche Grundlage: QLoRA (Einordnung im Quellenverzeichnis).
KV-Cache-Quantisierung
Kleinere Gewichte lösen das Speicherproblem langer Kontexte nicht vollständig
Gewichtsquantisierung reduziert den Speicher für Modellparameter. Ein höherpräziser KV Cache kann trotzdem einen großen Teil des verfügbaren Speichers belegen. Seine Größe hängt bei einem vollständigen Cache unter anderem von Sequenzlänge, Layerzahl, KV-Heads und gleichzeitig aktiven Sequenzen ab.
KIVI als Beispiel einer getrennten Cache-Optimierung
- Unterschiedliche Verteilungen
- KIVI analysiert unterschiedliche Ausreißermuster in Key- und Value-Caches der untersuchten Modelle.
- Keys
- Die vorgeschlagene Quantisierung verwendet kanalweise Skalen innerhalb von Token-Gruppen.
- Values
- Die vorgeschlagene Quantisierung verwendet tokenweise Skalen.
- Restbereich
- Neuere beziehungsweise noch nicht vollständig gruppierte Cache-Werte bleiben in einem höherpräzisen Bereich.
- Einordnung der 2 Bits
- Die niedrigbitigen Gruppen werden mit 2 Bits quantisiert; Metadaten und höherpräzise Restwerte machen den gesamten Cache größer als eine reine 2-Bit-Idealrechnung.
- Grenze
- Cache-Quantisierung kann die Attention-Berechnung verändern. Lange Kontexte und aufgabenrelevante Details sollten separat evaluiert werden.
Wissenschaftliche Grundlage: KIVI (Einordnung im Quellenverzeichnis).
Die Entstehung und Größenfaktoren des Caches erklärt der Wissensbeitrag zum KV Cache.
Speicherbedarf
Wie viel Speicher spart Quantisierung theoretisch?
Für P Parameter mit b Bits pro Parameter beträgt der reine Gewichtsspeicher näherungsweise P × b / 8 Bytes. Die Rechnung setzt dicht gepackte Codes voraus und enthält weder Skalen und Nullpunkte noch unquantisierte Layer, KV Cache, Aktivierungen oder Laufzeitpuffer.
M_Gewichte = P × b / 8 BytesKompressionsfaktor = b_Referenz / b_ZielRechenbeispiel: Modell mit 8 Milliarden Parametern
- Annahme
- Alle 8.000.000.000 Parameter werden einheitlich im angegebenen Format gespeichert. Das ist eine Modellrechnung, kein gemessener Checkpoint.
- 16 Bits
- 16.000.000.000 Bytes = 16 GB ≈ 14,90 GiB.
- 8 Bits
- 8.000.000.000 Bytes = 8 GB ≈ 7,45 GiB; idealisiert halb so groß wie 16 Bits.
- 4 Bits
- 4.000.000.000 Bytes = 4 GB ≈ 3,73 GiB; idealisiert ein Viertel der 16-Bit-Gewichte.
- Einheiten
- 1 GB = 1.000.000.000 Bytes; 1 GiB = 1.073.741.824 Bytes.
- Tatsächlicher Speicher
- Zusätzlich fallen Quantisierungsmetadaten, gegebenenfalls höherpräzise Komponenten, KV Cache, Aktivierungen und Arbeitsbereiche der Laufzeit an.
- Konsequenz
- 4 GB reine Gewichtscodes sind keine Zusage, dass das komplette Modell mit beliebigem Kontext auf einer GPU mit 4 GB Speicher ausführbar ist.
Inferenzleistung
Weniger Bits bedeuten nicht automatisch weniger Latenz
Quantisierung kann die Menge der gelesenen Gewichtsdaten verringern. Davon können speicherbandbreitenbegrenzte Berechnungen profitieren. Der Gesamteffekt hängt aber davon ab, ob die Laufzeitumgebung das konkrete Format effizient verarbeitet und welche Operationen den Workload begrenzen.
Speicherersparnis und Beschleunigung getrennt prüfen
- Prefill
- Verarbeitet den Prompt. Bei vielen Prompt-Tokens kann der Rechendurchsatz für Matrixoperationen besonders wichtig werden.
- Decode
- Erzeugt Tokens schrittweise. Bei kleinen Batches kann das wiederholte Lesen der Gewichte einen hohen Anteil des Aufwands ausmachen.
- Kernel-Unterstützung
- Die Hardware und die Laufzeit brauchen passende Operationen für Zahlenformat, Packung und Gruppengröße.
- Dequantisierungsaufwand
- Umrechnen und Entpacken können Vorteile teilweise aufheben; fusionierte Kernel können diesen Zusatzaufwand begrenzen.
- Batch und Kontext
- Mehr Parallelität und längere Kontexte verändern den Engpass. Weight-only-Ergebnisse bei kurzen Einzelanfragen lassen sich nicht pauschal übertragen.
- Faire Referenz
- Gleicher Modellstand, gleiche Hardware, Eingaben, Ausgabelängen, Parallelität und Qualitätsanforderungen; Laufzeitversion und Kernel dokumentieren.
Wissenschaftliche Grundlage: GPTQ (Einordnung im Quellenverzeichnis); AWQ (Einordnung im Quellenverzeichnis); SmoothQuant (Einordnung im Quellenverzeichnis).
Qualität
Quantisierungsfehler und Antwortqualität sind verschiedene Messgrößen
Ein kleiner Rekonstruktionsfehler in einem Tensor beweist nicht, dass ein LLM bei jeder Aufgabe gleich gut antwortet. Umgekehrt muss eine numerische Abweichung nicht zu einem relevanten fachlichen Fehler führen. Entscheidend ist die gemessene Qualität in der vorgesehenen Nutzung.
Ein Evaluationssatz sollte mehrere Fehlerarten abdecken
- Sprachmodellierung
- Perplexity kann Änderungen in der Vorhersage von Text erfassen. Sie ersetzt keine Bewertung fachlicher Antworten.
- Wissen und Retrieval-Nutzung
- Prüfen, ob bereitgestellte Fakten korrekt übernommen werden und Aussagen durch die jeweiligen Quellen gedeckt bleiben.
- Reasoning und Code
- Mehrschrittige Aufgaben und ausführbare Codeprüfungen ergänzen reine Wissensfragen.
- Strukturierte Ausgabe
- Schema-Konformität, Argumentwerte und korrekte Werkzeugauswahl für relevante Systemaufgaben prüfen.
- Sprachen und Fachgebiete
- Für die Nutzung wichtige Sprachen, Terminologie und seltene Anforderungen im Testdatensatz berücksichtigen.
- Antwortvariation
- Mehrere Runs und geeignete Decoding-Einstellungen verwenden; eine einzelne abweichende Formulierung ist noch kein belastbarer Qualitätsbefund.
- Akzeptanzkriterium
- Vorab festlegen, welche Qualitätsverschlechterung tolerierbar ist und welche Fehler zum Ausschluss führen.
Measurement
Welche Kennzahlen beschreiben den Nutzen einer Quantisierung?
Tatsächliche Bytes der Gewichte einschließlich Quantisierungsmetadaten.
Maximaler Beschleunigerspeicher unter festgelegtem Kontext und gleichzeitigen Anfragen.
Zeit bis zum ersten Ausgabetoken, inklusive der im Messprotokoll definierten Vorverarbeitung.
Zeit pro weiterem Token in der Decode-Phase.
Output-Tokens pro Sekunde bei dokumentierter Parallelität und Ausgabelänge.
Erfolg auf einem getrennten, repräsentativen Testdatensatz gegenüber derselben Modellbasis.
Anteil fachlich falscher Antworten, ungültiger Ausgaben oder fehlerhafter Tool-Argumente.
Betriebskosten im Verhältnis zu verwertbaren Ergebnissen; nicht ausschließlich Kosten pro Token.
Praktischer Ablauf
Eine Quantisierungskonfiguration in acht Schritten prüfen
Vom Referenzmodell zur geprüften Laufzeit
- 01 · Referenz festlegen
- Modellversion, Ausgangsformat, Aufgabenqualität und Speicherbedarf dokumentieren.
- 02 · Engpass identifizieren
- Gewichtsspeicher, KV Cache, Speicherbandbreite, Rechendurchsatz oder Betriebskosten unterscheiden.
- 03 · Ziel konfigurieren
- Quantisierungsobjekte, Bitbreiten, Zahlenformate, Gruppen und höherpräzise Ausnahmen festlegen.
- 04 · Ausführung prüfen
- Kompatibilität zwischen Checkpoint, Modellarchitektur, Hardware und Inferenzkerneln vor der Konvertierung prüfen.
- 05 · Quantisieren
- Gewählte Methode anwenden und gegebenenfalls repräsentative Kalibrierungseingaben verwenden.
- 06 · Qualität evaluieren
- Getrennte Tests für typische Aufgaben, lange Kontexte und kritische Fehlerfälle durchführen.
- 07 · Leistung messen
- Prefill, Decode, Peak Memory und Parallelität unter denselben Bedingungen mit der Referenz vergleichen.
- 08 · Entscheidung dokumentieren
- Nur Konfigurationen übernehmen, die die zuvor festgelegten Qualitäts- und Betriebskriterien erfüllen.
Abgrenzung
Quantisierung verändert die Repräsentation, nicht automatisch Wissen oder Modellgröße
Nicht dasselbe wie Pruning
Pruning entfernt oder deaktiviert ausgewählte Parameter oder Strukturen. Quantisierung verwendet für vorhandene Werte eine andere Darstellung.
Nicht dasselbe wie Distillation
Distillation trainiert ein anderes Modell mit Signalen eines Lehrermodells. Quantisierung allein erzeugt kein kleineres Studentenmodell.
Nicht dasselbe wie RAG
RAG stellt extern gefundene Informationen bereit. Quantisierung fügt der Modellbasis keine aktuellen Produktfakten oder Dokumente hinzu.
Nicht dasselbe wie ein Containerformat
Ein Modellcontainer kann verschiedene Quantisierungsschemata enthalten. Dateiendung und nominelle Bitbreite beschreiben die Ausführung nicht vollständig.
Keine Garantie unveränderter Antworten
Auch bei ähnlichen Benchmarkwerten können einzelne Aufgaben empfindlich reagieren. Numerische Näherung und Ergebnisgleichheit sind unterschiedliche Ansprüche.
Kein direkter Sichtbarkeitshebel
Die Quantisierung eines betriebenen Modells verbessert nicht automatisch die Zitierung einer Website. Sie betrifft die technische Modellrepräsentation und Ausführung.
Verwandte Entitäten
Welche Leadterion-Wissensobjekte stehen in direkter Beziehung?
Large Language Models
Erklärt Modellgewichte, Transformer-Berechnungen, Training und autoregressive Inferenz.
Wissensbeitrag öffnenKV Cache
Erklärt die Attention-Zustände, deren Speicher separat von den Gewichten quantisiert werden kann.
Wissensbeitrag öffnenContext Engineering
Verbindet Kontextauswahl, Länge und Laufzeitbedingungen mit dem Speicher- und Qualitätsbedarf des Systems.
Wissensbeitrag öffnenGroundedness & Faithfulness
Bietet den Rahmen, um Quellenbezug und Evidenztreue auch nach einer technischen Modelländerung zu prüfen.
Wissensbeitrag öffnenRetrieval-Augmented Generation
Zeigt, wie externe Informationen in die Antwort gelangen. Die Qualität ihrer Nutzung sollte nach Quantisierung erneut geprüft werden.
Wissensbeitrag öffnenAdaptive Decoding
Behandelt die Steuerung der Generierung. Decoding-Konfiguration und numerische Quantisierung sind getrennte Einflussgrößen.
Wissensbeitrag öffnenFAQ
Häufige Fragen zur Quantisierung
Was ist Quantisierung bei Large Language Models?
Quantisierung bildet Gewichte, Aktivierungen oder KV-Cache-Werte auf eine begrenzte Menge numerischer Repräsentationen ab. Weniger Bits können Speicher und Datentransfer reduzieren, erzeugen aber Näherungsfehler.
Hat ein quantisiertes Modell weniger Parameter?
Bei reiner Gewichtsquantisierung bleibt die Parameterzahl grundsätzlich gleich. Die Parameter werden kompakter dargestellt. Das Entfernen von Parametern gehört zu anderen Kompressionsverfahren wie Pruning.
Was bedeutet W4A16?
W4A16 bezeichnet üblicherweise 4-Bit-Gewichte und 16-Bit-Aktivierungen. Es legt den KV-Cache-Datentyp und die Präzision sämtlicher interner Operationen nicht vollständig fest.
Ist ein 4-Bit-Modell immer schneller als ein 16-Bit-Modell?
Nein. Der Geschwindigkeitsgewinn hängt von Hardware, Inferenzkerneln, Dequantisierungsaufwand, Batch Size und Kontextlänge ab. Speicherbedarf und Laufzeit müssen getrennt gemessen werden.
Was ist der Unterschied zwischen PTQ und QAT?
PTQ quantisiert ein bereits trainiertes Modell, gegebenenfalls anhand von Kalibrierungsdaten. QAT berücksichtigt Quantisierungseffekte während des Trainings oder einer zusätzlichen Anpassungsphase.
Ist QLoRA dasselbe wie Quantization-Aware Training?
Nicht im Sinne einer Anpassung aller Basisgewichte. QLoRA hält eine quantisierte Modellbasis eingefroren und trainiert LoRA-Adapter; die Berechnung erfolgt dabei in einem höheren Rechenformat.
Kann man Gewichte und KV Cache unabhängig quantisieren?
Ja, soweit die konkrete Laufzeit beide Konfigurationen unterstützt. Gewichte und KV Cache sind unterschiedliche Speicherobjekte mit unterschiedlichen Verteilungen und Qualitätsrisiken.
Wie viel Speicher benötigen 8 Milliarden Parameter mit 4 Bits?
Die idealisierten dicht gepackten Gewichtscodes benötigen 4 Milliarden Bytes, also 4 GB oder rund 3,73 GiB. Metadaten, höherpräzise Komponenten, KV Cache und Laufzeitpuffer kommen hinzu.
Wie lässt sich die Qualität eines quantisierten Modells prüfen?
Mit einem getrennten, repräsentativen Testdatensatz und einem Vergleich zur gleichen Modellbasis. Aufgabenqualität, Quellenbezug, strukturierte Ausgaben und kritische Fehlerfälle sollten zusätzlich zu Speicher und Geschwindigkeit bewertet werden.
Quellen
Wissenschaftliche Grundlagen und ausgewählte Verfahren zur LLM-Quantisierung
Die Jahresangaben unterscheiden erste Preprint-Veröffentlichung und Konferenzpublikation, soweit angegeben. Die Arbeiten untersuchen unterschiedliche Modelle, Präzisionen und Hardwarebedingungen. Ihre Messwerte bilden daher keine direkt vergleichbare Rangliste. Die Rechenbeispiele dieses Beitrags sind eigene didaktische Herleitungen, keine reproduzierten Benchmarkresultate.
| Quelle | Autoren / Jahr | Einordnung | Originalquelle |
|---|---|---|---|
| Quantization and Training of Neural Networks for Efficient Integer-Arithmetic-Only Inference | Benoit Jacob et al. · 2017 / CVPR 2018 | Grundlage für affine Integer-Quantisierung und Training unter simulierten Quantisierungseffekten. Die Experimente betreffen Bildmodelle, nicht moderne LLMs. | arXiv:1712.05877 |
| LLM.int8(): 8-bit Matrix Multiplication for Transformers at Scale | Tim Dettmers et al. · 2022 / NeurIPS 2022 | Vektorweise 8-Bit-Quantisierung mit separater höherpräziser Verarbeitung von Ausreißerdimensionen. | arXiv:2208.07339 |
| FP8 Formats for Deep Learning | Paulius Micikevicius et al. · 2022 | Beschreibt E4M3 und E5M2 als unterschiedliche 8-Bit-Gleitkommaformate und untersucht Training sowie Inferenz. | arXiv:2209.05433 |
| GPTQ: Accurate Post-Training Quantization for Generative Pre-trained Transformers | Elias Frantar et al. · 2022 / ICLR 2023 | Post-Training-Gewichtsquantisierung mit approximierter Information zweiter Ordnung zur Begrenzung von Rekonstruktionsfehlern. | arXiv:2210.17323 |
| SmoothQuant: Accurate and Efficient Post-Training Quantization for Large Language Models | Guangxuan Xiao et al. · 2022 / ICML 2023 | Äquivalente Skalierung verschiebt Quantisierungsschwierigkeiten von Aktivierungen zu Gewichten und unterstützt W8A8. | arXiv:2211.10438 |
| AWQ: Activation-aware Weight Quantization for LLM Compression and Acceleration | Ji Lin et al. · 2023 / MLSys 2024 | Aktivierungsstatistiken steuern die Skalierung wichtiger Gewichtskanäle für niedrigbitige Weight-only-Quantisierung. | arXiv:2306.00978 |
| QLoRA: Efficient Finetuning of Quantized LLMs | Tim Dettmers et al. · 2023 / NeurIPS 2023 | Kombiniert eine eingefrorene quantisierte Modellbasis mit trainierbaren LoRA-Adaptern; führt NF4 und Double Quantization ein. | arXiv:2305.14314 |
| KIVI: A Tuning-Free Asymmetric 2bit Quantization for KV Cache | Zirui Liu et al. · 2024 / ICML 2024 | Untersucht unterschiedliche Quantisierungsrichtungen für Keys und Values und kombiniert niedrigbitige Cache-Gruppen mit einem höherpräzisen Restbereich. | arXiv:2402.02750 |
Wissen
Quantisierung optimiert die numerische Darstellung – ihr Nutzen muss an der Aufgabe gemessen werden
Eine tragfähige Konfiguration verbindet weniger Speicher mit passender Hardware, ausreichender Aufgabenqualität und nachvollziehbaren Messungen. Gewichte, Aktivierungen und KV Cache sollten dabei als getrennte Optimierungsobjekte beschrieben und geprüft werden.