Architektury LLM
Architektury dużych modeli językowych (LLM) — to fundamentalne zasady i struktury, które określają sposób budowania, uczenia i funkcjonowania dużych modeli językowych. Współczesne LLM, zdolne do rozumienia i generowania języka ludzkiego, opierają się niemal całkowicie na architekturze Transformer[1], lecz obejmują wiele udoskonaleń i różnych podejść mających na celu zwiększenie efektywności, skalowalności i możliwości.
Rodziny architektur LLM (transformery)
Współczesne duże modele językowe opierają się na architekturze transformera[1], lecz wykorzystują ją w różny sposób w zależności od celu: rozumienia tekstu, generowania jego kontynuacji lub przekształcania jednego tekstu w inny. W praktyce wyróżnia się trzy rodziny przy zachowaniu podstawowych zasad transformera[2][3][4].
1. Encoder‑only (tylko koder)
Model wykorzystuje wyłącznie stos koderów i przetwarza cały tekst wejściowy dwukierunkowo. Wstępne uczenie opiera się zazwyczaj na masked‑language modeling (MLM, modelowanie językowe z maskowaniem): część tokenów jest ukrywana, a model uczy się odtwarzać je na podstawie otoczenia. Dzięki dwukierunkowemu kontekstowi modele te sprawdzają się w zadaniach rozumienia i scoringu: klasyfikacja, rozpoznawanie encji, rerankowanie dokumentów i ekstrakcyjny QA. Nie są przeznaczone do autoregresywnej generacji „od zera".
Dodatkowo w praktyce stosuje się również alternatywne cele wstępnego uczenia dla rodziny encoder‑only: replaced token detection (RTD) w ELECTRA (model-dyskryminator rozpoznaje podmienione tokeny) oraz uczenie kontrastywne bi-enkoderów na potrzeby wyszukiwania semantycznego/retrieval (InfoNCE/softmax‑loss na parach „zapytanie-dokument", jak w Dense Passage Retrieval). Stosowane w RAG, modele encoder‑only pełnią rolę albo bi-enkodera (oddzielne kodowanie zapytania i dokumentu na potrzeby szybkiego wyszukiwania ANN), albo kros-enkodera (wspólne kodowanie pary na potrzeby precyzyjnego rerankowania).
Zalety:
- Wysoka jakość rozumienia tekstu dzięki dwukierunkowemu kontekstowi: klasyfikacja, NER, ekstrakcja faktów, rerankowanie, ekstrakcyjny QA.
- Przetwarzanie równoległe i wysoka przepustowość: jedno przejście w przód bez auto‑regresji; wygodne do batchowania masowego scoringu.
- Naturalna integracja z wyszukiwaniem i RAG: w roli bi-enkodera — szybkie wyszukiwanie semantyczne; w roli kros-enkodera — precyzyjne rerankowanie.
- Efektywna adaptacja: stosunkowo kompaktowe warianty (≈100–300 mln parametrów; BERT‑base ≈110 mln) po ukierunkowanym doszkalaniu osiągają wysoką jakość.
- Stabilne opóźnienie niezależne od długości generowanej odpowiedzi (brak dekodowania krok po kroku); dobrze nadają się do offline scoringu dużych kolekcji.
- Możliwość zwiększenia okna kontekstu enkoderów dzięki pozycjom względnym/rotacyjnym i/lub lokalnie rzadkiej uwadze (np. Longformer/BigBird), co jest przydatne w przypadku długich dokumentów.
Wady:
- Brak własnych możliwości generatywnych: do dialogów i rozbudowanych odpowiedzi potrzebny jest dekoder lub zewnętrzny moduł generatywny.
- Ograniczoność w scenariuszach interaktywnych: brak generacji krokowej z zachowaniem stanu.
- Niezgodność celu wstępnego uczenia z zadaniami swobodnej generacji: MLM gorzej odpowiada generacji w porównaniu z modelowaniem przyczynowo-skutkowym.
- Historycznie ograniczone okno kontekstu (często 512 tokenów w podstawowych konfiguracjach pozycji bezwzględnych); rozszerzenie wymaga specjalnych schematów pozycji/uwagi i/lub doszkalania.
- W zadaniach retrieval wymagane jest oddzielne kontrastywne doszkalanie bi-enkodera i/lub kros-enkodera; bez tego jakość wyszukiwania/rerankowania jest zazwyczaj niższa niż w przypadku specjalnie wytrenowanych modeli.
Reprezentatywne modele: BERT i jego pochodne, a także RoBERTa i DeBERTa (rozszerzone warianty encoder‑only); wśród alternatywnych celów wstępnego uczenia — ELECTRA (RTD). [5][6][7][8][9][10]
2. Decoder‑only (tylko dekoder)
Wykorzystywany jest wyłącznie stos dekoderów z przyczynową (lewostronna) uwagą: model przewiduje kolejny token na podstawie już zadanego prefiksu. Taki tryb uczenia — causal language modeling (CLM) — czyni te modele naturalnym wyborem do generacji: dialogi, rozbudowane odpowiedzi, tekst kreatywny, kod programistyczny. Kompromisem jest wzrost opóźnienia i rozmiaru KV-cache przy długich promptach. W praktyce dla decoder‑only powszechnie stosuje się techniki inżynierskie: zmniejszenie KV-cache dzięki MQA i GQA, przyspieszenie wnioskowania przez speculative decoding oraz optymalizacje serwerowe (PagedAttention/vLLM, continuous batching, chunked prefill).[11][12][13][14][15]
Zalety:
- Naturalna generacja tekstu (CLM): silne możliwości zero‑shot i few‑shot; dobrze skaluje się.[16]
- Wszechstronność zastosowania: jeden model rozwiązuje wiele zadań dzięki instrukcjom i przykładom w prompcie; naturalnie łączy się z RAG i wywoływaniem narzędzi (tool use).
- Dojrzały ekosystem: praktyki instrukcyjnego doszkalania i wyrównywania zachowania (RLHF, DPO); dostępne implementacje otwarte i komercyjne.[17][18]
- Bogaty stos optymalizacji wnioskowania: MQA/GQA zmniejszają rozmiar KV-cache i zwiększają przepustowość; speculative decoding przyspiesza wnioskowanie bez zmiany rozkładu; PagedAttention/vLLM z continuous batching i chunked prefill zwiększają end-to-end wykorzystanie GPU.[19][20][21][22][23]
- Wsparcie dla generacji strukturyzowanej na potrzeby ścisłych formatów odpowiedzi (JSON/SQL/DSL), co upraszcza integrację z systemami informatycznymi i API.[24][25]
Wady:
- Zwiększone opóźnienie generacji: sekwencyjne wnioskowanie; koszt nowego tokenu rośnie wraz z długością już „przeczytanego" kontekstu (KV-cache).
- Mniej korzystny przy profilu „długie wejście – krótkie wyjście" (sumaryzacja, tłumaczenie) w porównaniu z encoder–decoder, gdzie wejście jest kodowane jednorazowo.
- Ograniczenie jednokierunkowym kontekstem: w zadaniach rozumienia niekiedy ustępuje modelom z dwukierunkową reprezentacją (encoder‑only / encoder–decoder).
- Pamięć pod KV-cache może stanowić „wąskie gardło" przy długich promptach i dużych batchach; [26]
- Kwantyzacja aktywacji/KV (INT8/FP8) przyspiesza wnioskowanie, ale może obniżać jakość na długich kontekstach/kodzie; wymaga starannej walidacji (zwłaszcza przy rygorystycznych SLA).
Reprezentatywne modele: GPT‑3, GPT‑4 (szczegóły architektury i zestawu danych nie są publicznie ujawnione), LLaMA i Llama 3 (8B/70B, 2024).[27][28][29][30]
3. Encoder–decoder (koder–dekoder)
Architektura łączy oba komponenty. Enkoder działa w trybie dwukierunkowym, a dekoder — przyczynowo. Enkoder jednorazowo analizuje wejście i tworzy jego reprezentację; dekoder generuje wyjście, odwołując się do tej reprezentacji poprzez cross‑attention. Takie rozdzielone podejście jest szczególnie przydatne tam, gdzie wymagane jest przekształcenie długiego tekstu wejściowego w krótkie wyjście: tłumaczenie maszynowe, sumaryzacja, odpowiedzi na podstawie dokumentów. Chociaż metoda wymaga większych łącznych nakładów obliczeniowych (dwa stosy i kros-uwaga), jej zaletą jest kontrolowana generacja oparta na pełnej analizie tekstu źródłowego; przy tym kodowanie wykonywane jest jednokrotnie i ponownie wykorzystywane przez cały proces wnioskowania.
Zalety:
- Warunkowa generacja: dekoder wykorzystuje cross‑attention do reprezentacji wejścia. [31]
- Efektywny w scenariuszu „długie wejście → krótkie wyjście": wejście kodowane jest jednokrotnie.
- Wygodny dla formatu „text‑to‑text" i kontrolowanego wnioskowania (prefiksy zadań, specjalne instrukcje). [32]
- Stabilność i efektywność przy długim źródle: w fazie dekodowania rośnie tylko self‑attention po wyjściu, a cross‑attention ponownie wykorzystuje stałe klucze/wartości z enkodera (wejście nie jest „odczytywane ponownie" na każdym kroku).
Wady:
- Dwa stosy zwiększają wymagania co do pamięci i obliczeń podczas uczenia i zastosowania.
- Przy bardzo długich sekwencjach łączne opóźnienie jest porównywalne z decoder‑only; auto-regresja pozostaje wąskim gardłem.
- Mniej uniwersalnych modeli czatowych niż wśród decoder‑only; częściej stosowane jako wysokiej jakości silnik seq2seq do konkretnych zadań.
- Przy bardzo długim wejściu wzrasta zużycie pamięci pod klucze/wartości cross‑attention w każdej warstwie dekodera (dla całego źródła), co wymaga starannego planowania serwisowania.
Reprezentatywne modele: T5 (w tym T5 v1.1 oraz praktyka instrukcyjnego doszkalania w FLAN‑T5) i BART. [33][34][35]
Gęste (dense) transformery
Klasyczna i najbardziej rozpowszechniona architektura LLM: przy przetwarzaniu każdego tokenu uczestniczy niemal cały zestaw parametrów modelu. W odróżnieniu od podejść rzadkich (np. Mixture‑of‑Experts), nie ma selektywnej aktywacji podsieci — każdy blok działa dla każdego tokenu. [1]
Zasada działania i architektura
Podstawowa struktura. Model to stos N jednakowych bloków transformera. Każdy blok zawiera:
- Wielogłową samo-uwagę (Multi‑Head Self‑Attention). Dla każdego tokenu obliczane są trzy wektory: Q (query), K (key), V (value); uwaga jest określana jako , gdzie — maska (przyczynowa i/lub maska paddingowa) wykluczająca niedopuszczalne pozycje. Kilka „głów" uwagi równolegle uwzględnia różne aspekty kontekstu (H głów, zazwyczaj ); ich liczba rośnie wraz ze skalą modelu. [1]
- Sieć w pełni połączoną (Feed‑Forward Network, FFN). Dwie warstwy liniowe z nieliniowością między nimi (zazwyczaj GELU/SiLU; w niektórych współczesnych modelach — SwiGLU). Wymiar pośredni zazwyczaj wynosi ; przy zastosowaniu SwiGLU często przyjmuje się w celu zachowania porównywalnej liczby parametrów. FFN zawiera znaczną część parametrów. [1][36]
Dodatkowe komponenty. Stosowane są połączenia rezydualne (residual) i normalizacja warstw; we współczesnych LLM częściej stosuje się Pre‑LN (normalizacja przed blokami) — poprawia to stabilność uczenia przy dużych głębokościach. Obok klasycznej LayerNorm coraz powszechniej stosuje się RMSNorm (zmniejsza koszty obliczeniowe i dobrze sprawdza się w dużych modelach); w niektórych rodzinach stosuje się też normalizację w przestrzeni uwagi (np. normalizacja Q/K przed softmax). Reprezentacje pozycyjne mogą być bezwzględne lub względne; dla długiego kontekstu de facto standardem stał się RoPE.
Przykłady modeli i skala
- BERT‑Large: 24 warstwy, wymiar 1024, 16 głów uwagi, ≈340 mln parametrów. [37]
- GPT‑3 (175B): 96 warstw, wymiar 12288, 96 głów uwagi, ≈175 mld parametrów. [38]
- LLaMA‑65B: 80 warstw, wymiar 8192, 64 głowy uwagi, ≈65 mld parametrów. [39]
- PaLM‑540B: 118 warstw, wymiar rzędu 18432, ≈540 mld parametrów. [40]
Zalety
- Jednolite bloki, dobrze zbadane tryby uczenia i przewidywalne zachowanie przy skalowaniu.
- Jakość poprawia się w sposób potęgowy wraz ze wzrostem liczby parametrów i danych; tryb compute‑optimal zakłada jednoczesne zwiększanie rozmiaru modelu i liczby tokenów uczących. [41][42]
- Ta sama architektura po doszkalaniu obejmuje szerokie spektrum zadań bez zmian na poziomie warstw.
Wady
- Pełna samo-uwaga ma kwadratową złożoność względem długości sekwencji (), co ogranicza okno kontekstu. [1]
- Pełna aktywacja parametrów na kroku generacji: w dekoderze bez MoE koszt wnioskowania na token rośnie w przybliżeniu proporcjonalnie do liczby parametrów.
- Wąskie gardło — przepustowość pamięci (memory‑bound): ładowanie wag z HBM często ogranicza szybkość wnioskowania.
Ograniczenia skalowania i kontekstu
- Pamięć pod parametry rośnie liniowo z rozmiarem modelu; pamięć treningowa zwiększa się z powodu gradientów i stanów optymalizatora.
- Podstawowe konfiguracje historycznie ograniczały się do 2–4 tys. tokenów. Współczesne schematy pozycyjne (RoPE) i techniki rozszerzania (Position Interpolation, YaRN i in.) pozwalają zwiększać okno o rząd wielkości i więcej, lecz kosztem dodatkowego obciążenia obliczeniowego/pamięciowego. [43][44]
Współczesne optymalizacje
- FlashAttention. Dokładna uwaga uwzględniająca hierarchię pamięci GPU; zmniejsza zużycie pamięci i przyspiesza uczenie/wnioskowanie przy długich sekwencjach. [45]
- Redukcja i zarządzanie KV-cache. Multi‑Query Attention i Grouped‑Query Attention zmniejszają rozmiar cache i ruch pamięci; na poziomie serwera PagedAttention (vLLM) zwiększa przepustowość dzięki stronicowemu zarządzaniu cache. [46][47][48]
- Speculative decoding. Model szkicowy (draft) proponuje kontynuację, a główny model szybko ją weryfikuje; osiągane jest przyspieszenie bez zmiany rozkładu wyjściowego. [49]
Modele rzadkie (Sparse Models) i Mixture‑of‑Experts (MoE)
MoE to sposób na zwiększenie pojemności modelu bez proporcjonalnego wzrostu obliczeń na token. Zamiast jednego dużego bloku FFN w warstwie używany jest zestaw równoległych „ekspertów" (kilka niezależnych FFN), a uczony router (gating network) dla każdego tokenu wybiera top‑k najbardziej trafnych ekspertów (zazwyczaj k=1–2; w niektórych modelach k=4). Aktywowane są tylko wybrane eksperty; ich wyjścia są ważone i sumowane. W ten sposób łączna liczba parametrów może sięgać setek miliardów, a nawet bilionów, jednak na każdym kroku aktywowana jest tylko niewielka ich część. [50][51]
Przykłady modeli i skala
- Switch Transformer (Google): do ~1,6T parametrów; routing top‑1 (jeden ekspert na token). Pokazał, że MoE pozwala drastycznie zwiększyć pojemność przy porównywalnych kosztach na token. [50]
- GLaM (Google): 1,2T parametrów, 64 ekspertów w warstwie, top‑2; na każdy token aktywowane jest ≈96,6B parametrów (≈8%). [51]
- Mixtral 8×7B (Mistral AI): ~46,7B parametrów łącznie, ≈12,9B aktywnych na token, top‑2. [52][53]
- Mixtral 8×22B: ~141B parametrów łącznie, ≈39B aktywnych na token, top‑2. [54]
- DBRX (Databricks): 132B parametrów łącznie, ≈36B aktywnych na token; 16 ekspertów i routing top‑4 (fine‑grained MoE). [55]
Zalety
- Koszt obliczeń wyznaczany jest przez liczbę aktywnych ekspertów k, a nie łączną liczbę parametrów: można uczyć i używać modeli w skali bilionowej przy kosztach porównywalnych z gęstymi modelami znacznie mniejszego rozmiaru. [51]
- Specjalizacja: eksperci automatycznie „dostosowują się" do języków/dziedzin/wzorców, poprawiając jakość w zadaniach wielodziedzinowych.
- Elastyczne wdrożenie: można trzymać w pamięci często używanych ekspertów i ładować rzadkich (przy odpowiedniej infrastrukturze).
Ograniczenia
- Balansowanie obciążenia: bez regularyzacji router może „utkwić" na części ekspertów (router collapse). Potrzebne są auxiliary losses (load‑balancing) i ulepszone schematy routingu. [50]
- Złożoność obliczeń rozproszonych: wymagany jest expert parallelism i wymiana all‑to‑all; koszty komunikacji i zarządzanie pamięcią stają się wąskim gardłem. [56]
- Stabilność uczenia: istotne są ustawienia routera i ograniczeń pojemności (capacity), w przeciwnym razie możliwe są degradacje jakości/zbieżności.
Współczesne ulepszenia
- Expert‑Choice routing: eksperci „wybierają" tokeny, co poprawia balansowanie i zbieżność przy porównywalnych kosztach. [57]
- Fine‑grained MoE: większa liczba mniejszych ekspertów (jak w DBRX) daje drobniejszą granularność specjalizacji. [55]
- Sparse Upcycling: przekształcenie gęstego modelu w MoE z jego checkpointu pozwala istotnie podnieść jakość przy umiarkowanych kosztach. [58]
Celowość stosowania MoE
- Duże asystenty wielodziedzinowe przy ograniczonym budżecie obliczeniowym.
- Uczenie na rozległych korpusach, gdzie specjalizacja przynosi korzyści.
- Scenariusze z rozwiniętą infrastrukturą rozproszoną (wiele GPU/TPU i szybkie sieci).
Kiedy lepsze są modele gęste: ograniczona infrastruktura (1–2 GPU), rygorystyczne wymagania co do przewidywalnego opóźnienia i prostoty wdrożenia.
Retrieval‑Augmented Generation (RAG)
RAG to architektoniczny wzorzec systemu wokół LLM, a nie wewnętrzna architektura samego modelu. Łączy LLM (komponent generatywny) z zewnętrzną bazą wiedzy (komponent ekstrakcji), co pozwala kompensować ograniczoność „pamięci parametrycznej" modelu.
- Zasada działania: Przed generacją LLM pobiera odpowiednie dokumenty z zewnętrznego źródła (wiki, firmowa baza wiedzy, sieć) i opiera się na nich przy formułowaniu odpowiedzi. [59]
- Zalety:
- Zastosowanie: De facto standard dla asystentów korporacyjnych i systemów wymagających weryfikowalnych faktów oraz pracy z danymi prywatnymi/wysoce wyspecjalizowanymi. [59]
Mechanizmy uwagi i praca z kontekstem
Podstawowa samo-uwaga ma kwadratową złożoność względem długości sekwencji (), dlatego pojawiły się optymalizacje.
- Rzadka uwaga (Sparse Attention): Ograniczenie uwagi do lokalnych okien/wzorców. Przykłady: Longformer[61], BigBird[62].
- FlashAttention: Zmiana kolejności obliczeń z uwzględnieniem hierarchii pamięci GPU; daje istotną oszczędność czasu i pamięci i stała się de facto standardem przy uczeniu LLM z długim kontekstem[63][64][65].
- MQA/GQA (przyspieszenie dekodowania): Multi‑Query Attention (wspólne klucze/wartości dla wszystkich głów) zmniejsza ruch KV-cache[66]. Grouped‑Query Attention balansuje jakość/szybkość[67].
- Ulepszone reprezentacje pozycyjne:
- ALiBi (Attention with Linear Biases): Liniowe przesunięcia wyników uwagi poprawiają uogólnianie na większe długości. [68]
- RoPE (Rotary Position Embeddings): Względna informacja pozycyjna poprzez obrót Q/K; szeroko stosowana we współczesnych modelach (np. LLaMA). [69][70]
- Rozszerzanie kontekstu dla modeli RoPE: Position Interpolation [71], YaRN [72] oraz modyfikacje NTK-aware pozwalają efektywnie zwiększać okno kontekstu bez zmiany architektury.
- Inne podejścia do długich sekwencji:
- Transformer‑XL: Pamięć rekurencyjna między segmentami do modelowania dalekich zależności. [73]
- Reformer: LSH‑attention i odwracalne bloki rezydualne na potrzeby oszczędności pamięci. [74]
- Performer: Liniowe przybliżenie softmax‑attention (FAVOR+). [75]
- Linformer: Niskorzędowe przybliżenie macierzy uwagi. [76]
Optymalizacje modeli i infrastruktura uczenia
Do uczenia i wdrożenia LLM stosuje się wyspecjalizowane techniki i frameworki.
- Kwantyzacja (Quantization): Redukcja precyzji wag zmniejsza pamięć i przyspiesza wnioskowanie. QLoRA pozwala efektywnie doszkalać modele 4-bitowe (w tym 65B) przy jakości bliskiej pełnej precyzji[77].
- Destylacja wiedzy (Knowledge Distillation): Uczenie Teacher→Student na potrzeby kompaktowych modeli[78]; przykład — DistilBERT[79].
- Uczenie rozproszone:
- Ekosystem i narzędzia: Hugging Face Transformers i Accelerate dostarczają standardowe implementacje modeli i integrację z DeepSpeed/FSDP na potrzeby uczenia i wnioskowania[82][83].
Prawa skalowania i uczenie compute‑optimal
Empiryczne prawa skalowania pokazują, że błąd krzyżowej entropii maleje w sposób potęgowy wraz ze wzrostem parametrów, danych i obliczeń. [84] Praca Chinchilla doprecyzowała tryby compute‑optimal: dla optymalnej efektywności rozmiar modelu i liczba tokenów uczących powinny być skalowane łącznie (przykład — model 70B uczony na ~1,4T tokenów, przewyższający większe, niedouczone modele). [85]
Modele z przestrzenią stanów (State Space Models, SSM)
State Space Models (SSM) — alternatywna wobec transformerów architektura do pracy z długimi sekwencjami. Czerpie idee z teorii sterowania i cyfrowego przetwarzania sygnałów i rozwiązuje główny problem self‑attention: kwadratowy wzrost obliczeń wraz z wydłużaniem tekstu.
Główny problem i rozwiązanie
Problem transformerów. Głównym problemem tradycyjnych transformerów jest kwadratowa złożoność uwagi: tekst 10 razy dłuższy wymaga około 100 razy więcej obliczeń.
Podejście SSM. Zamiast „jednoczesnej uwagi na wszystkie słowa" model przechodzi przez tekst sekwencyjnie i utrzymuje kompaktowy wewnętrzny stan pamięci, który jest aktualizowany na każdym kroku. W rezultacie czas i zużycie pamięci rosną w przybliżeniu liniowo wraz z długością tekstu. Przy tym uczenie może być wykonywane równolegle — poprzez splotową reprezentację jądra (wysoka przepustowość przy długich sekwencjach). [86]
Zasada działania
Dyskretny SSM opisują równania stanu i wyjścia:
gdzie — stan pamięci, — wejście (token), — wyjście. W głębokich SSM macierze parametryzuje się tak, aby zapewnić stabilność i efektywne obliczenia na długich sekwencjach. Tę samą warstwę można traktować jako:
- rekurencyjną (skanowanie po krokach) — oszczędne pamięciowo wnioskowanie bez KV-cache;
- splotową — równoległe uczenie z wstępnie obliczonym jądrem. [86]
Główne architektury i hybrydy
- S4 (Structured State Spaces). Bazowa linia SSM ze stabilną parametryzacją macierzy stanu; wykazuje efektywność przy bardzo długich sekwencjach. [86]
- Mamba. Selektywne SSM: reguły aktualizacji pamięci zależą od bieżącego wejścia (model sam decyduje, co „trzymać w pamięci", a co „zapominać"). Implementacja zorientowana na hierarchię pamięci GPU; według autorów osiągane jest wielokrotne zwiększenie przepustowości wnioskowania przy liniowej złożoności względem długości. [87]
- RetNet. Mechanizm retention z trzema trybami: równoległe uczenie, rekurencyjne i blokowe-rekurencyjne wnioskowanie. Celem jest połączenie szybkiego uczenia (jak w transformerach) z oszczędnym potokiem wnioskowania (O(1) pamięć na token). [88]
- Hybrydy Attention+SSM. Przykład — Jamba (naprzemienne warstwy Transformer i Mamba plus MoE): obsługa kontekstów rzędu ~256 K tokenów przy znacznie mniejszym zapotrzebowaniu na pamięć w porównaniu z modelami czysto transformerowymi podobnej klasy. [89]
Zalety
- Liniowa złożoność i oszczędność pamięci przy wnioskowaniu. Brak globalnego self‑attention i KV-cache; przechowywany jest jedynie kompaktowy stan. [87][88]
- Równoległe uczenie na długich sekwencjach. Tryb splotowy zwiększa przepustowość uczenia. [86]
- Efektywność sprzętowa. Implementacje zorientowane na współczesną hierarchię pamięci (HBM/SRAM). [87]
- Długie konteksty i streaming. Hybrydy SSM+Attention są praktyczne dla setek tysięcy tokenów przy umiarkowanych zasobach. [89]
Ograniczenia i aktualna praktyka
- Dojrzałość ekosystemu. Narzędzia i „przepisy" skalowania (instrukcje, RLHF/DPO) wciąż ustępują stackowi transformerowemu. [87]
- Jakość i stabilność. W szeregu zadań hybrydy (Attention+SSM) wykazują bardziej stabilny kompromis „jakość/szybkość/pamięć" niż „czyste" SSM. [89]
Porównanie podejść (ogólnie)
| Charakterystyka | Transformery | SSM | Hybrydy (Attention+SSM) |
|---|---|---|---|
| Złożoność względem długości | Kwadratowa (self‑attention) | Liniowa (skan/splot) | Bliska liniowej |
| Pamięć na token (wnioskowanie) | KV-cache rośnie z kontekstem | Stan O(1) | Umiarkowany wzrost |
| Długie konteksty | Wymagane specjalne optymalizacje | Naturalne wsparcie | Praktyczne do ~256 K |
| Dojrzałość ekosystemu | Wysoka | Rozwijająca się | Rozwijająca się |
Praktyczne zastosowania
- Analiza bardzo długich dokumentów (książki, raporty, przeglądy naukowe).
- Przetwarzanie strumieniowe i scenariusze czatowe z długą historią bez wzrostu kosztów pamięci.
- Środowiska z ograniczonymi zasobami (urządzenia mobilne/edge).
- Szeregi czasowe i inne dane sekwencyjne.
Reprezentatywne modele: S4, Mamba, RetNet; hybrydy Attention+SSM (Jamba). [86][87][88][89]
Ewolucja architektur
- 2017 — opublikowana praca „Attention Is All You Need". Przedstawiona architektura transformera: wielogłowa samo-uwaga i kodowania pozycyjne pozwalają uczyć modele bez rekurencji i splotów; jednocześnie uwaga ma kwadratową złożoność względem długości kontekstu.[1]
- 2018 — przedstawione GPT‑1 i BERT. GPT‑1 używa stosu wyłącznie dekoderów z przyczynową uwagą do generacji i późniejszego doszkalania; BERT wprowadza dwukierunkowy enkoder i wstępne uczenie MLM dla zadań rozumienia tekstu. [90][91]
- 2019 — zaproponowane sposoby pracy z długimi sekwencjami i skalowanie decoder‑only. Transformer‑XL dodaje „pamięć" i względne pozycje do wychodzenia poza stałe okno; GPT‑2 pokazuje wzrost możliwości zero‑shot wraz ze wzrostem skali; BART demonstruje efektywność wstępnego uczenia z odszumianiem dla seq2seq. [92][93][94]
- 2020 — zunifikowany format „text‑to‑text" i pokazane metody dla długich dokumentów. T5 formułuje jednolite podejście encoder–decoder dla różnych zadań; Longformer i BigBird używają rzadkiej/strukturyzowanej uwagi dla długich tekstów; GPT‑3 potwierdza efektywność skalowania gęstego decoder‑only. [95][96][97][98]
- 2021 — ulepszone reprezentacje pozycyjne i pokazana rzadkość parametrów (MoE). RoPE i ALiBi poprawiają uogólnianie przy większych długościach; Switch Transformer i GLaM aktywują tylko część ekspertów na token, zwiększając pojemność bez proporcjonalnego wzrostu kosztów wnioskowania. [99][100][101][102]
- 2022 — doprecyzowany tryb compute‑optimal i przyspieszone wnioskowanie przy długich promptach. Chinchilla pokazuje korzyści z większej liczby tokenów uczących przy umiarkowanym rozmiarze modelu; PaLM z Multi‑Query Attention zmniejsza rozmiar KV-cache; FlashAttention przyspiesza uwagę na GPU. [103][104][105][106]
- 2023 — zwiększone okna kontekstu bez zmiany warstw i ulepszony serwis podawania danych. Seria LLaMA utrwala praktyki (RMSNorm, SwiGLU, RoPE); Position Interpolation i YaRN rozszerzają kontekst; vLLM/PagedAttention efektywniej zarządza KV-cache. [107][108][109][110][111][112]
- 2023 — GPT‑4 i Gemini pokazują przetwarzanie i generację w wielu modalnościach w ramach jednej rodziny modeli. [113][114]
- 2023 — zaproponowane modele z przestrzenią stanów (SSM). Mamba i RetNet powracają do sekwencyjnego przetwarzania z kompaktowym stanem zamiast KV-cache i kładą podwaliny pod architektury hybrydowe. [115][116]
- 2024 — opublikowane otwarte modele MoE i hybrydy Attention+SSM; przyspieszona uwaga na nowych GPU. Mixtral 8×7B/8×22B i DBRX potwierdzają praktyczność MoE; Jamba łączy Transformer i Mamba dla bardzo długich kontekstów; FlashAttention‑3 zwiększa przepustowość. [117][118][119][120][121]
Odnośniki
- https://jalammar.github.io/illustrated-transformer/ The Illustrated Transformer — wizualne wyjaśnienie
Literatura
- Vaswani, A. et al. (2017). Attention Is All You Need. NIPS. https://arxiv.org/abs/1706.03762
- Devlin, J. et al. (2019). BERT. NAACL. https://arxiv.org/abs/1810.04805
- Brown, T. et al. (2020). Language Models are Few‑Shot Learners. NeurIPS. https://arxiv.org/abs/2005.14165
- Raffel, C. et al. (2020). Exploring the Limits of Transfer Learning with a Unified Text‑to‑Text Transformer (T5). JMLR. https://jmlr.org/papers/volume21/20-074/20-074.pdf
- Lewis, M. et al. (2019). BART: Denoising Sequence‑to‑Sequence Pre‑training. https://arxiv.org/abs/1910.13461
- Touvron, H. et al. (2023). LLaMA. https://arxiv.org/abs/2302.13971
- Chowdhery, A. et al. (2022). PaLM: Scaling Language Modeling with Pathways. https://arxiv.org/abs/2204.02311
- Dao, T. et al. (2022–2024). FlashAttention (1/2/3). https://arxiv.org/abs/2205.14135 ; https://arxiv.org/abs/2307.08691 ; https://arxiv.org/abs/2407.08608
- Shazeer, N. (2019). MQA. https://arxiv.org/abs/1911.02150
- Ainslie, J. et al. (2023). GQA. https://arxiv.org/abs/2305.13245
- Kwon, W. et al. (2023). PagedAttention / vLLM. https://arxiv.org/abs/2309.06180
- Leviathan, Y. et al. (2023). Speculative Decoding. https://arxiv.org/abs/2211.17192
- Fedus, W.; Zoph, B.; Shazeer, N. (2021/2022). Switch Transformers. https://arxiv.org/abs/2101.03961
- Du, N. et al. (2022). GLaM. https://proceedings.mlr.press/v162/du22c/du22c.pdf
- Jiang, A.Q. et al. (2024). Mixtral of Experts. https://arxiv.org/abs/2401.04088
- Databricks (2024). Introducing DBRX. https://www.databricks.com/blog/introducing-dbrx-new-state-art-open-llm
- NVIDIA (2024). Applying Mixture of Experts in LLM Architectures. https://developer.nvidia.com/blog/applying-mixture-of-experts-in-llm-architectures/
- Zhou, Y. et al. (2022). Expert Choice Routing. https://arxiv.org/abs/2202.09368
- Komatsuzaki, A. et al. (2022). Sparse Upcycling. https://arxiv.org/abs/2212.05055
- Lewis, P. et al. (2020). RAG. https://arxiv.org/abs/2005.11401
- Beltagy, I. et al. (2020). Longformer. https://arxiv.org/abs/2004.05150
- Zaheer, M. et al. (2020). BigBird. https://arxiv.org/abs/2007.14062
- Press, O. et al. (2022). ALiBi. https://arxiv.org/abs/2108.12409
- Su, J. et al. (2021). RoFormer (RoPE). https://arxiv.org/abs/2104.09864
- Chen, S. et al. (2023). Position Interpolation. https://arxiv.org/abs/2306.15595
- Peng, B. et al. (2023). YaRN. https://arxiv.org/abs/2309.00071
- Dettmers, T. et al. (2023). QLoRA. https://arxiv.org/abs/2305.14314
- Rajbhandari, S. et al. (2020). ZeRO. https://www.microsoft.com/en-us/research/publication/zero-memory-optimizations-toward-training-trillion-parameter-models/
- Shoeybi, M. et al. (2019). Megatron‑LM. https://arxiv.org/abs/1909.08053
- Kaplan, J. et al. (2020). Scaling Laws. https://arxiv.org/abs/2001.08361
- Hoffmann, J. et al. (2022). Chinchilla / Compute‑Optimal. https://arxiv.org/abs/2203.15556
- Gemini Team (2023). Gemini. https://arxiv.org/abs/2312.11805
- Bai, Y. et al. (2022). Constitutional AI. https://arxiv.org/abs/2212.08073
- OpenAI (2023). GPT‑4 Technical Report. https://arxiv.org/abs/2303.08774
- OpenAI (2023). DevDay: GPT‑4 Turbo 128k. https://openai.com/index/new-models-and-developer-products-announced-at-devday/
- Zhang, B.; Sennrich, R. (2019). RMSNorm. https://arxiv.org/abs/1910.07467
- Shazeer, N. (2020). GLU Variants / SwiGLU. https://arxiv.org/abs/2002.05202
- Gu, A.; Goel, K.; Ré, C. (2021). S4: Structured State Spaces. https://arxiv.org/abs/2111.00396
- Gu, A.; Dao, T. (2023/2024). Mamba: Selective State Spaces. https://arxiv.org/abs/2312.00752
- Sun, Y. et al. (2023). RetNet. https://arxiv.org/abs/2307.08621
- Lieber, O. et al. (2024). Jamba: Hybrid Transformer‑Mamba. https://arxiv.org/abs/2403.19887
- Dai, Z. et al. (2019). Transformer‑XL. https://arxiv.org/abs/1901.02860
- Kitaev, N.; Kaiser, L.; Levskaya, A. (2020). Reformer. https://arxiv.org/abs/2001.04451
- Choromanski, K. et al. (2021). Performer. https://arxiv.org/abs/2009.14794
- Wang, S. et al. (2020). Linformer. https://arxiv.org/abs/2006.04768
Przypisy
- ↑ 1.0 1.1 1.2 1.3 1.4 1.5 1.6 Vaswani, A. et al. (2017). Attention Is All You Need. https://arxiv.org/abs/1706.03762
- ↑ Devlin, J. et al. (2019). BERT. https://arxiv.org/abs/1810.04805
- ↑ Brown, T. et al. (2020). Language Models are Few‑Shot Learners. https://arxiv.org/abs/2005.14165
- ↑ Raffel, C. et al. (2020). T5. https://jmlr.org/papers/volume21/20-074/20-074.pdf
- ↑ Devlin, J. et al. (2019). BERT: Pre‑training of Deep Bidirectional Transformers for Language Understanding. https://arxiv.org/abs/1810.04805
- ↑ Liu, Y. et al. (2019). RoBERTa: A Robustly Optimized BERT Pretraining Approach. https://arxiv.org/abs/1907.11692
- ↑ He, P. et al. (2021). DeBERTa: Decoding‑enhanced BERT with Disentangled Attention. https://arxiv.org/abs/2006.03654
- ↑ Clark, K. et al. (2020). ELECTRA: Pre‑training Text Encoders as Discriminators Rather Than Generators. https://arxiv.org/abs/2003.10555
- ↑ Zaheer, M. et al. (2020). Big Bird: Transformers for Longer Sequences. https://arxiv.org/abs/2007.14062
- ↑ Beltagy, I. et al. (2020). Longformer: The Long‑Document Transformer. https://arxiv.org/abs/2004.05150
- ↑ Shazeer, N. (2019). Fast Transformer Decoding: One Write‑Head is All You Need (Multi‑Query Attention). https://arxiv.org/abs/1911.02150
- ↑ Ainslie, J. et al. (2023). GQA: Training Generalized Multi‑Query Transformer Models from Multi‑Head Checkpoints. https://arxiv.org/abs/2305.13245
- ↑ Leviathan, Y. et al. (2023). Fast Inference from Transformers via Speculative Decoding. https://arxiv.org/abs/2211.17192
- ↑ Kwon, W. et al. (2023). Efficient Memory Management for LLM Serving with PagedAttention (vLLM). https://arxiv.org/abs/2309.06180
- ↑ vLLM Docs (2024–2025). Continuous batching, Chunked prefill, Structured outputs. https://docs.vllm.ai/
- ↑ Brown, T. et al. (2020). Language Models are Few‑Shot Learners. https://arxiv.org/abs/2005.14165
- ↑ Ouyang, L. et al. (2022). InstructGPT (RLHF). https://arxiv.org/abs/2203.02155
- ↑ Rafailov, R. et al. (2023). Direct Preference Optimization. https://arxiv.org/abs/2305.18290
- ↑ Shazeer, 2019. https://arxiv.org/abs/1911.02150
- ↑ Ainslie, 2023. https://arxiv.org/abs/2305.13245
- ↑ Leviathan, 2023. https://arxiv.org/abs/2211.17192
- ↑ Kwon, 2023. https://arxiv.org/abs/2309.06180
- ↑ vLLM Docs. https://docs.vllm.ai/
- ↑ OpenAI (2024). Structured Outputs. https://openai.com/index/introducing-structured-outputs-in-the-api/
- ↑ vLLM Docs — Structured outputs. https://docs.vllm.ai/en/v0.9.2/features/structured_outputs.html
- ↑ Kwon, 2023. https://arxiv.org/abs/2309.06180
- ↑ Brown, T. et al. (2020). Language Models are Few‑Shot Learners. https://arxiv.org/abs/2005.14165
- ↑ Touvron, H. et al. (2023). LLaMA: Open and Efficient Foundation Language Models. https://arxiv.org/abs/2302.13971
- ↑ Achiam, J. et al. (2023). GPT‑4 Technical Report. https://arxiv.org/abs/2303.08774
- ↑ Meta AI (2024). Introducing Meta Llama 3. https://ai.meta.com/blog/meta-llama-3/
- ↑ Raffel, C. et al. (2020). Exploring the Limits of Transfer Learning with a Unified Text‑to‑Text Transformer (T5). JMLR. https://jmlr.org/papers/volume21/20-074/20-074.pdf
- ↑ Lewis, M. et al. (2019). BART: Denoising Sequence‑to‑Sequence Pre‑training. https://arxiv.org/abs/1910.13461
- ↑ Raffel, C. et al. (2020). Exploring the Limits of Transfer Learning with a Unified Text‑to‑Text Transformer. JMLR. https://jmlr.org/papers/volume21/20-074/20-074.pdf
- ↑ Lewis, M. et al. (2019). BART: Denoising Sequence‑to‑Sequence Pre‑training for NLG, Translation, and Comprehension. https://arxiv.org/abs/1910.13461
- ↑ Chung, H. W. et al. (2022). Scaling Instruction‑Finetuned Language Models (FLAN‑T5). https://arxiv.org/abs/2210.11416
- ↑ Shazeer, N. (2020). GLU Variants Improve Transformer. https://arxiv.org/abs/2002.05202
- ↑ Devlin, J. et al. (2019). BERT: Pre‑training of Deep Bidirectional Transformers for Language Understanding. https://arxiv.org/abs/1810.04805
- ↑ Brown, T. et al. (2020). Language Models are Few‑Shot Learners. https://arxiv.org/abs/2005.14165
- ↑ Touvron, H. et al. (2023). LLaMA: Open and Efficient Foundation Language Models. https://arxiv.org/abs/2302.13971
- ↑ Chowdhery, A. et al. (2022). PaLM: Scaling Language Modeling with Pathways. https://arxiv.org/abs/2204.02311
- ↑ Kaplan, J. et al. (2020). Scaling Laws for Neural Language Models. https://arxiv.org/abs/2001.08361
- ↑ Hoffmann, J. et al. (2022). Training Compute‑Optimal Large Language Models. https://arxiv.org/abs/2203.15556
- ↑ Chen, S. et al. (2023). Extending Context Window via Positional Interpolation. https://arxiv.org/abs/2306.15595
- ↑ Peng, B. et al. (2023). YaRN: Efficient Context Window Extension of LLMs. https://arxiv.org/abs/2309.00071
- ↑ Dao, T. et al. (2022–2024). FlashAttention (1/2/3). https://arxiv.org/abs/2205.14135 ; https://arxiv.org/abs/2307.08691 ; https://arxiv.org/abs/2407.08608
- ↑ Shazeer, N. (2019). Fast Transformer Decoding: One Write‑Head is All You Need. https://arxiv.org/abs/1911.02150
- ↑ Ainslie, J. et al. (2023). GQA. https://arxiv.org/abs/2305.13245
- ↑ Kwon, W. et al. (2023). Efficient Memory Management for LLM Serving with PagedAttention. https://arxiv.org/abs/2309.06180
- ↑ Leviathan, Y. et al. (2023). Fast Inference from Transformers via Speculative Decoding. https://arxiv.org/abs/2211.17192
- ↑ 50.0 50.1 50.2 Fedus, W.; Zoph, B.; Shazeer, N. (2021/2022). Switch Transformers. https://arxiv.org/abs/2101.03961
- ↑ 51.0 51.1 51.2 Du, N. et al. (2021). GLaM: Efficient Scaling of Language Models with Mixture‑of‑Experts. https://arxiv.org/pdf/2112.06905.pdf
- ↑ Mistral AI (2023). Mixtral of Experts. https://mistral.ai/news/mixtral-of-experts/
- ↑ Jiang, A.Q. et al. (2024). Mixtral of Experts. https://arxiv.org/abs/2401.04088
- ↑ Mistral AI (2024). Mixtral 8x22B. https://mistral.ai/news/mixtral-8x22b
- ↑ 55.0 55.1 Databricks (2024). Introducing DBRX. https://www.databricks.com/blog/introducing-dbrx-new-state-art-open-llm
- ↑ NVIDIA (2024). Applying Mixture of Experts in LLM Architectures. https://developer.nvidia.com/blog/applying-mixture-of-experts-in-llm-architectures/
- ↑ Zhou, Y. et al. (2022). Mixture‑of‑Experts with Expert Choice Routing. https://arxiv.org/abs/2202.09368
- ↑ Komatsuzaki, A. et al. (2022). Sparse Upcycling: Training Mixture‑of‑Experts from Dense Checkpoints. https://arxiv.org/abs/2212.05055
- ↑ 59.0 59.1 59.2 59.3 Lewis, P. et al. (2020). Retrieval‑Augmented Generation for Knowledge‑Intensive NLP Tasks. https://arxiv.org/abs/2005.11401
- ↑ NVIDIA Blog (2025). What is Retrieval‑Augmented Generation (RAG). https://blogs.nvidia.com/blog/what-is-retrieval-augmented-generation/
- ↑ Beltagy, I. et al. (2020). Longformer. https://arxiv.org/abs/2004.05150
- ↑ Zaheer, M. et al. (2020). Big Bird. https://arxiv.org/abs/2007.14062
- ↑ Dao, T. et al. (2022). FlashAttention. https://arxiv.org/abs/2205.14135
- ↑ Dao, T. et al. (2023). FlashAttention‑2. https://arxiv.org/abs/2307.08691
- ↑ Shah, M. et al. (2024). FlashAttention‑3. https://arxiv.org/abs/2407.08608
- ↑ Shazeer, N. (2019). Fast Transformer Decoding: One Write‑Head is All You Need. https://arxiv.org/abs/1911.02150
- ↑ Ainslie, J. et al. (2023). GQA. https://arxiv.org/abs/2305.13245
- ↑ Press, O. et al. (2022). ALiBi. https://arxiv.org/abs/2108.12409
- ↑ Su, J. et al. (2021). RoFormer: Rotary Position Embedding. https://arxiv.org/abs/2104.09864
- ↑ Touvron, H. et al. (2023). LLaMA: Open and Efficient Foundation Language Models. https://arxiv.org/abs/2302.13971
- ↑ Chen, S. et al. (2023). Extending Context Window via Positional Interpolation. https://arxiv.org/abs/2306.15595
- ↑ Peng, B. et al. (2023). YaRN: Efficient Context Window Extension of LLMs. https://arxiv.org/abs/2309.00071
- ↑ Dai, Z. et al. (2019). Transformer‑XL: Attentive Language Models Beyond a Fixed‑Length Context. https://arxiv.org/abs/1901.02860
- ↑ Kitaev, N.; Kaiser, L.; Levskaya, A. (2020). Reformer: The Efficient Transformer. https://arxiv.org/abs/2001.04451
- ↑ Choromanski, K. et al. (2021). Rethinking Attention with Performers. https://arxiv.org/abs/2009.14794
- ↑ Wang, S. et al. (2020). Linformer: Self‑Attention with Linear Complexity. https://arxiv.org/abs/2006.04768
- ↑ Dettmers, T. et al. (2023). QLoRA: Efficient Finetuning of Quantized LLMs. https://arxiv.org/abs/2305.14314
- ↑ Hinton, G. et al. (2015). Distilling the Knowledge in a Neural Network. https://arxiv.org/abs/1503.02531
- ↑ Sanh, V. et al. (2019). DistilBERT. https://arxiv.org/abs/1910.01108
- ↑ Rajbhandari, S. et al. (2020). ZeRO: Memory Optimizations Toward Training Trillion‑Parameter Models. https://www.microsoft.com/en-us/research/publication/zero-memory-optimizations-toward-training-trillion-parameter-models/
- ↑ Shoeybi, M. et al. (2019). Megatron‑LM: Training Multi‑Billion Parameter Language Models Using Model Parallelism. https://arxiv.org/abs/1909.08053
- ↑ Hugging Face. Transformers Documentation. https://huggingface.co/docs/transformers
- ↑ Hugging Face. Accelerate Documentation. https://huggingface.co/docs/accelerate
- ↑ Kaplan, J. et al. (2020). Scaling Laws for Neural Language Models. https://arxiv.org/abs/2001.08361
- ↑ Hoffmann, J. et al. (2022). Training Compute‑Optimal Large Language Models. https://arxiv.org/abs/2203.15556
- ↑ 86.0 86.1 86.2 86.3 86.4 Gu, A.; Goel, K.; Ré, C. (2021). Efficiently Modeling Long Sequences with Structured State Spaces (S4). https://arxiv.org/abs/2111.00396
- ↑ 87.0 87.1 87.2 87.3 87.4 Gu, A.; Dao, T. (2023/2024). Mamba: Linear‑Time Sequence Modeling with Selective State Spaces. https://arxiv.org/abs/2312.00752
- ↑ 88.0 88.1 88.2 Sun, Y. et al. (2023). Retentive Network: A Successor to Transformer for Large Language Models. https://arxiv.org/abs/2307.08621
- ↑ 89.0 89.1 89.2 89.3 Lieber, O. et al. (2024). Jamba: A Hybrid Transformer‑Mamba Language Model. https://arxiv.org/abs/2403.19887
- ↑ Radford, A. et al. (2018). Improving Language Understanding by Generative Pre‑Training. https://cdn.openai.com/research-covers/language-unsupervised/language_understanding_paper.pdf
- ↑ Devlin, J. et al. (2019). BERT: Pre‑training of Deep Bidirectional Transformers for Language Understanding. https://arxiv.org/abs/1810.04805
- ↑ Dai, Z. et al. (2019). Transformer‑XL. https://arxiv.org/abs/1901.02860
- ↑ Radford, A. et al. (2019). Language Models are Unsupervised Multitask Learners. https://cdn.openai.com/better-language-models/language_models_are_unsupervised_multitask_learners.pdf
- ↑ Lewis, M. et al. (2019). BART. https://arxiv.org/abs/1910.13461
- ↑ Raffel, C. et al. (2020). T5. https://jmlr.org/papers/volume21/20-074/20-074.pdf
- ↑ Beltagy, I. et al. (2020). Longformer. https://arxiv.org/abs/2004.05150
- ↑ Zaheer, M. et al. (2020). BigBird. https://arxiv.org/abs/2007.14062
- ↑ Brown, T. et al. (2020). Language Models are Few‑Shot Learners. https://arxiv.org/abs/2005.14165
- ↑ Su, J. et al. (2021). RoPE. https://arxiv.org/abs/2104.09864
- ↑ Press, O. et al. (2021/2022). ALiBi. https://arxiv.org/abs/2108.12409
- ↑ Fedus, W.; Zoph, B.; Shazeer, N. (2021/2022). Switch Transformers. https://arxiv.org/abs/2101.03961
- ↑ Du, N. et al. (2021). GLaM. https://arxiv.org/pdf/2112.06905.pdf
- ↑ Hoffmann, J. et al. (2022). Chinchilla. https://arxiv.org/abs/2203.15556
- ↑ Chowdhery, A. et al. (2022). PaLM. https://arxiv.org/abs/2204.02311
- ↑ Shazeer, N. (2019). Fast Transformer Decoding. https://arxiv.org/abs/1911.02150
- ↑ Dao, T. et al. (2022). FlashAttention. https://arxiv.org/abs/2205.14135
- ↑ Touvron, H. et al. (2023). LLaMA. https://arxiv.org/abs/2302.13971
- ↑ Zhang, B.; Sennrich, R. (2019). RMSNorm. https://arxiv.org/abs/1910.07467
- ↑ Shazeer, N. (2020). GLU Variants. https://arxiv.org/abs/2002.05202
- ↑ Chen, S. et al. (2023). Position Interpolation. https://arxiv.org/abs/2306.15595
- ↑ Peng, B. et al. (2023). YaRN. https://arxiv.org/abs/2309.00071
- ↑ Kwon, W. et al. (2023). vLLM/PagedAttention. https://arxiv.org/abs/2309.06180
- ↑ OpenAI (2023). GPT‑4 Technical Report. https://arxiv.org/abs/2303.08774
- ↑ Gemini Team (2023). Gemini. https://arxiv.org/abs/2312.11805
- ↑ Gu, A.; Dao, T. (2023). Mamba. https://arxiv.org/abs/2312.00752
- ↑ Sun, Y. et al. (2023). RetNet. https://arxiv.org/abs/2307.08621
- ↑ Jiang, A.Q. et al. (2024). Mixtral of Experts. https://arxiv.org/abs/2401.04088
- ↑ Mistral AI (2024). Mixtral 8x22B. https://mistral.ai/news/mixtral-8x22b
- ↑ Databricks (2024). Introducing DBRX. https://www.databricks.com/blog/introducing-dbrx-new-state-art-open-llm
- ↑ Lieber, O. et al. (2024). Jamba. https://arxiv.org/abs/2403.19887
- ↑ Shah, M. et al. (2024). FlashAttention‑3. https://arxiv.org/abs/2407.08608