GPT i BERT to dwa najważniejsze modele językowe opartych na architekturze transformerów, które zdefiniowały dwie odrębne linie rozwoju przetwarzania języka naturalnego. Choć oba korzystają z mechanizmu atencji, różnią się fundamentalnie w podejściu do modelowania języka — co determinuje ich mocne strony i zastosowania.
Architektura Transformer — szybkie przypomnienie
Oryginalny Transformer (Vaswani et al., 2017) składa się z enkodera i dekodera. Enkoder przetwarza wejście, dekoder generuje wyjście. Oba używają self-attention, ale dekoder ma dodatkową masked self-attention — może „patrzeć" tylko na poprzednie tokeny, nie na przyszłe.
GPT i BERT wybrały różne części tej architektury:
- BERT → tylko enkoder (encoder-only)
- GPT → tylko dekoder (decoder-only)
Ta różnica determinuje wszystko inne.
BERT — Bidirectional Encoder Representations from Transformers
Architektura
BERT (Google, 2018) używa stosu enkoderu transformera. Kluczowa cecha: dwukierunkowa atencja — każdy token „widzi" wszystkie inne tokeny w sekwencji, zarówno te przed, jak i po nim.
BERT-base: 12 warstw, 768 wymiarów, 12 głowic atencji, 110 mln parametrów. BERT-large: 24 warstwy, 1024 wymiary, 16 głowic, 340 mln parametrów.
Pretrenowanie BERT
BERT jest pretrenowany na dwa sposoby:
1. Masked Language Modeling (MLM)
Losowo maskuje 15% tokenów w zdaniu i uczy się je przewidywać na podstawie kontekstu z obu stron:
Wejście: „Kot [MASK] na [MASK]" Cel: „Kot siedzi na macie"
To kluczowa różnica: BERT widzi cały kontekst, nie tylko lewą stronę. Dlatego jest dwukierunkowy (bidirectional).
2. Next Sentence Prediction (NSP)
Dwa zdania — model przewiduje, czy drugie zdanie następuje po pierwszym w tekście. Pomaga rozumieć relacje między zdaniami (RoBERTa pokazał, że NSP nie jest konieczne).
Zastosowania BERT
BERT jest modelem rozumienia tekstu — doskonały do:
- Klasyfikacji tekstu — analiza sentymentu, kategoryzacja dokumentów
- NER — rozpoznawanie encji (osoby, organizacje, lokalizacje)
- Question Answering — odpowiadanie na pytania na podstawie kontekstu
- Semantic similarity — ocena podobieństwa zdań
- Tagowanie sekwencji — POS tagging, chunking
BERT nie nadaje się do generowania tekstu — widzi cały kontekst na raz, nie potrafi generować sekwencyjnie.
GPT — Generative Pre-trained Transformer
Architektura
GPT (OpenAI, 2018) używa stosu dekodera transformera z masked self-attention (causal attention) — każdy token „widzi" tylko poprzednie tokeny, nie przyszłe. To czyni GPT modelem autoregresyjnym — generuje tekst token po tokenie, od lewej do prawej.
GPT-1: 12 warstw, 117 mln parametrów. GPT-2: 48 warstw, 1,5 mld parametrów. GPT-3: 96 warstw, 175 mld parametrów. GPT-4: architektura niepubliczna, szacunkowo bilion+ parametrów (Mixture of Experts).
Pretrenowanie GPT
GPT jest pretrenowany na jednym zadaniu:
Causal Language Modeling (CLM) — przewidywanie następnego tokenu na podstawie wszystkich poprzednich:
P(xₜ | x₁, x₂, ..., xₜ₋₁)
Wejście: „Kot siedzi na" Cel: „macie"
Model widzi tylko lewą stronę — jest jednokierunkowy (unidirectional), ale za to potrafi generować tekst.
Zastosowania GPT
GPT jest modelem generatywnym — doskonały do:
- Generowanie tekstu — artykuły, kod, poezja, dialog
- Tłumaczenie — generowanie tłumaczenia token po tokenie
- Streszczanie — generowanie streszczenia na podstawie kontekstu
- Chatboty — Claude, ChatGPT, Copilot
- Rozumowanie — chain-of-thought reasoning
- Zero-shot/few-shot learning — rozwiązywanie zadań bez fine-tuningu
Porównanie GPT vs BERT
| Cecha | BERT | GPT |
|---|---|---|
| Komponenty transformera | Enkoder | Dekoder |
| Kierunek atencji | Dwukierunkowy | Jednokierunkowy (w lewo) |
| Pretrenowanie | MLM + NSP | Causal LM |
| Mocna strona | Rozumienie tekstu | Generowanie tekstu |
| Adaptacja | Fine-tuning na zadanie | Prompt engineering / fine-tuning |
| Typowe zadania | Klasyfikacja, NER, QA, similarity | Generacja, dialog, tłumaczenie |
| Skala (2024-2026) | Setki milionów parametrów | Setki miliardów+ parametrów |
| Efektywność per parametr | Wyższa (dla zadań rozumienia) | Wyższa (dla zadań generacji) |
Kluczowa filozofia
- BERT = rozumienie. Widzi cały kontekst. Świetny do analizy tekstu, ale nie generuje.
- GPT = generowanie. Widzi tylko przeszłość. Produkuje tekst, ale „rozumie" jednokierunkowo.
Ewolucja po BERT i GPT
Następcy BERT
- RoBERTa (Facebook, 2019) — BERT bez NSP, dłuższy trening, dynamiczne maskowanie. Lepsza jakość przy tych samych parametrach.
- ALBERT — lżejsza wersja z współdzieleniem wag między warstwami
- DistilBERT — model destylowany, 60% rozmiaru BERT-base, 97% wydajności
- DeBERTa (Microsoft) — ulepszona atencja z disentangled attention. Obecnie najlepszy enkoder na wielu benchmarkach
- Polskie warianty — Herbert, Polbert — modele BERT-like wytrenowane na polskim korpusie
Następcy GPT
- GPT-2 (2019) — skalowanie, zero-shot abilities
- GPT-3 (2020) — 175B parametrów, in-context learning
- InstructGPT (2022) — RLHF do alignmentu z intencjami użytkownika
- GPT-4 (2023) — multimodal, Mixture of Experts
- GPT-4o, o1, o3 — integracja multimodalna, rozumowanie chain-of-thought
- Alternatywy open-source — Llama (Meta), Mistral, Qwen, Gemma (Google)
Modele encoder-decoder
Trzecia kategoria — modele używające obu komponentów:
- T5 (Google) — text-to-text framework, każde zadanie formułowane jako generacja tekstu
- BART (Facebook) — denoising autoencoder, dobry do streszczania i tłumaczenia
- mT5 — wielojęzyczna wersja T5
Kiedy użyć BERT, kiedy GPT?
Wybierz BERT (lub następcę), gdy:
- Potrzebujesz klasyfikować tekst (spam, sentyment, kategorie)
- Potrzebujesz ekstrakcji informacji (NER, relacje, key phrases)
- Potrzebujesz porównywać teksty (semantic search, duplicate detection)
- Masz etykietowane dane do fine-tuningu
- Liczy się szybkość inferencji — mniejsze modele BERT działają szybko
Wybierz GPT (lub następcę), gdy:
- Potrzebujesz generować tekst (odpowiedzi, treści, kod)
- Chcesz zero-shot lub few-shot learning (bez fine-tuningu)
- Potrzebujesz dialogu (chatbot, asystent)
- Zadanie wymaga rozumowania krok po kroku
- Chcesz jedno rozwiązanie do wielu zadań
Praktyczna reguła
W 2024-2026: GPT-like modele (decoder-only) dominują. Skala i versatility dużych modeli generatywnych (GPT-4, Claude, Gemini, Llama) sprawiają, że jeden model zastępuje dziesiątki wyspecjalizowanych BERT-ów. BERT pozostaje preferowany tam, gdzie liczy się koszt, szybkość i specjalizacja — np. embedding pipeline, produkcyjne klasyfikatory, edge deployment.
Tokenizacja — wspólny fundament
Oba modele używają tokenizacji subword:
- BERT → WordPiece (30 000 tokenów)
- GPT-2/3 → BPE (50 257 tokenów)
- GPT-4 → cl100k_base (100 000 tokenów)
Tokenizacja wpływa na efektywność modelu — lepszy tokenizer = mniej tokenów na tekst = dłuższy kontekst przy tym samym oknie.
Podsumowanie
GPT i BERT to dwa bieguny architektury transformerowej: generacja vs rozumienie, jednokierunkowy vs dwukierunkowy, dekoder vs enkoder. Oba zrewolucjonizowały NLP, ale ewolucja poszła w kierunku modeli generatywnych — GPT-4 i jego następcy potrafią zarówno generować, jak i „rozumieć" tekst, choć enkodery (DeBERTa, BGE) nadal dominują w embeddingach i specjalizowanych zadaniach klasyfikacyjnych.