Zašto context window LLM-a ne može biti beskonačno veliki?
Zašto context window LLM-a ne može biti beskonačno veliki?
Intervjuer te pita: „Zašto context window LLM-a ne može biti beskonačno veliki?" Ako odgovoriš „zato što fali VRAM-a, dodaću grafičkih kartica i gotovo", intervjuer samo odmahuje glavom.
Zašto?
Zato što ograničenja idu daleko van VRAM-a. Da ti dam i beskonačno VRAM-a, context window i dalje ne može biti beskonačno veliki.

Danas za 3 minuta da ti jasno objasnim zašto context window ne može biti beskonačno veliki.
Ovim pitanjem intervjuer proverava tri stvari: prvo, da li razumeš Self-Attention na algoritamskom nivou; drugo, koje se cene plaćaju pri zaključivanju; treće, zašto što je kontekst duži, to kvalitet zapravo pada.
Dobro, evo sad odgovora za pun bod, nauči napamet i gotovo.
Prvo, Self-Attention zahteva da svaki token računa skalarni proizvod sa svim ostalim token-ima, pa je složenost O(n²). Šta to znači? Kad se kontekst proširi sa 128K na 1M, količina izračunavanja skoči 61 put. Matrica pažnje od 1M token-a ima bilion elemenata, i svaki se mora izračunati.
FlashAttention može blokovskim računanjem da smanji čitanja i pisanja po VRAM-u, ali pritisak skalarnog proizvoda nad token-ima i dalje ostaje.
Drugo, pri zaključivanju svaki token mora da kešira Key i Value, što zovemo KV Cache, i model baš pomoću njega pamti svaku prethodnu reč. Za model od 70B, na 128K token-a KV Cache iznosi oko 40GB, jedna H200 kartica jedva izdrži; na 1M token-a to skače pravo na 310GB. Pazi, to je samo KV Cache, ne računajući težine samog modela.
Treće, na Stanfordu postoji jedan rad koji se zove Lost in the Middle, odnosno onaj U-oblik memorije o kom smo već pričali: ako se relevantni dokument stavi na početak konteksta, tačnost odgovora dostiže 75%, a stavi li se u sredinu, ostane samo 55%, pad od čak 20 procenata. Još urnebesnije — modelu se da 20 dokumenata kao da radi „na otvorenoj knjizi", pa mu rezultat na kraju bude gori nego bez dokumenata, kao na zatvorenoj knjizi. Dakle, kontekst nije što više to bolje; previše informacija može čak da odmagne.
Ako intervjuer dalje pita: „Pa nije li sada već milion token-a? Kako se to postiže?"
Reci mu.
Prvo, kompresovano skladištenje. DeepSeek V4 više ne čuva pune Key i Value, nego ih sabija u jednu mnogo sažetiju reprezentaciju, zadržava samo ključne osobine, pa količina skladištenja ode čak 93%.
Drugo, sparse attention. Standardna pažnja zahteva da svaki token računa sa svim token-ima, ali zapravo je većina token-a međusobno slabo povezana. Ideja sparse attention-a je da se računaju samo oni parovi token-a koji zaista imaju veze, a da se preskoče oni čiji je doprinos skoro pa nula.
Treće, podela posla na više kartica. Jedna grafička kartica ne može da primi KV Cache od milion token-a, pa se dugački niz seče na komade i podeli desetinama, čak i stotinama kartica — svaka kartica obrađuje samo jedan deo izračunavanja pažnje, a zatim se rezultati sabiraju.
Četvrto, RAG. Umesto da sve materijale guraš u context window, bolje je spolja podići jednu bazu znanja i u svakom pozivu ubaciti samo onaj sadržaj koji je najviše povezan sa trenutnim pitanjem.
Jezgro cele ideje staje u jednu rečenicu — neka svaki Token u context window-u bude vredan.
Da li si savladao ovo pitanje? Za još izvornih, detaljnih rastavljanja Agent pitanja sa intervju-a, lajkuj i prati
