Making model weights smaller without changing what they compute. Nothing rounded, nothing pruned, the same model to the last bit.
Every BF16 weight is 16 bits: a sign, 8 exponent bits, 7 mantissa bits. In a trained model the exponents are wildly repetitive; a handful of values cover nearly every weight.
So the sign and exponent (9 bits) are swapped for a 4-bit code pointing into a 15-entry table, and the rare weight outside the table is stored in full. 16 bits becomes ~11.2, which is the 30%. The mantissa bits look random so far and are kept as-is.
Every code is the same width, so weight number N sits at a known address; no unpacking pass, no second copy.
The GPU kernel reads the compressed bytes, looks each code up in the tiny table in registers while it multiplies, and moves on. The full 16-bit form never exists in VRAM, which is why the 30% is a VRAM number and not just a disk number.
The in-place read is proven at the kernel level: a single matrix-vector multiply on real weights, bit-exact.
What has not been measured yet is a full serving stack running the model this way end to end: attention, batching, every layer, tokens per second. Until that run exists, the claim stays what it is: 30% less VRAM, same math.
One script, no GPU. It streams the checkpoint shard by shard from Hugging Face (~1.4 TB, deleted as it goes), encodes every tensor, and verifies the reconstruction bit-for-bit: the sizes and the exactness, the whole claim.
Open REPRODUCE.md ->uv run verify.py zai-org/GLM-5.2