współdzielenie głów uwagi

Modyfikacja architektury, w której kilka głów uwagi korzysta ze wspólnego kompletu kluczy i wartości zamiast utrzymywać własny. Redukuje rozmiar pamięci podręcznej kontekstu czterokrotnie lub więcej, bez kosztu w czasie — główny powód, dla którego nowsze modele radzą sobie z długim kontekstem lepiej niż starsze o tej samej liczbie parametrów.

W Polsce nazywane też:

współdzielenie głów uwagigrupowanie główwspólne klucze i wartości

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.

przepustowość pamięciIlość danych, jaką sprzęt przepycha między pamięcią a rdzeniami w ciągu sekundy. Przy generowaniu odpowiedzi to ona, a nie moc obliczeniowa, wyznacza sufit prędkości — bo każdy pojedynczy token wymaga przeczytania wszystkich wag modelu.mechanizm uwagiMechanizm, w którym reprezentacja każdego tokenu jest aktualizowana na podstawie pozostałych tokenów sekwencji, według wyliczonych wag. Działa równolegle w wielu głowach. Porównuje każdą pozycję z każdą, więc koszt rośnie kwadratowo z długością kontekstu.wnioskowanie modeluUżycie wytrenowanego modelu do wygenerowania odpowiedzi, przy zamrożonych wagach. Dzieli się na przetworzenie promptu i sekwencyjne generowanie token po tokenie — stąd różne stawki za tokeny wejściowe i wyjściowe oraz to, że długa odpowiedź kosztuje czasowo więcej niż długi prompt.pamięć podręczna klucz-wartośćPamięć podręczna przechowująca pośrednie reprezentacje dotychczasowych tokenów, dzięki której generowanie kolejnego tokenu nie wymaga przeliczania całej sekwencji. Rośnie liniowo z długością kontekstu i liczbą sesji — to główny konsument pamięci przy inference. Podstawa mechanizmu cache promptu.transformerArchitektura sieci neuronowej oparta na mechanizmie uwagi, opisana w 2017 roku i stanowiąca podstawę dzisiejszych dużych modeli. Przetwarza całą sekwencję równolegle, co umożliwiło trening na dużą skalę. Wagi są zamrożone po treningu — model nie zapisuje niczego podczas rozmowy.okno kontekstuMaksymalna ilość tekstu, liczona w tokenach, którą model może mieć „przed oczami" w jednym wywołaniu. Skończony budżet, w którym muszą zmieścić się wszystkie warstwy kontekstu.