Zurück
Kevin Riedl

14 min Lesezeit · 22. Juli 2026
Zuletzt geprüft

Weiter
Entsteht auf deinem Gerät, ohne Instagram-Verbindung. Den Beitragslink kopieren wir für deinen Link-Sticker.

Verlustfreie LLM-Gewichtskompression vs. 8-bit GGUF: Was ist produktionsreif?

Die kurze Antwort: Verlustfreie BF16-Gewichtskompression funktioniert, und für Split12 ist inzwischen eine End-to-End-Serving-Kampagne mit GLM-5.2 dokumentiert. Produktionsreif ist der Ansatz trotzdem nicht. Die stärkste reproduzierbare Evidenz ist weiterhin eine Byte-Split-Repräsentation, die alle 59.509 BF16-Tensoren Bit für Bit rekonstruierte und den Weight-Payload um 24,967 % reduzierte. Die größere K15-Reduktion von 30,168 % ist eine vollständig belastete Größenrechnung, kein serialisierter und auf GLM-Skala decodierter Container. Im rekonstruierten Serving-Bericht des Projekts brauchte ein gematchter SGLang-Retest 15,99 % weniger dauerhaften Gerätespeicher, erreichte aber nur 73,618 statt 207,958 gepoolte Decode-Token pro Sekunde und war damit 64,6 % langsamer als BF16. Die zugrunde liegenden Logs und Kernel sind nicht mehr zur erneuten Prüfung vorhanden.

Ein Q8_0-GGUF ist ein anderer Trade-off. Es braucht meist weniger Speicher und profitiert vom reifen llama.cpp-Ökosystem, ist aber quantisiert. Die ursprünglichen BF16-Gewichte lassen sich daraus nicht Bit für Bit wiederherstellen. Wähle Q8, wenn gemessene Qualität genügt und Deployment-Effizienz gewinnt. Wähle verlustfreie Kompression, wenn exakte Gewichte eine harte Anforderung sind. Verlange dann eine unterstützte Runtime und Production-Evidenz, bevor du mit niedrigeren Serving-Kosten rechnest.

Du entscheidest zwischen BF16, FP8, GGUF und einem Research-Codec?

 Inference-Architektur prüfen

Was bedeutet „verlustfrei“ bei LLM-Gewichten?

Verlustfreie LLM-Gewichtskompression bedeutet, dass die codierte Repräsentation jedes Quellgewicht exakt inklusive aller Bits des ursprünglichen BF16-Tensors wiederherstellen kann. Es geht um reversible Codierung. Gewichte werden weder gerundet noch entfernt oder durch nahe Integer-Werte ersetzt.

Das gilt auch im VRAM. Eine GPU kann codierte Gewichte speichern, die exakten BF16-Werte in Registern oder Shared Memory rekonstruieren und sofort für die Matrixmultiplikation nutzen. Der Speicherort entscheidet nicht über Verlustfreiheit. Entscheidend ist der Round-trip.

  1. Exakte Gewichte: Die komprimierten Bytes rekonstruieren den Tensor Bit für Bit.
  2. Exaktes Modellverhalten: Die komplette Runtime reproduziert Baseline-Outputs unter definierten deterministischen Bedingungen. Exakte Gewichte allein reichen nicht, wenn Kernel, Akkumulationsreihenfolge oder Sampling abweichen.
  3. Besseres Production-Serving: Das integrierte System verbessert Kapazität, Latenz, Durchsatz oder Kosten im echten Traffic ohne untragbares Betriebsrisiko.

Was beweist das GLM-5.2-Experiment wirklich?

Brian Bells Experiment zur verlustfreien BF16-Kompression scannte alle 282 Shards des GLM-5.2-Checkpoints mit ungefähr 1,4 TiB Quelldaten. BF16 besteht aus einem Vorzeichenbit, acht Exponentenbits und sieben Mantissenbits. Trainierte Gewichte verwenden nur wenige Exponentenmuster sehr häufig. Das Experiment codiert häufige Vorzeichen-Exponenten-Symbole kurz und schreibt seltene Symbole in einen exakten Escape-Stream.

Evidenz zur GLM-5.2-Kompression, geprüft am 2. September 2026
ClaimErgebnisBelegtOffen
Exakte Byte-Split-Repräsentation12,005 bit pro BF16-Gewicht, 24,967 % ReduktionAlle 59.509 BF16-Tensoren wurden aus Codebook, Indizes, Escapes und unverändertem Low Byte Bit für Bit rekonstruiert.Kein unterstütztes Production-Serving-Release.
K15 Charged-Format Accounting11,173 bit pro Gewicht, 1.403,19 auf 979,87 GiB, 30,168 % ReduktionCodebooks, Indizes, Escapes und Side Costs sind modellweit eingerechnet.Kein physischer GLM-K15-Container wurde unabhängig serialisiert und decodiert.
Gematchter SGLang-Retest, 8x B30073,618 statt 207,958 gepoolte Decode-Token pro Sekunde, 64,6 % langsamer; 15,99 % weniger dauerhafter GerätespeicherEin serialisiertes Split12-Artefakt startete und bediente das vollständige Modell aus komprimierten Ebenen in einem Vergleich mit einem optimierten Serving-Stack.Der Durchsatz war schlechter, und die Rohlogs sowie Kernel gingen später verloren. Der verbliebene Bericht lässt sich deshalb nicht unabhängig erneut prüfen.

Der öffentliche Split12-Methodenordner mit Verifier trennt diese Evidenzklassen sauber. Der Verifier streamt Shards und braucht für den Exaktheitstest keine GPU. Der separate Inference-Bericht dokumentiert Full-Model-Serving und den Retest mit Production Stack, erklärt aber auch, dass Rohartefakte und Code verloren gingen und der Bericht aus Research Ledgers rekonstruiert wurde. Das Exaktheitsergebnis bleibt ausführbar, die Serving-Benchmarks lassen sich nicht unabhängig erneut prüfen. Das Projekt ist kein Plug-and-play-Backend für vLLM, SGLang oder llama.cpp.

Ist 8-bit GGUF verlustfrei?

Nein, Q8_0-GGUF ist gegenüber den BF16-Quellgewichten nicht verlustfrei. GGUF ist ein Container und kann BF16, F16 sowie quantisierte Tensor-Typen enthalten. Das Format selbst ist nicht automatisch verlustbehaftet. Q8_0 ist es.

Der Quantisierungs-Workflow von llama.cpp erzeugt Q-Varianten aus höherer Präzision und warnt vor zusätzlichem Qualitätsverlust durch Requantisierung. Q8_0 repräsentiert Blöcke mit int8-Werten plus Scale. Dequantisierung erzeugt brauchbare Näherungen, nicht die ursprünglichen BF16-Bitmuster. Auch die GGUF-Dokumentation von Hugging Face führt Q8_0 als quantisierten Typ und dequantisiert solche Checkpoints beim Laden in Transformers.

Q8 kann trotzdem die richtige Production-Wahl sein. „In unserem Eval kein materieller Qualitätsverlust“ ist eine belastbare Aussage. „Bit-exakt verlustfrei“ ist eine andere Aussage und braucht einen reversiblen Nachweis.

Wie ordnet sich das in bestehende Forschung ein?

  • ZipNN trennte komprimierbare Exponenten von kaum komprimierbaren Bits und meldete bei regulären BF16-Modellen ungefähr 33 % Speicherersparnis. Der stärkste Fit liegt bei Storage, Distribution und Checkpoint-Traffic.
  • DFloat11 kombinierte variable Codes mit GPU-Decodierung und meldete rund 30 % kleinere BF16-Modelle mit exakt rekonstruierten Gewichten.
  • ZipServ verband ein Fixed-length-Format mit Fused Decompression-GEMM. Das Paper meldet bis zu 30 % kleinere Modelle, bis zu 2,21-fachen Kernel-Speed und durchschnittlich 1,22-fachen End-to-End-Speed gegenüber vLLM in den getesteten Systemen.
  • Ein ANS-System mit tiled On-the-fly-Decoding integrierte verlustfreie Kompression in SGLang und Multi-GPU-Serving. Das Paper meldet größere mögliche Batches und bis zu 1,6-fachen Throughput in ausgewählten Workloads.
  • Cloudflare Unweight untersucht reconstructive Matmul auf Hopper-GPUs. Der Report bezeichnet die Ergebnisse als Zwischenstand und komprimiert ausgewählte MLP-Gewichte.

Die relevante Frage lautet nicht mehr, ob BF16-Exponenten komprimierbar sind. Das ist belegt. Entscheidend ist, welcher Codec mit welchem Kernel und welcher Serving Engine deinen Workload auf unterstützter Hardware verbessert.

Lossless oder Q8 GGUF: Was solltest du deployen?

FaktorRaw BF16Lossless BF16 CodecQ8 GGUF
GewichtstreueReferenzBit-exakt nach verifiziertem DecodeQuantisierte Näherung
GrößeAm größtenJe nach Scope oft rund 20 % bis 33 % Reduktion in der ForschungUngefähr halber roher 16-bit-Weight-Payload vor Metadaten und Mixed Tensors, modellabhängig
Runtime-ReifeBreite UnterstützungStark abhängig von Codec, GPU und Engine-IntegrationReifes lokales Ökosystem mit llama.cpp
Bester aktueller FitBaseline, Training, qualitätssensitives ServingStorage, Distribution, kapazitätsbegrenzte exakte Inference, kontrollierte PilotenConsumer-Hardware und kostensensitive Inference nach Task-Eval

Starte mit Q8, wenn du ein praktisches lokales Deployment brauchst, llama.cpp das Modell unterstützt und ein repräsentatives Eval keine materielle Business-Einbuße zeigt.

Pilotiere verlustfreie Kompression, wenn BF16 die freigegebene Referenz ist, Qualitätsregression teuer wäre und 20 % bis 30 % mehr effektive Accelerator-Kapazität den Hardwareplan verändert. Besonders interessant ist sie für Golden Baselines, sensible Reasoning-Workloads, Checkpoint-Distribution und gemessene Weight-Bandwidth-Bottlenecks.

Bleib bei raw BF16, wenn Integrationsrisiko mehr kostet als der gesparte Speicher oder der gewählte Pfad Architektur, GPU-Generation, Batching, Tensor Parallelism oder Failure Tooling nicht unterstützt.

Ist der GLM-5.2-Ansatz produktionsreif?

Nein. Für Split12 sind inzwischen ein Full-Model-Serving-Pfad und ein gematchter Vergleich mit einem optimierten SGLang-Stack dokumentiert. Dieser Vergleich war trotz geringerem dauerhaftem Gerätespeicher 64,6 % langsamer als BF16, und laut Projekt gingen die zugrunde liegenden Logs und Kernel verloren. Es ist weder ein unterstütztes Serving-Release noch ein physischer K15-Codec. Der ausführbare Exaktheits-Verifier und der rekonstruierte Serving-Bericht sind unterschiedliche Evidenzklassen.

  1. Artefakt: Serialisiere das echte Modell, validiere Hashes und decode jeden Tensor aus dem ausgelieferten Container.
  2. Runtime: Integriere den exakten Decode in Serving Engine, Kernel, Tensor Parallelism, Batching und Modellarchitektur.
  3. Verhalten: Vergleiche deterministische Outputs, wo möglich, und führe Task-Evals gegen raw BF16 aus.
  4. Performance: Miss Time to First Token, Inter-token Latency, Throughput, Concurrency, Startup, Peak Memory und Energie für mehrere Context- und Batch-Größen.
  5. Betrieb: Teste Crash Recovery, Korruptionserkennung, Rollback, Observability, Upgrades und Fallback zum unkomprimierten Artefakt.

Wie rechnest du den kommerziellen Case?

monatlicher Nutzen = vermiedene Accelerator-Kosten + vermiedene Storage- und Transferkosten - zusätzlicher Compute - Engineering- und Betriebskosten

Eine Speicherreduktion schafft nur dann Wert, wenn sie eine GPU entfernt, ein sonst zu großes Modell ermöglicht, sichere Batch-Kapazität erhöht, Weight-Traffic genug senkt oder Distribution billiger macht. Ein 30 % kleineres Format mit Custom Kernels und mehr Latenz kann schlechter sein als ein reifes Q8-Deployment. Eine Reduktion um 20 %, die pro Replica einen Accelerator spart, kann hervorragend sein.

Für API versus eigene Infrastruktur nutze unseren Break-even-Rechner für lokale LLMs und APIs. Für GLM-5.2-Streaming von NVMe auf kleiner Hardware lies unsere Colibri-Analyse. Dieser Artikel bleibt bei Precision-Format und Production-Codec.

Ein 14-Tage-Pilot für Production Readiness

  1. Entscheidung einfrieren: Modellrevision, Tensor-Hashes, Codec-Commit, Engine-Build, Treiber, GPU, Prompts und Gates dokumentieren.
  2. Reversibilität beweisen: Das ausgelieferte Artefakt decodieren, alle Tensoren Byte für Byte vergleichen und Korruption injizieren.
  3. Drei Lanes bauen: Raw BF16, Lossless-Kandidat und glaubwürdigste quantisierte Alternative möglichst auf identischer Hardware testen.
  4. Reale Evals ausführen: Echte Task-Verteilungen, lange Kontexte, Tools und Failure Cases nutzen.
  5. Serving-Shape testen: Batch 1 und Ziel-Concurrency, warm und kalt, p50/p95, Tokens pro Sekunde, Peak Memory und Energie pro erfolgreichem Task messen.
  6. Betrieb üben: Worker neu starten, Versionen rollen, Shard beschädigen, Node entfernen und Fallback oder Rollback beweisen.
  7. Economics entscheiden: Gemessene Kapazität in Fleet-Größe und Monatskosten übersetzen, inklusive Ownership einer nicht standardisierten Runtime.

Fragen an Vendor oder Research-Team

  • Welche Tensor-Dtypes und Modellarchitekturen werden exakt unterstützt?
  • Kommt die Prozentzahl aus einem serialisierten Artefakt inklusive Metadaten und Escapes?
  • Wurde jeder Tensor aus diesem Artefakt decodiert und mit den Quellbytes verglichen?
  • Enthält der Benchmark komplettes Modell, Escape-Pfad, Attention, KV Cache, Batching und Serving Engine?
  • Welche GPUs, Treiber, Batch-Größen und Context-Längen wurden getestet?
  • Was passiert bei Tensor-Korruption oder Decoder-Upgrade?
  • Ist ein Fallback auf Standard-BF16 ohne Service-Rebuild möglich?
  • Welches Production-System nutzt den Pfad bereits, bei welchem Traffic und welchen SLOs?

Quellen und Claim-Grenzen

GLM-5.2-Größen, Tensorzahl, Reduktionen und Reproduktionsgrenzen stammen aus dem veröffentlichten Split12-Bulletin, dem Methodenordner und dem Inference-Bericht. Die Vergleiche verwenden die verlinkten Papers. GGUF-Aussagen basieren auf aktueller Hugging-Face- und llama.cpp-Dokumentation. Performance-Zahlen gehören zu den jeweiligen Autoren und Testsystemen. Wavect hat den 1,4-TiB-Scan oder die GPU-Benchmarks nicht reproduziert. Der Serving-Bericht des Projekts ist rekonstruierte Dokumentation, weil seine Rohartefakte verloren gingen. Faktenstand 2. September 2026.

Häufige Fragen

Können Gewichte im VRAM verlustfrei komprimiert sein?
Ja. Eine Runtime kann eine reversible codierte Repräsentation im VRAM halten, exakte BF16-Werte in Registern oder Shared Memory rekonstruieren und sofort verwenden. Der Nachweis ist ein Bit-exakter Round-trip.
Ist Q8_0-GGUF verlustfrei?
Nein. Q8_0 repräsentiert Blöcke mit 8-bit-Quantwerten und Scale. Die dequantisierten Werte nähern die Quelle an. GGUF kann auch BF16 oder F16 enthalten, aber ein Q8_0-Artefakt ist quantisiert.
Garantiert verlustfreie Gewichtskompression identische Outputs?
Nicht allein. Sie garantiert exakt rekonstruierte Gewichte. Andere Kernel, Akkumulationsreihenfolgen, Libraries oder Sampling können Outputs verändern. Prüfe Weight Parity und Runtime-Verhalten separat.
Wie stark lässt sich ein BF16-LLM ohne geänderte Gewichte verkleinern?
Aktuelle Systeme melden für ihren jeweiligen Scope oft ungefähr 20 % bis 33 %. Das GLM-5.2-Experiment decodierte eine modellweite Repräsentation mit 24,967 % Reduktion und berechnete separat K15 mit 30,168 %.
Ist der GLM-5.2-K15-Codec produktionsreif?
Nein. Die 30,168 % sind vollständiges modellweites Accounting, aber kein physischer GLM-K15-Container wurde unabhängig serialisiert und decodiert. Für Split12 gibt es separate Full-Model-Serving-Arbeiten, doch der gematchte SGLang-Retest war 64,6 % langsamer als BF16 und laut verbliebenem Bericht gingen die Rohartefakte verloren.
Wann ist Lossless besser als Quantisierung?
Wenn exakte BF16-Gewichte Pflicht sind und gemessene Speicher- oder Bandbreitenersparnis die Fleet Economics verändert. Quantisierung gewinnt, wenn Task-Evals ausreichende Qualität und die reifere Runtime bessere Kosten pro erfolgreichem Task zeigen.

Fazit

Verlustfreie BF16-Kompression ist kein Widerspruch und nicht dasselbe wie Q8-Quantisierung. Die Split12-Evidenz muss getrennt bleiben: eine reproduzierbare exakte Repräsentation mit 24,967 % Reduktion, eine K15-Größenrechnung mit 30,168 % und eine dokumentierte Full-Model-Serving-Kampagne, deren gematchter Production-Stack-Retest langsamer war und deren Rohartefakte nicht mehr verfügbar sind.

Starte in Production mit der Anforderung. Wenn exakte BF16-Gewichte Pflicht sind, evaluiere eine integrierte Lossless-Runtime gegen raw BF16. Wenn Task-Qualität zählt, nimm Q8, FP8 und andere unterstützte Formate in denselben Pilot. Kaufe bessere Kosten pro erfolgreichem Task, nicht die dramatischste Headline.

Du brauchst einen belastbaren Model-Serving-Benchmark?

 14-Tage-Inference-Pilot scopen

Hilfe für KI in Produktion

Du baust ein KI-Produkt und machst dir Sorgen um Inference-Kosten, Architektur oder Production Readiness? Wavect hilft Gründern, KI-Prototypen in zuverlässige Produktionssysteme zu verwandeln.

Passender Service:

Postfach, ohne Lärm

Folge der Arbeit, die für dich zählt

Du bekommst eine kurze E-Mail, wenn wir etwas Neues veröffentlichen. Folge dem ganzen Blog oder nur den Themen, die dich interessieren.

Was möchtest du erhalten?
Themen auswählen

Kostenlos, Double-Opt-in, ohne Tracking-Pixel.

Zurück
Kevin Riedl

14 min Lesezeit · 22. Juli 2026
Zuletzt geprüft

Weiter

Erhalte die nächste Feldnotiz zu AI und Agents

Eine kurze E-Mail, wenn wir veröffentlichen. Ohne Tracking-Pixel und ohne Postfachfüller.

Kostenlos, Double-Opt-in, ohne Tracking-Pixel.