Proč byl kontext pro lokální modely slabina
Když jsme minule testovali zrychlení Qwen3.8-27B přes multi-token predikci, narazili jsme na druhý, možná důležitější limit: velikost kontextu. Na sestavě se dvěma kartami NVIDIA (RTX 5060 Ti 16 GB + RTX 3050 6 GB) jsme se s kontextem dostali maximálně na 32 tisíc tokenů. To nestačí ani pro běžné agentní nástroje — třeba Hermes vyžaduje minimálně 64 tisíc tokenů, a i OpenCode při práci na větším projektu posílá najednou přes deset tisíc tokenů.
Kontext přitom není o velikosti modelu, ale o paměti pro takzvanou KV cache — mezipaměť, do které se ukládají klíče a hodnoty pozornosti pro každý token v historii. Čím delší konverzace, tím větší cache. U klasických modelů roste lineárně s každým tokenem, takže 128 tisíc tokenů znamená gigabajty paměti navíc.
Hybridní pozornost: proč má Qwen3.8 výhodu
Qwen3.8-27B je postavený na architektuře Qwen3.5 s hybridní lineární pozorností (Gated DeltaNet). Zjednodušeně: ze 64 vrstev modelu je jen 16 „plných“ attention vrstev (každá čtvrtá), zbylých 48 používá lineární pozornost s pevným stavem. To v praxi znamená, že KV cache neroste za každou vrstvu, ale jen za těch 16 — tedy zhruba čtvrtinovou rychlostí. Kontext je u tohoto modelu výrazně levnější než u klasického dense modelu stejné velikosti.
llama.cpp tuto hybridní architekturu umí (rozpozná ji podle klíče full_attention_interval v GGUF souboru), takže není potřeba žádný speciální software. Stačí běžná verze knihovny.
Druhý díl skládačky: kvantizace Unsloth Dynamic 3.0
Druhý klíčový krok přišel od týmu Unsloth, který v srpnu vydal novou generaci kvantizace Dynamic 3.0. Nejde o kontextovou magii, ale o kvalitnější kompresi vah: lepší kalibrační dataset, chytřejší výběr vrstev a měřitelně nižší odchylku od původního modelu při stejné velikosti souboru. Podle dokumentace Unsloth dosahují nové kvantizace až o deset procent vyšší přesnosti při stejné velikosti souboru než konkurenční postupy.
Pro nás bylo důležité hlavně to, že nová řada přináší menší soubory. Varianta UD-Q3_K_XL má 13,15 GB (předchozí Q4_K_M měla téměř 16 GB). Ušetřené gigabajty VRAM jdou přesně tam, kde je model potřebuje — do KV cache a výpočetních bufferů.
Naše měření: 128K na jedné kartě, 192K na dvou
Otestovali jsme model v kvantizaci UD-Q3_K_XL na stejné sestavě jako minule — RTX 5060 Ti 16 GB a RTX 3050 6 GB, llama.cpp, kvantizovaná KV cache (q4_0) a flash attention. Výsledky:
- Jedna karta (5060 Ti 16 GB): 128 tisíc tokenů kontextu, generování 28,3 tokenu za sekundu, využito 15 045 MiB z 16 311 MiB VRAM.
- Dvě karty (16 + 6 GB): 128 tisíc tokenů, 19,1 tokenu za sekundu.
- Dvě karty: 192 tisíc tokenů, 19,0 tokenu za sekundu (slabší RTX 3050 je úzkým hrdlem, ale kontext se vejde).
- 256 tisíc tokenů: už se nevešlo — narazili jsme na výpočetní buffer slabší karty.
Pro srovnání: předchozí nastavení (Q4_K_M + multi-token predikce) zvládlo na stejné sestavě 32 tisíc tokenů při 28,5 tokenu za sekundu. Nové nastavení tak přináší čtyřnásobný kontext při zachované rychlosti — a dokonce bez druhé karty. Zajímavé je i to, že 128K kontext nejede na dvou kartách rychleji než na jedné: slabší RTX 3050 generování spíš brzdí, než pomáhá.
Co to znamená v praxi
Pro lokální AI agenty je to zásadní posun. Hermes (minimální požadavek 64 tisíc tokenů) s tímto nastavením konečně funguje, a OpenCode dostane čtyřnásobný prostor proti dřívějšku. Do kontextu se vejde celý středně velký projekt, dlouhá dokumentace nebo rozsáhlá konverzace s nástroji — přesně scénáře, kvůli kterým lidé sahají po cloudových modelech.
Neznamená to, že by lokální model porazil špičkové cloudové služby v kvalitě odpovědí. Znamená to, že pro řadu úloh už není nutné posílat data ven a platit za tokeny — a že velký kontext přestal být argumentem, proč lokální model nepoužívat.
Na co si dát pozor
- Multi-token predikce (MTP) se s velkým kontextem nevejde. Draftovací hlava potřebuje vlastní paměť, takže při 128K kontextu musí zůstat vypnutá. U jedné karty o rychlost nepřijdete (28,3 vs. 28,5 tokenu za sekundu), u dvou karet ano.
- Kvantizace Q3 je kompromis. UD-Q3_K_XL je menší než Q4_K_M, kvalita je podle Unsloth u nové řady velmi dobrá, ale pro citlivé úlohy zůstává Q4 bezpečnější volbou.
- Offload KV cache do operační paměti se nevyplatí. Kontext 128K sice projde, ale generování spadne na zhruba 6 tokenů za sekundu — pro agentní práci nepoužitelné.
- Plných 262 tisíc tokenů na této sestavě nejde. Limitem je výpočetní buffer slabší karty, ne samotný model.
Shrnutí
Qwen3.8-27B ukazuje, že cesta k použitelnému lokálnímu modelu nevede jen přes větší grafiku. Hybridní architektura snižuje cenu kontextu, lepší kvantizace uvolní paměť a správné nastavení llama.cpp udělá zbytek. Na 16GB kartě dnes lokálně běží model, který zvládne kontext srovnatelný s cloudovými službami — a to je argument, který před rokem nikdo nečekal.
Proč Qwen3.8-27B zvládne 128K kontext na 16GB grafice, když jiné modely stejné velikosti ne?
Kvůli hybridní architektuře Gated DeltaNet: jen 16 z 64 vrstev používá klasickou pozornost s rostoucí pamětí, zbytek má pevný stav. KV cache tak roste zhruba čtvrtinovou rychlostí a do VRAM se vejde mnohem delší historie.
Kde model stáhnout a co k tomu potřebuji?
Kvantizované soubory jsou na Hugging Face (unsloth/Qwen3.8-27B-GGUF), varianta UD-Q3_K_XL má 13,15 GB. Potřebujete grafiku s 16 GB VRAM (nebo dvě menší), llama.cpp a zapnutou kvantizovanou KV cache.
Je lepší jedna velká karta, nebo dvě menší?
V našem testu byla jedna 16GB karta rychlejší (28,3 tokenu za sekundu) než dvojice 16 + 6 GB (19,1). Slabší karta generování brzdí; druhá karta dává smysl jen pro extrémnější kontext (192K), ne pro rychlost.