Tokenization Strategies

Wprowadzenie

Tokenizacja to proces przekształcania surowego tekstu w sekwencje tokenów – podstawowych jednostek, na których trenuje się i działa każdy model językowy (LLM). Jakość tokenizacji ma ogromny wpływ na wydajność modelu, rozmiar kontekstu, koszty API oraz zdolność do rozumienia języków.

Dlaczego strategia tokenizacji ma znaczenie?

  • Wpływa na długość sekwencji (im lepsze tokeny → mniej tokenów → niższe koszty i dłuższy kontekst)
  • Określa jak model radzi sobie z rzadkimi słowami, neologizmami i językami morfologicznymi
  • Ma wpływ na jakość rozumienia gramatyki i semantyki
  • Bezpośrednio wpływa na wydajność inferencji

Główne strategie tokenizacji

1. BPE – Byte Pair Encoding

Najpopularniejsza metoda. Polega na iteracyjnym łączeniu najczęstszych par bajtów/znaków, aż do osiągnięcia pożądanego rozmiaru słownika. Zaczyna od pojedynczych bajtów, a kończy na popularnych podciągach.

Zalety: bardzo dobry kompromis między rozmiarem słownika a efektywnością.

Wykorzystanie: GPT-2, GPT-3, Llama, Mistral, Qwen i wiele innych.

2. WordPiece

Wariant BPE stworzony przez Google. Zamiast łączyć najczęstszych pary, maksymalizuje prawdopodobieństwo wystąpienia tokena w korpusie (kryterium likelihood).

Wykorzystanie: BERT, DistilBERT, Electra.

3. SentencePiece

Implementacja stworzona przez Google, traktująca tekst jako sekwencję znaków Unicode (bez wcześniejszego podziału na słowa). Obsługuje modele Unigram LM oraz BPE.

Zalety: świetnie radzi sobie z językami azjatyckimi i aglutynacyjnymi (japoński, chiński, koreański, turecki, polski).

Wykorzystanie: T5, ALBERT, Llama 2/3, Gemma, Mistral, Phi-3.

4. Tiktoken (OpenAI)

Biblioteka i tokenizer używany przez OpenAI (GPT-4, GPT-4o, o1, GPT-3.5). Bazuje na BPE, ale jest wysoko zoptymalizowany i zawiera specjalne reguły dla kodu, liczb, emoji itp.

Najważniejsze modele Tiktoken:

  • cl100k_base – GPT-4, GPT-4o
  • o200k_base – nowsze modele o1
  • p50k_base – GPT-3 / Codex

Porównanie strategii tokenizacji

  • BPE – uniwersalny, bardzo popularny
  • SentencePiece + Unigram – najlepszy dla języków nieanglojęzycznych
  • Tiktoken – najbardziej zoptymalizowany pod kątem kosztów i wydajności GPT
  • Character-level – zbyt drobny (wysokie zużycie kontekstu)
  • Word-level – słabo radzi sobie z neologizmami i językami fleksyjnymi

Najlepsze praktyki (2026)

  • Używaj tokenizerów dedykowanych do konkretnego modelu (zawsze pobieraj z repozytorium modelu)
  • Przy fine-tuningu – nigdy nie zmieniaj tokenizer bez bardzo dobrego powodu
  • Dla multilingualnych modeli preferuj SentencePiece + Unigram
  • Monitoruj rozkład długości tokenów w swoich danych
  • Przy pracy z kodem źródłowym – Tiktoken radzi sobie wyjątkowo dobrze

Powiązane pojęcia

Subword Tokenization • Byte-level BPE • Unigram Language Model • Vocabulary Size • Context Length • Tokenizer Training • Hugging Face Tokenizers • Tiktoken • SentencePiece