Tokeny w kontekście modeli AI – czym są tokeny?

W tym artykule wyjaśniamy, czym są tokeny i jak się je liczy. Do tego pokazujemy konkretny przykład i podrzucamy tipy, jak sprytnie oszczędzać tokeny.

Definicja tokenów

Tokeny to kluczowy element przetwarzania tekstu w modelach uczenia maszynowego, takich jak ChatGPT od OpenAI, i stanowią podstawę rozumienia oraz interpretowania danych tekstowych. Te tzw. tokeny są najmniejszymi jednostkami, jakie takie modele potrafią przetwarzać.

W najprostszej formie tokenem może być słowo, znak interpunkcyjny albo spacja. Bardziej zaawansowane modele, takie jak ChatGPT, rozwijają jednak to podejście i mogą definiować tokeny także jako fragmenty słów albo nawet jako kombinacje kilku słów. Ten sposób nazywa się subtokenizacją.

Jak liczy się tokeny

Podczas przetwarzania tekstu najpierw dzieli się go na serię tokenów – to proces nazywany tokenizacją. Następnie model używa numerycznych reprezentacji tych tokenów, żeby analizować tekst i przewidywać kolejne elementy.

Ważna jest maksymalna liczba tokenów, które model może przetworzyć. W GPT-3.5 Turbo limit wynosi na przykład 4 096 tokenów, a w GPT-4 – 8 192 tokeny. To ograniczenie dotyczy zarówno wejścia, jak i wyjścia i nazywa się oknem kontekstu.

Realnie dostępna liczba tokenów zależy nie tylko od technicznych limitów modelu, ale też od ustawień danej aplikacji albo platformy.

Przykład tokenów

Zdanie „ChatGPT jest modelem językowym od OpenAI” zostaje podzielone na pojedyncze tokeny. Przy prostej tokenizacji słów podział mógłby wyglądać tak:

Przykład tokenów

Przy subtokenizacji to samo zdanie może jednak zostać podzielone na więcej albo mniej tokenów – zależnie od logiki tokenizacji danego modelu.

Porównanie: tokenizacja słów vs. subtokenizacja

Załóżmy, że tekst składa się z 1 000 słów. Przy prostej tokenizacji słów to również 1 000 tokenów. Przy subtokenizacji liczba tokenów może się jednak różnić.

Słowo takie jak „konfiguracja” może zostać na przykład rozbite na kilka tokenów, np. „konfi”, „gura”, „cja”. Także znaki interpunkcyjne albo spacje mogą być liczone jako osobne tokeny. Przez to łączna liczba tokenów może być wyższa niż rzeczywista liczba słów.

Efektywne korzystanie z tokenów

Zasada jest prosta: im mniej tekstu użyjesz w wejściu i wyjściu, tym mniej tokenów zużyjesz. To kluczowe, jeśli chcesz wycisnąć maksimum efektywności i zoptymalizować zużycie tokenów.

Efektywne wejścia: Formułuj pytania jak najjaśniej i jak najbardziej konkretnie. Niepotrzebne powtórki, bardzo długie zdania albo nieistotne informacje podbijają zużycie tokenów.

Proś o krótsze odpowiedzi: W wielu przypadkach możesz kontrolować długość odpowiedzi. Krótsze odpowiedzi zużywają mniej tokenów.

Praca z wcześniejszymi wiadomościami: W zależności od aplikacji może mieć sens włączenie albo wyłączenie funkcji zapisywania wcześniejszych wiadomości. Takie ustawienie można zwykle zmienić np. w ustawieniach czatu. Ważne: jeśli ta funkcja jest włączona, wcześniejsze pytania i odpowiedzi też wliczają się do łącznej liczby tokenów.

Włączona funkcja pamięci: Jeśli używasz np. ChatGPT do streszczania tekstów i chcesz poprawić pierwszy wynik, funkcja pamięci może być pomocna. Model może wtedy odwołać się do wcześniejszych informacji i przygotować lepszą wersję. To oszczędza tokeny, bo nie musisz ponownie wklejać oryginalnego tekstu.

Wyłączona funkcja pamięci: Jeśli z kolei chcesz generować niezależne treści, np. kilka osobnych wierszy, warto wyłączyć funkcję pamięci. Każde zapytanie będzie wtedy traktowane osobno. Alternatywnie możesz też zacząć nowy czat dla każdego zapytania. To oszczędza tokeny, bo nie są brane pod uwagę nieistotne wcześniejsze treści.


Posted

in

by

Tags: