GO TO A SECTION

↑ ↓ to navigate · Enter to openExplore all sections →
FDEInterviews logo
RecentarXiv preprint

Quantization-Aware Distillation for NVFP4 Inference Accuracy Recovery

Quantizing a small model to 4-bit NVFP4 loses accuracy; retraining it on labels can lose more. Training it to match the original model's outputs got near-full accuracy back, even from random tokens.

Breakdown by FDE Interviews · 12 min read · Updated

About the original · 2026
AUTHORS
Xin, Priyadarshi, Xin, Kartal, et al.
FROM
NVIDIA
PUBLISHED
Jan 2026 · arXiv preprint
CITED BY
23Semantic Scholar · Oct 2026
IN THIS BREAKDOWN · 10 SECTIONS

You can read 18% of this breakdown.

01

The paper in one minute

NVFP4 is NVIDIA's 4-bit floating-point format for Blackwell GPUs: values in E2M1 (sign plus 0, 0.5, 1, 1.5, 2, 3, 4 or 6), grouped in blocks of 16 that share an 8-bit E4M3 scale, with one FP32 scale per tensor. The authors give it two to three times FP8's arithmetic throughput and about 1.8 times less memory. Very large models quantize to it with little loss using post-training quantization (PTQ); small ones do not.

The standard repair is quantization-aware training (QAT): keep training the quantized model with its original loss and data, so the weights adapt to the quantization grid. That assumes you can replay the original training. Modern models go through SFT, several RL stages and model merging, and RL data is mostly prompts, not answers.

Quantization-aware distillation (QAD) replaces the task loss with KL divergence between the original BF16 model (teacher) and the quantized model (student) on the same inputs. Run it once, on a mix of SFT data or the model's own generations.

On Llama Nemotron Super V1, Nemotron Nano V2, Nemotron Nano V2 VL, Nemotron 3 Nano and AceReason Nemotron 1.1, QAD brought NVFP4 accuracy close to BF16. On the RL-heavy models, QAT on cold-start SFT data scored below doing nothing (PTQ): it pulled the model back toward its pre-RL behavior. QAD tolerated partial-domain data (code-only training recovered math), generated data, and even random tokens without breaking the model. It needed 0.3 to 6 billion tokens and conservative learning rates. NVFP4 checkpoints and code are released.

THE IDEA, VISUALLY
THE FORMAT E4M3 FP32 16 values in E2M1: 0, ±0.5, ±1, ±1.5, ±2, ±3, ±4, ±6 + one 8-bit E4M3 scale per block + one FP32 scale per tensor MXFP4: 32 per block, power-of-two scale. ~1.8x less memory than FP8 SAME DATA, DIFFERENT TARGET QAT quantized model learns next-token labels (cross-entropy) QAD quantized model learns the BF16 model's distribution (KL) Super V1, 0.3B tokens (Table 1): KL to BF16 CE vs labels BF16 0 0.408 QAT 0.311 0.408 QAD 0.004 0.416 QAT matched the loss and changed the model DATA TO CONVERGE Super V1 49B 0.3B · Nano V2 9B 6B · Nano V2 VL 12B 0.5B Nemotron 3 Nano 30B-A3B 2.5B · AceReason 7B 0.8B tokens lr 1e-6 to 1e-5; temperature 1; teacher = the BF16 model itself 253B and 671B models held accuracy with PTQ alone RL-TRAINED MODELS (TABLE 3) Nemotron 3 Nano, AIME25 BF16 89.1 NVFP4 PTQ 85.0 NVFP4 QAT 83.3 NVFP4 QAD 87.9 Nemotron 3 Nano, GPQA-D BF16 73.0 NVFP4 PTQ 71.6 NVFP4 QAT 66.0 NVFP4 QAD 72.7 AceReason 7B, AIME25 BF16 63.5 NVFP4 PTQ 58.7 NVFP4 QAT 46.1 NVFP4 QAD 62.0 axis starts at 40; QAT lands below doing nothing (PTQ) QAD DATA SOURCE, ACEREASON AIME24 (TABLE 5) cold-start SFT data 71.7 generated from RL prompts 71.9 generated, correct only 70.5 generated from BOS token 70.1 random tokens 68.6 PTQ, no training 69.4 BF16 73.0; axis starts at 60
QAT reached the original model's loss while drifting away from its behavior; QAD stayed on top of it. On models shaped by RL, retraining on labels did worse than not retraining at all.
Research notes: the problem, approach and results
0.004 vs 0.311

KL divergence from the BF16 model after QAD versus QAT on Llama Nemotron Super V1; both reached the same cross-entropy

46.1 vs 62.0

AIME25 for AceReason Nemotron 7B in NVFP4 after QAT versus QAD; BF16 scores 63.5 and untrained PTQ 58.7

0.3-6B

tokens of training needed to converge, against the original post-training budgets

THE PROBLEM

NVFP4 4-bit inference roughly halves memory against FP8 on new NVIDIA GPUs, but post-training quantization costs small models noticeable accuracy. The usual fix, quantization-aware training, needs the original training pipeline, which for modern models means SFT, RL and model merging that nobody can easily replay.

THE IDEA

Train the quantized model to match the full-precision model's next-token distribution with KL divergence (quantization-aware distillation), in one stage, on whatever data is at hand: SFT data, generations from the model itself, even random tokens. Keep the original model as the teacher.

THE RESULT

Across five NVIDIA models, QAD recovered to within about 3 points of BF16 on every reported benchmark, while QAT on the same data fell below plain quantization on RL-trained models (AceReason AIME25: BF16 63.5, PTQ 58.7, QAT 46.1, QAD 62.0). It needed 0.3 to 6 billion tokens and worked with partial-domain or synthetic data.

02

Why it matters to an FDE

Customers serving open models on Blackwell-class GPUs will be offered NVFP4 for memory and throughput. The decision an FDE faces is what to do when 4-bit quantization costs accuracy on a small or mid-size model.

Don't fine-tune the quantized model on task data to fix it. That is QAT, and on RL-trained reasoning models it made things worse than plain PTQ: AceReason's AIME25 fell from 58.7 (PTQ) to 46.1. Training on labels re-teaches the model whatever its training data says, which for an RL-tuned model is an older, weaker version of itself. The validation loss looked fine; the behavior changed.

Distill from the original instead. QAD only needs the BF16 model and some inputs. The authors' data ablation is reassuring for customers without the original training data: the model's own generations from task prompts worked as well as the real SFT data.

Check behavior, not loss. Table 1 is the lesson in one row: QAT matched BF16 cross-entropy exactly while its KL from the original was 78 times QAD's. When validating any quantized model for a customer, compare its outputs to the original's, not just its loss or one benchmark.

THE FULL BREAKDOWN

Understand the mechanism. Try it on a real problem.

Unlock this breakdown and 149 more papers.

Premium opens every paper in full, plus every answer, concept, course and guide on the site. One payment for six months of access.

6 months · One payment · No auto-renewal

Get Premium · ₹2,000 / $25
  • ◇1 architecture diagram
  • </>1 runnable code experiment
  • ▦2 results tables
  • ?5 interview questions with answers
  1. 03Key takeaways

    What QAD needs, where QAT broke, data and learning-rate findings, and three misreadings

    Free account
  2. 04How it works

    The format, fake quantization in training, the QAD loss, data, layer choices and hyperparameters

    Premium
  3. 05The numbers that matter

    SFT-heavy and RL-heavy results, data ablations, learning rates, loss choice and large-model PTQ

    Premium
  4. 06Try it yourself

    Recheck the tables, build NVFP4 and compare formats, then watch QAT drift and QAD hold

    Premium
  5. 07Where it breaks

    Remaining gaps, NVIDIA-only models and hardware, evaluation choices, missing costs and slips

    Premium
  6. 08Using it on a deployment

    Deciding between PTQ and QAD for a customer's model, assembling data, and validating the 4-bit model

    Premium
  7. 09Interview angles

    Five questions this paper prepares you for, with answer hints

    Premium
Back to the paper library →