Pamięć podręczna kontekstu rośnie liniowo z każdym tokenem rozmowy i przy długim kontekście potrafi przewyższyć rozmiar samego modelu. Najskuteczniejsza odpowiedź na ten problem nie polega na oszczędniejszym zapisie, tylko na produkowaniu mniejszej ilości danych.
Czym jest współdzielenie głów uwagi
W klasycznym mechanizmie uwagi każda głowa utrzymuje własny komplet kluczy i wartości dla każdego tokenu. Współdzielenie polega na tym, że kilka głów korzysta ze wspólnego kompletu: w wariancie grupowym głowy dzieli się na grupy po cztery lub osiem, a w wariancie skrajnym wszystkie głowy warstwy używają jednego kompletu.
Zapytania pozostają osobne dla każdej głowy. Wspólne są tylko klucze i wartości — czyli dokładnie to, co trafia do pamięci podręcznej.
Ile to daje
Rozmiar pamięci podręcznej kontekstu spada proporcjonalnie do stopnia współdzielenia. Przy ośmiu głowach na jeden komplet zużycie pamięci maleje ośmiokrotnie, a wraz z nim spada liczba bajtów, które trzeba przeczytać przy każdym tokenie generowania.
Drugi efekt jest równie ważny: mniejsza pamięć podręczna oznacza więcej równoległych sesji mieszczących się w jednej karcie, co bezpośrednio przekłada się na koszt tokenu.
Co się traci
Niewiele — i to jest zaskakujące. Utrata zdolności modelu jest na tyle mała, że współdzielenie stało się standardem we wszystkich większych rodzinach modeli wydanych w ostatnich latach. Wariant skrajny, z jednym kompletem na warstwę, degraduje jakość zauważalnie, dlatego w praktyce dominuje wariant grupowy jako kompromis.
Dlaczego to wyjaśnia postęp w długim kontekście
Modele wydane niedawno obsługują konteksty o rząd wielkości dłuższe niż ich poprzedniczki o tej samej liczbie parametrów. Nie dlatego, że są mądrzejsze — dlatego, że mają mniejszy notatnik.