PRZEWODNIK techniczny

Dekodowanie spekulatywne

Dekodowanie spekulatywne sprawia, że ​​duże modele językowe generują tekst szybciej, używając małego, szybkiego modelu „szkicowego” do odgadnięcia kilku tokenów do przodu, a następnie zlecając duży model weryfikację ich wszystkich na raz.

2 minuty czytaniaOstatnia aktualizacja

Przegląd

It speeds up inference 2-3x with identical output quality.

Głębokie nurkowanie

Zwykle LLM generuje tekst po jednym żetonie na raz: każdy token wymaga pełnego przejścia do przodu przez gigantyczny model i nie można rozpocząć następnego, dopóki bieżący nie zakończy się. Jest to powolne, ponieważ jest związane z pamięcią, a nie z obliczeniami — procesor graficzny spędza większość czasu na ładowaniu ciężarów, a nie na wykonywaniu obliczeń matematycznych. Dekodowanie spekulatywne likwiduje wąskie gardło. Mały, tani model roboczy proponuje fragment, powiedzmy, pięciu tokenów kandydujących. Następnie duży model „docelowy” przetwarza wszystkie pięć w jednym równoległym przejściu do przodu i sprawdza je. Akceptowane są żetony pasujące do tego, co by wygenerowały; przy pierwszej niezgodności koryguje, a resztę odrzuca. Ponieważ weryfikacja wielu tokenów kosztuje mniej więcej tyle samo, co wygenerowanie jednego, akceptowane domysły są prawie bezpłatne.

Wgląd techniczny

Sprytną częścią jest zasada próbkowania odrzucającego, która gwarantuje, że rozkład wyjściowy jest matematycznie identyczny z działaniem samego modelu docelowego — więc jakość nie jest przybliżona, jest dokładna. Współczynnik akceptacji przyspiesza: im lepiej mały model przewiduje duży, tym więcej tokenów zostaje przyklejonych na każdym etapie weryfikacji. Warianty takie jak Medusa dodają dodatkowe głowice predykcyjne do samego modelu docelowego, a wersje robocze EAGLE w przestrzeni obiektów eliminują potrzebę tworzenia oddzielnego modelu roboczego.

Wpływ strategiczny

Koszt i budżet

Decyzje dotyczące architektury wpływają na wydajność i koszty operacyjne przez lata.

Jaśniejsze decyzje

Edukacja techniczna pomaga zespołom wybrać odpowiedni stos, a nie tylko najnowszy.

Kontrola jakości

Lepsze wybory inżynieryjne zmniejszają liczbę incydentów związanych z niezawodnością w produkcji.

Przyszłość dekodowania spekulatywnego

Dekodowanie spekulatywne staje się domyślne w obsłudze stosów takich jak vLLM i TensorRT-LLM. Można się spodziewać, że dominować będą metody samodzielnego tworzenia projektów (Medusa, EAGLE, Lookahead), ponieważ pozwalają one uniknąć utrzymywania drugiego modelu oraz spekulacji opartej na drzewach, która w każdym kroku weryfikuje wiele potencjalnych gałęzi. W miarę rozwoju modeli wąskie gardło związane z pamięcią pogłębia się, czyniąc spekulacje jeszcze bardziej wartościowymi, a kreślarze świadomi sprzętu będą zwiększać prędkości w świecie rzeczywistym.

Implementacja w świecie rzeczywistym

Wersja robocza modelu 7B proponująca tokeny dla modelu czatu 70B w celu zmniejszenia opóźnień odpowiedzi u asystenta produkcyjnego

Głowy Meduzy przykręcone do LLM, dzięki czemu można przewidzieć kilka przyszłych tokenów na raz, bez osobnego modelu roboczego

vLLM umożliwiający dekodowanie spekulatywne w celu zwiększenia przepustowości tokenów na sekundę w obsługującym klastrze

Szkicowanie EAGLE w przestrzeni ukrytych funkcji modelu w celu zwiększenia współczynnika akceptacji i ogólnej szybkości

Zagrożenia i poręcze

Optymalizacja jednego testu porównawczego może ukryć szersze słabości systemu.

Koszty infrastruktury i utrzymania są często niedoszacowane.

W miarę jak systemy stają się coraz bardziej złożone, luki w bezpieczeństwie i obserwowalności mogą się zwiększać.

Plan wdrożenia

1

Przed wdrożeniem zdefiniuj docelowe opóźnienia, jakość i koszty.

2

Test porównawczy w realistycznych warunkach obciążenia i danych.

3

Monitorowanie przyrządu pod kątem błędów, dryftu i wpływu użytkownika.

4

Przed skalowaniem przygotuj ścieżki wycofywania zmian i reakcji na incydenty.

Odkrywaj dalej

Free newsletter

Get the daily AI briefing

Three verified AI stories every weekday morning, written in plain English. Free forever, no ads.

One email each weekday. Unsubscribe in one click. We never sell or share your address.

Test yourself

Take the Speculative Decoding quiz

Instant feedback on every answer, and a shareable certificate with a verifiable ID once you pass a course.

Rozpocznij quiz

Support free AI education. AI Understanding is a 501(c)(3) nonprofit — no ads, no paywall, ever. Make a donation

Następny poradnik

Dekodowanie spekulatywne za pomocą programu EAGLE

Często zadawane pytania

What is Speculative Decoding?

Dekodowanie spekulatywne sprawia, że duże modele językowe generują tekst szybciej, używając małego, szybkiego modelu „szkicowego” do odgadnięcia kilku tokenów do przodu, a następnie zlecając duży model weryfikację ich wszystkich na raz. Przyspiesza wnioskowanie 2-3 razy przy identycznej jakości wyjściowej.

Jaka jest podstawowa idea dekodowania spekulatywnego?

Model z szybką wersją roboczą proponuje wiele tokenów, a duży model docelowy sprawdza je wszystkie w jednym równoległym przebiegu.

Dlaczego normalne generowanie LLM po jednym tokenie jest powolne?

Każdy krok głównie ładuje ogromne macierze z pamięci, zamiast wykonywać ciężkie obliczenia, więc procesor graficzny jest niedostatecznie używany.

Co dzieje się na pierwszym tokenie, gdy model roboczy i docelowy nie zgadzają się?

Akceptowane są żetony aż do braku porozumienia; począwszy od niezgodności, są one odrzucane i zachowywany jest prawidłowy token modelu docelowego.

W jaki sposób dekodowanie spekulatywne wpływa na jakość wyjściową?

Reguła próbkowania odrzucającego gwarantuje, że ostateczna dystrybucja dokładnie odpowiada modelowi docelowemu, więc jakość pozostaje niezmieniona.

Co najbardziej bezpośrednio determinuje przyspieszenie dekodowania spekulatywnego?

Im więcej opracowanych tokenów model docelowy zaakceptuje na etapie weryfikacji, tym większe przyspieszenie.