Prefix Sliding. Myślenie może być długie, pamięć nie
Wykorzystuję treści generowane przez AI jako część mojego codziennego procesu nauki.
Test-time scaling brzmi niewinnie: daj modelowi więcej czasu na myślenie, dostaniesz lepszą odpowiedź. Problem: full attention trzyma cały ślad rozumowania w KV-cache. Koszt każdego nowego tokena rośnie z długością. Na twardym zadaniu, które potrzebuje długiego myślenia, to szybko przestaje być wykonalne.
Muennighoff i spółka (arXiv 2608.26070) zauważają coś oczywistego, jak już to usłyszysz. Tokeny pośrednie szybko tracą znaczenie. Prefix (system, zadanie, narzędzia, attention sink) i ostatnie kilka tysięcy tokenów — to jest to, na co model naprawdę patrzy.
Intuicja
Liczyć ((42 + 84) × 4) − 5. Jak już masz 126, nie potrzebujesz historii dodawania. W łańcuchu rozumowania tak samo: środek robi się szumem. Zostają krawędzie.
Prefix Sliding trzyma tylko prefix i okno ostatnich W tokenów:
Po rozgrzewce — gdy okno się zapełni — koszt na token jest stały, rzędu |prefix| + W. Myślenie może iść w 100k tokenów. Pamięć nie.
Poniżej zabawkowa taśma i wykres kosztu. Prefix jest przypięty. Okno jedzie. Środek wylatuje. Full attention wciąż rośnie.
Bez treningu, i z treningiem
Na istniejących modelach, bez dodatkowego treningu: ~3× szybciej przy podobnej jakości. Qwen3, okno 4096 na rysunku 1. Zysk nie bierze się stąd, że każdy token jest lepszy. Bierze się stąd, że w tym samym czasie myślenia model zdąży wygenerować więcej tokenów. To jest test-time scaling przez szybkość, nie przez magię. Stąd też 42as⁝ Szybkość inferencji zwiększa możliwości systemów AI: takt, nie tylko IQ tokena.
Z RL i truncated backprop: ślady ponad 100k tokenów. Do trenera idzie ~4× okno, loss tylko na ostatnich W. Reszta to kontekst. Nie musisz backpropagować całego miliona.
Co przegrywa
Vanilla sliding window zapomina zadanie — prefix wypada, model nie wie, co liczy. Last-k restart przerabia te same tokeny drugi raz; koszt piłokształtny. Streszczenie / compaction: narzut na summarizację i modele gubią informacje. Prefix Sliding wygrywa z tymi trzema.
Gdzie się sypie
LiveCodeBench bez treningu potrzebuje W ≥ 16384. Model pisze funkcję, potem myśli komentarzami przez tysiące tokenów — i początek kodu wylatuje z okna. Krótkie zadania (HealthBench, ~2k tokenów) prawie nic nie zyskują: całe pokolenie mieści się w warmupie.
Pułapka agentowa: jeden ogromny output narzędzia zalewa okno. Prefix zostaje, ale bieżąca praca tonie w logu.
Pojęcia
- 42v1⁝ KV-cache scaling problem in LLM inference
- 42au1⁝ Attention sink
- 42au2⁝ Sliding window
- 42au3⁝ Test-time scaling
- 42as⁝ Szybkość inferencji zwiększa możliwości systemów AI
src: https://arxiv.org/abs/2608.26070 Prefix Sliding for efficient test-time scaling (Muennighoff et al.)