NanoQuant: Post-training kvantizace LLM pod hranici jednoho bitu


O čem je řeč

V únoru 2026 tým Samsung Research (Hyochan Chong, Dongkyu Kim, Changdong Kim, Minseop Choi) publikoval paper popisující NanoQuant — metodu post-training kvantizace (PTQ), která dokáže komprimovat váhy velkých jazykových modelů na 1 bit a méně. Ne jako marketingový trik s hvězdičkou a poznámkou pod čarou, ale jako funkční framework s měřitelnými výsledky na standardních benchmarcích.

Proč je to zajímavé: dosavadní PTQ metody (GPTQ, AWQ, QuIP, AQLM) fungují spolehlivě na 3–4 bitech na váhu. Pod touto hranicí se rozpadají. Kdo chtěl jít níže, musel sáhnout po QAT (quantization-aware training) metodách jako LittleBit nebo DBF, které ale vyžadují výrazně víc dat, výpočetního času a často i přístup k trénovacímu pipeline modelu. NanoQuant tuhle mezeru překlenuje — dosahuje komprese srovnatelné s QAT, ale s efektivitou a jednoduchostí PTQ.

NanoQuant jednoduše: 70B model na herní grafice

Co je sub-1-bit kvantizace a proč na tom záleží


Představ si, že máš knihu, která má 138 000 stránek. Je v ní všechno — umí odpovídat na otázky, překládat, psát texty. Problém je, že potřebuješ obrovskou knihovnu, aby se ti tam vešla. Normální člověk si ji domů nedá.

Kvantizace je v podstatě způsob, jak tu knihu přepsat menším písmem. Místo toho, aby každé číslo v modelu (a těch jsou miliardy) zabíralo 16 pozic přesnosti, řeknete — stačí mi 4. Nebo 2. Model je pak menší, ale pořád rozumně funguje. Tohle se dělá běžně a funguje to dobře až do určité hranice.

NanoQuant jde dál. Řekne — stačí mi méně než jedna pozice na číslo. To zní absurdně, protože jedna pozice znamená jen dvě možnosti: plus nebo minus. Méně než jedna pozice by znamenalo, že ani to plus/minus nemáte pro každé číslo zvlášť.

Jak to udělají? Místo toho, aby každé číslo komprimovali samostatně, vezmou celou tabulku čísel a rozloží ji na několik menších tabulek, kde jsou jen jedničky a minus jedničky. Ty menší tabulky se pak vynásobí a dají dohromady přibližně totéž co originál. A protože ty menší tabulky jsou menší než originál, průměrně vychází méně než jeden bit na původní číslo.

Výsledek: model, který normálně zabírá 138 GB a potřebuje dvě profesionální grafické karty za statisíce, se smrskne na 5,35 GB a běží na běžné herní grafice za pár tisíc. A pořád dává rozumné odpovědi.

Háček je v tom, že tohle zatím existuje jen jako vědecký článek. Kód není veřejný, nemůžete si to stáhnout a zkusit. Ale ukazuje to směr — modely, které dnes potřebují serverovnu, by za rok nebo dva mohly běžet na normálním počítači nebo i na telefonu.


Zdroj: NanoQuant — arxiv.org/abs/2602.06694


Problém: proč je sub-1-bit komprese těžká

Standardní kvantizace funguje tak, že se každá váha zaokrouhlí na nejbližší hodnotu z omezeného počtu úrovní. Při 4 bitech máte 16 úrovní, při 2 bitech 4 úrovně. Při 1 bitu máte dvě: +1 a −1. To je brutální ztráta informace.

Existující PTQ metody na tomhle selhávají ze dvou důvodů:

  1. Nemají dostatečně sofistikovaný způsob, jak rozhodnout, která váha bude +1 a která −1, aby výsledný model stále dával smysl.
  2. Některé metody technicky tvrdí, že komprimují na 1 bit, ale pak si "berou zpět" paměť přes pomocné struktury — škálovací faktory, lookup tabulky, metadata — takže skutečný paměťový otisk je výrazně vyšší.

QAT metody tenhle problém řeší přetrénováním modelu s kvantizačním šumem jako součástí tréninkového procesu. Funguje to, ale vyžaduje to stovky tisíc až miliony kalibračních tokenů, desítky GPU hodin a přístup k tréninkovému pipeline.


Jak NanoQuant funguje

NanoQuant reformuluje celý problém kvantizace. Místo zaokrouhlování jednotlivých vah na binární hodnoty rozkládá váhovou matici na součin nízko-rankových binárních matic a škálovacích faktorů. Matematicky: matice vah W se aproximuje jako součin binárních matic (obsahujících pouze +1 a −1) a diagonálních škálovacích vektorů.

Pokud má původní matice rozměr m×n a rank rozkladu je r, potřebujete r×(m+n) binárních hodnot plus škálovací parametry. Při dostatečně nízkém r klesne průměrný počet bitů na váhu pod 1.0.

Tříkrokový pipeline

Komprese probíhá po blocích modelu (transformer block po bloku) ve třech krocích:

Krok 1 — Mitigace propagace chyb. Kvantizační chyba se akumuluje, jak rekonstrukce postupuje sítí. Před kvantizací aktuálního bloku se jeho full-precision váhy doladí tak, aby kompenzovaly chyby zavedené kvantizací předchozích bloků. Tohle není nový nápad — podobný přístup používají i AQLM nebo QuIP — ale NanoQuant ho aplikuje na všechny lineární vrstvy v bloku, ne jen na vybrané.

Krok 2 — Inicializace binární faktorizace (LB-ADMM). Tady je jádro celé metody. NanoQuant používá ADMM (Alternating Direction Method of Multipliers) pro řešení kombinatorického problému: jaká kombinace binárních matic a škálovacích faktorů nejlépe aproximuje původní váhy? ADMM iterativně střídá řešení dvou podproblémů — optimalizaci spojitých škálovacích parametrů (uzavřená forma, least-squares) a projekci na binární omezení (sign operace). Celý postup je "Hessian-aware", tedy bere v úvahu citlivost výstupu na jednotlivé váhy.

Autoři experimentálně ukázali, že LB-ADMM inicializace překonává inicializační schémata z LittleBit i DBF. Jejich hypotéza: vyřešit kombinatorický problém binární faktorizace před fine-tuningem poskytuje stabilnější optimalizační krajinu než přístupy, které inicializaci řeší přibližně a spoléhají na to, že ji gradientová optimalizace dotáhne.

Po ADMM následuje magnitude balancing — vyrovnání škálovacích faktorů, aby binární matice měly vyvážený rozsah.

Krok 3 — Zpřesnění faktorizovaných komponent. Po inicializaci se binární matice a škálovací faktory dolaďují pomocí Straight-Through Estimatorů (STE). STE je standardní trik pro gradientovou optimalizaci přes diskrétní operace — při zpětném průchodu se gradient sign funkce nahradí identitou. Toto zpřesnění probíhá lokálně na úrovni bloku, ne globálně.

Na závěr celého procesu přichází model-level rekonstrukce: lehká kalibrace škálovacích faktorů přes celý model pro lepší globální zarovnání aktivací.


Co znamená "sub-1-bit"

Pojem sub-1-bit může znít jako protimluv — jak můžete mít méně než jeden bit informace na váhu? Odpověď je v tom, že nízko-rankový rozklad sdílí informaci mezi váhami. Binární matice v rozkladu jsou menší než původní váhová matice, takže celkový průměrný počet bitů na váhu (bits per weight, BPW) klesne pod 1.0.

NanoQuant demonstroval výsledky na 0.8 BPW, tedy méně než jeden bit na váhu v průměru. Při tomhle kompresním poměru samozřejmě dochází k degradaci kvality — ale ta je měřitelná a v kontextu 70B modelů stále překvapivě nízká.


Čísla

Tady to přestává být akademické cvičení a začíná to být prakticky relevantní:

  • Llama2-70B: komprese ze 138,04 GB na 5,35 GB — kompresní poměr 25,8×
  • Inference: kvantizovaný 70B model běží na spotřebitelské 8GB GPU rychlostí až 20,11 tokenů/s
  • Kalibrace: 128 vzorků (~0,26M tokenů), 1 GPU
  • Čas komprese: ~13 hodin na jednom H100 pro Llama2-70B
  • CUDA kernely: autoři implementovali vlastní binární GEMV/GEMM kernely optimalizované pro datacenter, spotřebitelské i edge GPU

Pro srovnání: Llama2-70B v FP16 vyžaduje minimálně 140 GB VRAM, tedy dvě A100 80GB. NanoQuant ho nacpe na jednu RTX 4060 s 8 GB.

Autoři testovali na rodinách modelů Llama2, Llama3, Qwen3 a dalších. Napříč modely NanoQuant vytváří novou Pareto frontu v prostoru komprese vs. kvalita — tedy pro danou úroveň komprese dosahuje lepší kvality než kterákoliv jiná PTQ metoda.


Kontext: co existuje kolem

NanoQuant není v izolaci. Celá oblast sub-1-bit kvantizace LLM se v posledním roce výrazně zahustila:

LittleBit (Samsung Research / NeurIPS 2025) — QAT metoda, která jde až na 0.1 BPW. Používá SVD-inspirovanou latentní faktorizaci s multi-scale kompenzací. Dosahuje skvělých výsledků, ale vyžaduje přetrénování.

DBF / Double Binary Factorization (Boža & Macko, 2025) — Rozkládá váhové matice na součin dvou binárních matic s diagonálním škálováním. Inference je efektivní (jen sčítání místo násobení), ale škálovací parametry jsou příliš omezené — všechny rankové komponenty sdílejí stejný magnitudový profil.

MDBF / Multi-Envelope DBF (prosinec 2025) — Rozšíření DBF, které nahrazuje jednoduché škálování rank-l obálkou. Zlepšuje perplexitu i zero-shot přesnost oproti DBF při stejném BPW.

BTC-LLM (květen 2025) — Používá naučitelné transformace a binární codebooky místo přímé binarizace.

HBLLM — Waveletová dekompozice pro vylepšenou 1-bit kvantizaci s frekvence-aware seskupováním.

NanoQuant se od těchto metod odlišuje tím, že je čistě PTQ — nepotřebuje přetrénování — a přesto dosahuje konkurenceschopné kvality. To je prakticky zásadní rozdíl, protože PTQ můžete aplikovat na libovolný model bez přístupu k trénovacím datům nebo pipeline.


Současný stav projektu

Na rovinu: k dnešnímu dni (duben 2026) je NanoQuant čerstvý research paper bez veřejně dostupného kódu.

  • Paper: publikován 6. února 2026 na arXiv, necelé dva měsíce starý
  • Kód: zatím nevydaný. Autor na Hugging Face napsal: "We are working on open-sourcing the code, so please stay tuned!"
  • Kvantizované modely / checkpointy: nejsou k dispozici. Na otázku po checkpointech autor zatím neodpověděl.
  • Vlastní CUDA kernely: zmíněny v paperu, ale rovněž nejsou veřejné

Jde o výzkum Samsung Research, takže open-source release může trvat déle kvůli interním schvalovacím procesům. Autor Hyochan Chong se v únoru 2025 vrátil do Samsung Research po dokončení studia a NanoQuant je jeden ze dvou paperů, které publikoval v únoru 2026 (druhý je RaBiT — 2-bit QAT metoda).


Co to znamená pro praxi

Než se kód uvolní, NanoQuant zůstává akademický výsledek. Ale i jako takový naznačuje směr:

Pro edge nasazení: Pokud se sub-1-bit formáty dostanou do mainstreamových inference frameworků (llama.cpp, vLLM, TensorRT-LLM), otevírá se možnost provozovat modely třídy 70B na hardware, kde dnes sotva běží 7B. To je relevantní pro kohokoliv, kdo provozuje lokální LLM inference na omezeném hardware — Raspberry Pi, jednočipové GPU, mobilní zařízení.

Pro GGUF ekosystém: Zatím žádná podpora. NanoQuant vyžaduje vlastní binární CUDA kernely, takže integrace do llama.cpp by znamenala portovat tyhle kernely na CPU/Metal/Vulkan backendy. To není triviální, ale komunita kolem llama.cpp už v minulosti portovala i složitější formáty.

Pro kvalitu vs. komprese trade-off: NanoQuant ukazuje, že Pareto fronta se posouvá. Před rokem byl sub-1-bit režim terra incognita pro PTQ. Teď máme měřitelné výsledky, které říkají, že 70B model komprimovaný na 5,35 GB stále dává rozumné výstupy. To mění kalkulaci pro deployment.

Stojí za to sledovat autorův profil a Samsung Research na Hugging Face. Jakmile se kód uvolní, bude to jeden z nejzajímavějších frameworků k otestování.


Reference a zdroje


Dokument vytvořen: Duben 2026

Loading