Typy tokenów w LLM
Tokeny to podstawowe jednostki przetwarzania tekstu w modelach językowych. Można je podzielić według roli, widoczności i funkcji.
1. Podział według przepływu przetwarzania
| Typ | Opis | Liczone do kosztów? | Przykład |
|---|---|---|---|
| Input | Tokeny z zapytania lub promptu | Tak | „Przetwórz ten tekst:” |
| Output | Tokeny generowane przez model | Tak | „Oto odpowiedź.” |
| Context | Suma inputu, historii rozmowy i outputu w oknie kontekstu | Tak | Cała konwersacja |
| Cached | Tokeny wejściowe, które system rozpoznał jako już wcześniej przetworzone i może ponownie wykorzystać | Tak, ale zwykle taniej | Ten sam system prompt albo niezmieniona część długiego kontekstu |
2. Tokeny specjalne i systemowe
- Systemowe — definiują rolę modelu, na przykład: „Jesteś ekspertem”.
- Specjalne — znaczniki techniczne, takie jak
<|endoftext|>,<|im_start|>,<|im_end|>, które opisują strukturę danych. - Thinking / Reasoning — ukryte tokeny wykorzystywane przez model podczas procesu rozumowania.
- Planning / Critical — tokeny wspierające planowanie lub kluczowe etapy logiki odpowiedzi.
3. Podział według tokenizacji
| Metoda | Granularność | Zalety | Wady |
|---|---|---|---|
| Słowa | Całe słowa | Proste podejście | Słabsze przy nowych i rzadkich słowach |
| Subwordy (BPE) | Części słów | Elastyczne, często stosowane w LLM | Bardziej złożone |
| Znaki | Pojedyncze litery | Uniwersalne | Generują znacznie więcej tokenów |
Reguła ekonomii
Input + Cached + Output ≤ okno kontekstu modelu
na przykład 128K tokenów.
Co oznaczają cached tokens w praktyce?
Cached tokens to fragmenty wejścia, które nie zmieniły się między kolejnymi wywołaniami modelu.
Najczęściej chodzi o:
- ten sam system prompt
- tę samą historię rozmowy
- te same instrukcje lub dokumenty dołączane do wielu zapytań
Dzięki temu system nie zawsze musi przeliczać wszystko od zera i taki fragment może być rozliczany taniej. Nie wszystkie modele to obsługują.
Praktyczna zasada
Im więcej stałego, niezmiennego kontekstu między zapytaniami, tym większa szansa na wykorzystanie cached tokens i obniżenie kosztu.