AdvancedAI

A 763B Model in 2 Bits: What ISTA-DASLab’s GGUFs Give Up

ISTA-DASLab published non-uniform GGUF quantizations of DeepSeek-V4.1-Flash-1017 on October 23, 2026, compressing a 763.2-billion-parameter mixture-of-experts model to 1.75, 2.00 and 2.25 bits per weight under an MIT licence. The lab’s benchmark table says the middle build gives up nothing: 100.0% of the base model’s task average across AIME25, GPQA-Diamond and LiveCodeBench v6. The runtime built to serve those same files reports a different number for the same weights — perplexity 15.5% above the original at 2.00 bits, and 7.3% at 2.25. Both measurements are defensible. The gap between them is what a quantization actually costs, and why a three-benchmark table cannot show it.

Banner from the ISTA-DASLab model card for the DeepSeek-V4.1-Flash-1017 GSQ-RCO release, listing 763B parameters, 384 experts with 6 active, 1M context and an MIT licence
Image credit: ISTA-DASLab, Institute of Science and Technology Austria

What the Files Actually Are

DeepSeek-V4.1-Flash-1017 is a sparse mixture-of-experts model with 384 routed experts per layer, six active per token, and a one-million-token context window. The backbone holds 551.9 billion parameters; a separate Engram file holds two lookup tables totalling 196.6 billion. Because the routed experts dominate both the parameter count and the size budget, the lab’s search spends most of its freedom there — assigning a quantization type per layer rather than per expert, which GGUF cannot express.

Two methods produced the files, both from IST Austria’s Distributed Algorithms and Systems Lab. GSQ (arXiv 2604.18556) learns each coordinate’s grid assignment and each group’s scale jointly through a Gumbel-Softmax relaxation, closing most of the accuracy gap between scalar and vector quantization at two to three bits while staying readable by ordinary kernels. RCO (arXiv 2605.00649) then picks one of K types for each of N tensors under an exact size budget, reframing the constraint as a Riemannian manifold in logit space so a gradient step optimizes real loss rather than a proxy.

The result is three builds differing only in how much precision the search could afford, each a four-shard backbone plus the same shared Engram file, held at IQ4_NL in every build because it is a lookup table read one row at a time rather than a matmul weight.

Build Bits per weight Backbone Total with Engram
IQ1_M 1.75 120.72 GB 231.32 GB
IQ2_XXS 2.00 138.24 GB 248.84 GB
IQ2_XS 2.25 155.23 GB 265.83 GB

Two Ways of Measuring the Same Weights

ISTA-DASLab reports three benchmarks, all at reasoning effort 50: AIME25, GPQA-Diamond and LiveCodeBench v6. The base model scores 100.00, 90.91 and 89.71, a task average of 93.54. IQ2_XXS reproduces all three exactly. IQ2_XS scores 90.40 on GPQA-Diamond for 99.8% recovery, and IQ1_M drops to 88.38 on GPQA-Diamond and 88.57 on LiveCodeBench for 98.7%.

Grouped bar chart comparing the base DeepSeek-V4.1-Flash-1017 model against its GSQ-RCO IQ1_M, IQ2_XXS and IQ2_XS builds on AIME25, GPQA-Diamond and LiveCodeBench v6
The lab’s own comparison, at reasoning effort 50. Image credit: ISTA-DASLab

Read that table as an accuracy test and it is close to a clean sweep. Read it as proof that nothing was lost, and the ceiling gets in the way: AIME25 is already at 100.00 for the base model, so no build can score lower without failing a problem the original got right, and every remaining difference is one or two problems out of a short set. The lab says as much on its own discussion board. Asked why the 2.25-bit build scored below the 2.00-bit one, a maintainer replied: “No, that’s just benchmark noise. We can’t afford to run each benchmark multiple times, so it’s totally possible that in one run, a larger model just solves one fewer problem and ends up with a lower score.” The lab is, in its own words, still looking for benchmarks “that can better show the differences between the models.”

Strata, the open-source engine that added DeepSeek-V4.1 support in version 0.2.4 on October 24, measures something else. Its documentation reports quality against the original model across 4,995 text positions using KL divergence and perplexity — distribution-level metrics that score every token the model predicts, including the ones no benchmark question ever reaches. On that test the 2.00-bit build has KL 0.170 and perplexity 15.5% above the original, with code up 8.6% and agent work up 5.3%. The 2.25-bit build has KL 0.107 and perplexity up 7.3%, with code up 3.2%. The 1.75-bit build is a different animal: perplexity up 21%, top-1 agreement 82.5%, documentation up 24%, multilingual text up 14%, and plain English prose up 53% — which is why Strata recommends it only where 2.00 bits will not fit.

A second engine project reached a similar conclusion independently. Xolotl, a Strata fork for running these models from one gaming PC, loaded IQ2_XS and measured perplexity 3.93 against 3.60 for its own build at the same flags — one run on a small sample, so a data point rather than a verdict, but pointing the same way. Xolotl also notes the ISTA files are text-only there, because they do not carry the router’s image bias.

Where the Rest of the Loss Comes From

Not all of the gap between a benchmark pass and a served answer belongs to the weights. Strata’s own defaults move the number. On a PC whose graphics cards total 16 GiB of VRAM or less — the 12 GB class these builds target — the engine defaults to its “faster” setting, which uses five of the six routed experts DeepSeek selects per token. Its documentation calls that “a small quality change, usually not noticeable” and makes full quality an explicit choice. The default context is 8,192 tokens against a model card recommending one million, the dense half of the network is re-quantized for speed, and the Engram tables page in from NVMe on every token.

Those are documented, reversible trade-offs, and they are how a 763B model answers at all on a card that cannot hold 1% of it. Measured on the 2.00-bit set: an RTX 5070 with 64 GB of RAM produces 4 to 6 tokens per second and reads a 4K prompt at about 110; an RTX 3060 with 46 GB of RAM reaches 9 to 11; four Radeon AI PRO R9700 cards reach 74 to 77.

Runtime support is still settling. The model card stated on October 23 that llama.cpp did not support DeepSeek-V4.1, so the GGUFs ran only in Strata; within two days a llama.cpp contributor reported on the card’s discussion page that support had merged, and the lab has since replaced a chat template carried over from V4.

What This Means

The useful lesson is not that one measurement is wrong. It is that “we recovered 100% of the base model” is a claim about three benchmarks, and a benchmark the original already aces has no room to register a regression. Perplexity and KL divergence answer a different question, about how far the whole next-token distribution moved, and they are the ones that notice a model going vaguer or less fluent in prose while still solving what it solved before.

For anyone choosing a build, the reading is narrow. If your disk allows 274 GB, IQ2_XS is the honest operating point for coding and agent work: 7.3% perplexity drift and 3.2% on code, against 15.5% and 8.6% at 2.00 bits. IQ1_M is for machines that otherwise cannot run the model at all, and its 53% prose penalty is the price of the 17.5 GB you did not spend.

The broader point concerns defaults rather than files. A local stack serving five experts instead of six, an eighth of the context the model was trained for, and a re-quantized dense half will feel worse than the table promised, and none of that is the quantizer’s fault. Before concluding that two bits ruined a model, check which knobs the engine turned for you.

This post was drafted with AI assistance and reviewed by RITS staff.

Sources

Related stories

benchmark

DeepSeek Ships V4.1-Flash-1017: Faster Agents, Same Price

DeepSeek replaced V4.1-Flash with DeepSeek-V4.1-Flash-1017 on October 17, 2026, shipping the new checkpoint to its website, mobile app and API the same day and publishing MIT-licensed weights on Hugging Face and ModelScope. DeepSeek calls it a minor update; it improves all eleven benchmarks in the company’s comparison table, shortens outputs, and leaves API pricing unchanged. […]

benchmark

DeepSeek V4.1-Flash: 552B Params, 890 Bytes of KV Cache Per Token

DeepSeek released V4.1-Flash on September 10, 2026, publishing the weights on Hugging Face under an MIT licence the same day the model went live in its apps. The headline is not the parameter count but the memory footprint: a 552-billion-parameter Mixture-of-Experts backbone that holds a one-million-token context in 890 bytes of KV cache per token […]

Audio

KittenTTS 2 Packs a 1.7B Speech Model Into 1.58-Bit Weights

KittenTTS 2, published to Hugging Face on September 30, 2026, is a 1.7-billion-parameter speech model with in-context voice cloning — a very different animal from the 25-megabyte KittenTTS the same team shipped in February. What makes it notable is how it is stored: the language model’s linear layers hold ternary weights packed at roughly 1.6 […]

Never miss a RITS update

Subscribe to the RSS feed for AI, emerging technology, and digital scholarship news curated for the NYU Shanghai community, or get in touch to suggest a story.