【Ciekawostki o Tokenach】Dlaczego opłaty za AI są naliczane na podstawie Tokenów? Zgłębiamy temat!—Wolno ucz się AI040
Wstęp
- Słyszałeś, że AI nalicza opłaty za Tokeny?
- To dosyć dużą ilość Tokenów zużywa
- Komputer nie był wyłączany przez całą noc, zużyto wiele Tokenów, czyżby to jakby stracić mieszkanie?
- Dlaczego używamy Tokenów do naliczania opłat?
- Słyszałem, że Tokeny są obciążane dwukierunkowo
- Pytania do AI są płatne, a odpowiedzi także, czy to nie jest przesada?
- Więc AI nie może gadać o niczym?
- Co to właściwie jest Token? To słowo czy litera?
- Jak oblicza się opłaty dla znaków chińskich?
- Jak to wygląda dla języka arabskiego?
- Jakie różne znaczenia mają Tokeny w procesie digitalizacji przedsiębiorstw?
- Tradycyjna digitalizacja to budowanie infrastruktury i baz danych
- Dlaczego aplikacje AI stawiają pytanie o Tokeny?
Artykuł podejmie próbę odpowiedzi na te pytania. Zastanowimy się, na czym naprawdę polega ten Token? Tekst jest długi, więc zacznijmy.
W historii rozwoju komputerów często pojawiają się terminologie, które mogą wydawać się skomplikowane, a potem stają się częścią życia codziennego. Termin “prompt” (zapowiedź) jest jednym z takich przykładów, a Tokeny są kolejnymi, które wykraczają poza ramy techniczne.
Czy to, że OpenAI zaproponowało tę metodę, jest powodem, że inne firmy w branży uznały ją za skuteczną? A może jest to coś innego?
Zacznijmy od jej źródła.
W kontekście przedsiębiorstw, wykorzystanie technologii AI w celu redukcji kosztów i zwiększenia efektywności, zrozumienie Tokenów pomoże nam lepiej przyjąć AI w biznesie. Możemy to rozumieć jako klocki LEGO, które pozwalają na budowanie aplikacji na bazie naszych potrzeb, co zwiększa efektywność.
Podstawy Tokenów
Podstawowa definicja Tokena
Najpierw przyjrzyjmy się opisowi Tokenów według OpenAI:
- 1 token ~= 4 znaki angielskie
- 1 token ~= ¾ słowa
- 100 tokenów ~= 75 słów
lub - 1-2 zdania ~= 30 Tokenów
- 1 akapit ~= 100 tokenów
- 1,500 słów ~= 2048 tokenów
Jak wrażenia? Zdezorientowany? Czym to się różni od zapisów, które znał Kong Yiji? Przeanalizujmy to dokładniej:
Learning AI Meticulously, Sharing Knowledge Joyfully
Ile Tokenów ma to zdanie? 6 słów, więc powinno być 6 Tokenów, prawda? Niestety, to nieprawda!
W modelu ChatGPT 4 okazuje się, że to 10 Tokenów. Zauważamy, że znaki interpunkcyjne są liczone osobno, a Joyfully
jest podzielone na Joy
i fully
.
Od kodu do dialogu: Niezbędność wprowadzenia Tokenów
Podstawowym językiem komputerów są kody binarne składające się z 0 i 1 – to najprostsza forma reprezentacji programów i danych. Niezależnie od używanych języków programowania, takich jak Python czy Java, czy różnych plików multimedialnych, wszystkie są konwertowane na język maszynowy. W tradycyjnej informatyce eksperci starali się uprościć złożoność świata rzeczywistego, definiując jasno różne typy danych, takie jak ciągi (ciągi znaków) i liczby całkowite (numery). Metoda ta doskonale sprawdza się w zadaniach takich jak obliczenia matematyczne czy zapytania do baz danych.
Jednak z biegiem technologii i rosnących potrzeb chcemy, aby komputery nie tylko obliczały numery i kody, ale także rozumiały i przetwarzały język naturalny, czyli nasze codzienne języki. W tym celu wprowadza się dziedzinę przetwarzania języka naturalnego (NLP, Natural Language Processing), której celem jest umożliwienie komputerom zrozumienia, interpretacji i generowania ludzkiego języka.
Biorąc pod uwagę cechy języków naturalnych, w tym ich różnorodność, kontekstualność i wieloznaczność, nie napotykamy na proste problemy, jak 1+1=2
. Musimy zrozumieć, jak sprawić, by komputer rozumiał wyrażenia takie jak „Dziś jest piątek, a gdzie planujesz spędzić weekend? Może zostać w domu i uczyć się AI?” i dodatkowo analizować ich emocje lub tłumaczyć na inne języki. W tej sytuacji tradycyjne typy danych stają się niewystarczające.
Dlatego wprowadzamy pojęcie Tokena. Tokenizacja polega na rozkładaniu złożonych danych tekstowych na mniejsze, łatwiejsze do przetworzenia przez komputer elementy, takie jak słowa, frazy lub znaki interpunkcyjne. Dzięki temu komputery mogą efektywniej przetwarzać język, wydobywając znaczenie z tekstu, a nie tylko licząc znaki.
Od pewności do niepewności: Tradycyjne programowanie zajmuje się jawnie przewidywalnymi danymi, podczas gdy NLP dotyczy interpretacji wieloznacznych i kontekstualnych języków.
Od strukturalnych do nieustrukturalnych: W przeciwieństwie do strukturalnych baz danych lub algorytmów, NLP zajmuje się swobodnym, nietypowym językiem naturalnym.
Czym jest Token? Dlaczego dokonujemy konwersji tekstu na Tokeny?
Wyobraź sobie, że w generatywnej AI, jednym z typowych scenariuszy aplikacyjnych jest szybkie podsumowanie. Nie musimy czytać każdego słowa, aby szybko uzyskać kluczowe informacje. Tokeny odgrywają kluczową rolę, pomagając komputerom „rozumieć” i przetwarzać dużą ilość tekstu.
Czym jest Token?
W kontekście przetwarzania języka naturalnego, Token zazwyczaj odnosi się do znaczących fragmentów tekstu. Mogą to być słowa, frazy lub znaki interpunkcyjne, jak w powyższym przykładzie.
Dlaczego dokonujemy konwersji na Tokeny?
Konwersja tekstu na Tokeny jest podobna do rozdzielania złożonych raportów biznesowych na kluczowe elementy lub dzielenia zawartości e-maila na główne punkty. Taka dekompozycja pozwala komputerom na efektywniejsze przetwarzanie i analizowanie języka, umożliwiając wykonywanie takich zadań jak wyszukiwanie kluczowych informacji, automatyczne tłumaczenie czy analiza emocji.
Na przykład, jeśli ktoś otwiera sieć restauracji na platformie MeiTuan, chce przeanalizować opinie klientów w celu poprawy produktów, rozkładanie recenzji na Tokeny może pomóc w identyfikacji powtarzających się problemów lub negatywnych uwag.
W rzeczywistości Tokeny to nie tylko słowa, a ich znaczenie może być różne.
Różnice i powiązania między Tokenami, znakami a słowami.
Definicja | Cechy | Przykład | |
---|---|---|---|
Znak | Podstawowy element tekstu ` | Nie zawsze wyraża pełne znaczenie, może być łączony z innymi znakami. | happy |
Słowo | Zbudowane z znaków, wyrażające konkretne znaczenie | Podstawowa jednostka przekazu, przekazuje bardziej złożone informacje niż pojedyncze znaki. | I’m happy |
Token | Zazwyczaj odpowiadające słowom, ale elastyczniejsze, mogą być frazami, znakami interpunkcyjnymi, a także rdzeniami czy przedrostkami | Definicja Tokena zależy od zastosowania, np. analiza tekstu, tłumaczenie maszynowe. | I , 'm , happy |
Z tego miejsca możemy poczuć, że sprawa w dużej mierze opiera się na rozumieniu języka.
Chociaż znaki, słowa i Tokeny mogą różnić się technicznie, są ściśle ze sobą powiązane w przetwarzaniu tekstu. Znaki są podstawą słów, a słowa są elementami tworzącymi Tokeny. W kontekście aplikacji, rozpoznawanie i wykorzystywanie Tokenów opiera się na zrozumieniu znaków i słów.
Na przykład, gdy chcemy zanalizować raport o trendach rynkowych, poprzez Tokenizację możemy szybko zidentyfikować słowa kluczowe (takie jak „wzrost”, „ryzyko”, „okazje”), co pozwala menedżerom szybko zrozumieć kluczowe punkty raportu.
Ogólnie rzecz biorąc, Token to sposób na pomoc komputerom w przetwarzaniu i „rozumieniu” tekstu, czyniąc automatyzację przetwarzania tekstu możliwą, co wspiera przedsiębiorstwa w bardziej efektywnym wykorzystaniu informacji językowej w procesach podejmowania decyzji opartych na danych.
Jak powstają i jak są przetwarzane Tokeny? Na to pytanie musimy spojrzeć z perspektywy programowania.
Generowanie i przetwarzanie Tokenów
Jak tworzone są Tokeny? Konkretny proces konwersji tekstu na Tokeny.
graph LR A[Proces przetwarzania tekstu] A1[Przygotowanie wstępne] A2[Tokenizacja] A3[Tokenizacja] A4[Postprocessing] A --> A1 A --> A2 A --> A3 A --> A4 A1 --> B1[Usunięcie zbędnych znaków] B1 --> B1a[Jak na przykład kod HTML] A1 --> B2[Standaryzacja tekstu] B2 --> B2a[Ujednolicenie wielkich i małych liter] B2 --> B2b[Konwersja tradycyjnej na uproszczoną] A1 --> B3[Usunięcie słów bez znaczenia] B3 --> B3a[Jak “的”,“了” itp.] A2 --> C1[Tokenizacja w języku angielskim] C1 --> C1a[Oparta na przestrzeniach i znakach interpunkcyjnych] A2 --> C2[Tokenizacja w języku chińskim] C2 --> C2a[Zależy od algorytmu identyfikacji granic słów] A3 --> D1[Łączenie słów] D1 --> D1a[Jak w przypadku nazw własnych, np. “Nowy Jork”] D1 --> D2[Identyfikowanie fraz lub stałych zwrotów] D1 --> D3[Traktowanie znaków interpunkcyjnych jako niezależnych Tokenów] A4 --> E1[Oznaczenie części mowy] A4 --> E2[Oznaczenie ról semantycznych]
Różne modele przy przetwarzaniu mogą mieć różne kroki, dla wygody zrozumienia przedstawiono kilka etapów. W kontekście eksploatacji wartości danych w cyfryzacji przedsiębiorstw, musimy brać pod uwagę priorytet wartości danych, w połączeniu z kosztami przetwarzania danych, aby podjąć odpowiednią decyzję.
Na przykład:
Generowanie Tokenów
Przygotowanie wstępne
Oto przykład tekstu, który zawiera mieszankę chińskiego, angielskiego i cyfr, a także elementy wymagające przetworzenia:
1 | W roku 2024 technologia AI rozwija się szybko. Na przykład OpenAI ogłosiło model GPT-4o, który nie tylko ma potężną wydajność, ale także w przetwarzaniu<code>języka naturalnego</code> osiągnął przełomowe postępy. Musimy jednak usunąć niektóre powszechnie używane, ale pozbawione informacji słowa, takie jak „的”, „了” itd. Więcej informacji na temat tych technologii znajdziesz na naszej stronie internetowej. |
Usunięcie zbędnych znaków:
- Usunięcie znaczników kodu HTML, takich jak
<code>
i</code>
, które często nie zawierają przydatnych informacji.
- Usunięcie znaczników kodu HTML, takich jak
Standaryzacja tekstu:
- Przekształcenie wszystkich liter angielskich na małe, aby wyeliminować różnice między wielkością liter, np. „OpenAI” staje się „openai”.
- Konwersja znaków tradycyjnych na uproszczone, np. „發展” na „发展”.
Usunięcie słów bez znaczenia:
- Identyfikacja i usunięcie powszechnych, ale zazwyczaj niewnoszących istotnych informacji słów, takich jak „的”, „了” itp.
Po tych krokach przygotowawczych tekst stanie się bardziej standardowy, co ułatwi dalszą tokenizację i przetwarzanie, zwiększając dokładność i efektywność analiz późniejszych zadań.
1 | W roku 2024 technologia AI rozwija się szybko. Na przykład OpenAI ogłosiło model GPT-4o, który nie tylko ma potężną wydajność, ale także w przetwarzaniu języka naturalnego osiągnął przełomowe postępy. Musimy jednak usunąć niektóre powszechnie używane, ale pozbawione informacji słowa, takie jak„, „” itp. Więcej informacji na temat tych technologii znajdziesz na naszej stronie internetowej. |
Tokenizacja
Tokenizacja, jak sama nazwa wskazuje, polega na wydzieleniu słów z zdania, co ułatwia dalsze przetwarzanie. Trzymamy szereg koralików i musimy znaleźć odpowiednie miejsca do cięcia.
Jak zatem podzielić na Tokeny? Możemy pomyśleć o metodzie, która polega na użyciu słownika. Także kiedyś była to stosowana strategia. Po podzieleniu, otrzymujemy coś takiego:
1 | 在 / 2024 / 年 / , / AI / 技术 / 快速 / 发展 / 。 / 例如 / , / OpenAI / 发布 / GPT-4o / 模型 / , / 这个 / 模型 / 不仅 / 性能 / 强大 / , / 而且 / 在 / 处理 / 自然语言 / 方面 / 具有 / 突破性 / 进展 / 。 / 但是 / , / 我们 / 需要 / 去除 / 一些 / 常用 / 但 / 无 / 信息量 / 停用词 / , / 比如 / “ ” / , / “ ” / 等等 / 。 / 关于 / 这些 / 技术 / 详情 / , / 请 / 访问 / 我们 / 官网 |
Oczywiście w praktyce proces tokenizacji ma wiele elementów. Ogólnie można wyróżnić kilka podejść:
Określenie granic słów:
- Dla języków, takich jak angielski, korzystających z odstępów, jest to stosunkowo proste – podczas czytania można łatwo zobaczyć, gdzie kończy się jedno słowo, a zaczyna drugie.
- W przypadku języków, takich jak chiński, sprawa staje się znacznie bardziej skomplikowana, ponieważ tekst pisany jest ciągły, bez wyraźnych przerw. W takim przypadku musimy posługiwać się innymi metodami, aby określić, które znaki powinny tworzyć znaczącą frazę.
Użycie słowników i reguł:
- Metoda oparta na słowniku: Podobnie jak w przypadku rozwiązywania krzyżówek, korzystamy z dużej bazy listy (słownika) do odebrania i dopasowania słów. Ta metoda jest prosta, ale ograniczona, ponieważ nowe lub rzadkie słowa mogą nie być ujęte w słowniku.
- Metoda oparta na regułach: Ta metoda używa określonych reguł, aby ocenić relacje między znakami, np. na podstawie gramatyki i kontekstu, aby określić, czy powinny tworzyć jedno słowo.
Metody statystyczne i uczące się:
- Używanie danych statystycznych do nauki, które znaki lub litery często pojawiają się razem. Ta metoda przetwarza ogromne ilości danych tekstowych, by uczyć się i przewidywać granice słów.
Metoda mieszana:
- W rzeczywistości użycie wielu z powyższych metod w połączeniu jest powszechne, aby poprawić dokładność i zastosowanie tokenizacji.
Mówiąc prosto:
- Angielski: Tokenizacja oparta na odstępach i znakach interpunkcyjnych.
- Chiński: Użycie algorytmu do identyfikacji granic słów.
Jieba Tokenization dla chińskiego, chociaż od 4 lat nie była aktualizowana.
Tradycyjna logika tokenizacji nie zwraca uwagę na znaczenie słów w konkretnym kontekście. Oto przykład:
1 | Dlaczego ty/ każesz/ tak długo |
Dlaczego
jest osobą, a czemu
to słowo. Ta niesamowita dwuznaczność jest naprawdę piękna!
Po tokenizacji rozpoczynamy proces Tokenizacji.
Tokenizacja
Tokenizacja jest kluczowym krokiem w przetwarzaniu danych tekstowych, który na podstawie tokenizacji dalszych dzieli i przetwarza jednostki tekstowe, aby lepiej dostosować się do wymogów w przyszłych analizach. Skorzystajmy z podanego tekstu, by szczegółowo wyjaśnić proces tokenizacji.
Łączenie nazw własnych i szczególnych fraz:
OpenAI
iGPT-4o
traktowane są jako układy Tokenów, ponieważ są nazwami własnymi, które mają samodzielne znaczenie.język naturalny
jako wyrażenie i termin specjalistyczny także powinien być traktowany jako jedno całkowite Token.
Znaki interpunkcyjne jako niezależne Tokeny:
- Znaki interpunkcyjne, takie jak przecinki(,)、kropki(。)i cudzysłowia(“ ”)powinny być traktowane jako niezależne Tokeny, ponieważ odgrywają one rolę w strukturze tekstu.
Zarządzanie znacznikami cytatów:
- Usunięcie pustych spacji w cudzysłowach(“ ”)należy potraktować jako błędne czy bezsensowne Tokeny.
Wynik po tokenizacji
1 | W roku / 2024 / technologia / AI / rozwija / się / szybko / . / Na przykład / , / OpenAI / ogłosiło / model / GPT-4o / , / który / nie tylko / ma / potężną / wydajność / , / ale / także / w / przetwarzaniu / języka / naturalnego / osiągnęło / przełomowe / postępy / . / Musimy / jednak / usunąć / niektóre / powszechnie / używane / , / ale / pozbawione / znaczenia / słowa / , / takie / jak / , / itd. / Więcej / informacji / o / tych / technologiach / znajdziesz / na / naszej / stronie / internetowej. |
To przetwarzanie jest bardziej zwarte i znaczeniowe, a także bardziej odpowiednie dla przyszłych zadań NLP, takich jak analiza tekstu, analiza emocji itp. Dzięki rozsądnej tokenizacji możemy skuteczniej uchwycić znaczenie i cechy struktury tekstu, co stanowi podstawę do głębszego zrozumienia i analizy.
Warto zauważyć, że tokenizacja jest ściśle związana, ale różni się od wektoryzacji, a wektoryzacja przekształca te treści w wartości numeryczne, o czym później też będziemy rozmawiać.
Rola słowników w generacji Tokenów.
Po wcześniejszych analizach widzimy, że słowniki odgrywają istotną rolę w generacji Tokenów.
Identyfikacja granic, zapewnienie spójności, kompresja informacji, zwiększenie wydajności przetwarzania, zachowanie semantyki:
Utrzymując i aktualizując słownik, można ciągle optymalizować proces generacji Tokenów, aby dostosować je do zmieniającego się języka i pojawiania się nowych słów, co podnosi elastyczność i dokładność całego systemu.
Obsługuje znaki specjalne (takie jak znaki interpunkcyjne i spacje).
W procesie generacji Tokenów obsługa znaków specjalnych jest kwestią, na którą trzeba zwrócić szczególną uwagę. Znaki specjalne, takie jak znaki interpunkcyjne i spacje, często odgrywają ważną rolę w strukturze i znaczeniu tekstu:
Znaki interpunkcyjne: Znaki interpunkcyjne zazwyczaj wskazują na strukturę zdania, np. kropka (.) na końcu zdania, przecinek (,) do oddzielania elementów listy. W przypadku tokenizacji znaki interpunkcyjne traktowane są jako niezależne Tokeny, ponieważ mogą wpływać na ton i strukturę zdania, czasami nawet zmieniając sens zdania.
Spacje: W językach angielskich i innych posługujących się literami łacińskimi, spacje są podstawowym sposobem rozdzielania słów. W procesie tokenizacji spacje nie są zazwyczaj zachowywane jako Tokeny, ale ich obecność jest kluczowa do ustalenia granic słów. W niektórych formatowanych tekstach spacje mogą być też używane dla estetyki wizualnej, w takim przypadku konieczne jest decyzja, jak je obsłużyć w zależności od kontekstu.
Znakami formatowania: Takie jak tabulatory (Tab) czy znaki nowej linii (\n) również odgrywają role kontrolne w kontekście tekstu. W niektórych przypadkach powinny być ignorowane lub traktowane w odpowiedni sposób, szczególnie w przypadku przetwarzania czystych plików tekstowych.
Dokładne obsłużenie tych znaków specjalnych jest kluczowym aspektem zapewniającym prawidłową tokenizację tekstu, a ich strategie przetwarzania mają znaczący wpływ na wyniki późniejszej analizy tekstu. Przy projektowaniu systemów NLP należy dokładnie przemyśleć logikę ich obsługi, aby dostosować się do różnych wymagań aplikacji i cech danych.
Z treści powyższej możemy zauważyć, że różne języki przy tokenizacji mogą różnić się, a te różnice pomagają nam lepiej zrozumieć
Różnorodność i adaptacyjność Tokenów
Metody tokenizacji w różnych językach
Różnice w strukturze i gramatyce języków wymagają niezwykle dużej elastyczności i adaptacyjności metod tokenizacji. Na przykład:
Angielski i inne języki zachodnioeuropejskie: Te języki zazwyczaj używają spacji jako separatorów między słowami, dzięki czemu tokenizacja jest stosunkowo prosta. Na przykład zdanie “The quick brown fox” można łatwo podzielić na “The”, “quick”, “brown”, “fox”.
Chiński, japoński i koreański: Te języki nie mają wyraźnych separatorów między słowami, przez co tokenizacja jest bardziej skomplikowana. W przypadku chińskiego, można potrzebować polegać na słownikach lub modelach opartych na statystykach, aby wskazać, które znaki powinny być połączone w znaczące słowa. Na przykład “szybki rozwój” powinno być rozpoznawane jako jeden token, a nie jako rozdzielone “szybki” i “rozwój”.
Języki arabskie i hebrajskie: Te języki pisane od prawej do lewej wymagają dodatkowej uwagi w tokenizacji, nie tylko z uwagi na kierunek pisania, ale także z powodu łączenia liter, co stawia szczególne wymagania przed algorytmy tokenizacji.
Zrozumienie tych różnic może przyczynić się do lepszego przetwarzania danych w kontekście globalnych przedsięwzięć, optymalizacji wielojęzycznego interfejsu użytkownika oraz tworzenia treści, co przekłada się na poprawę doświadczeń użytkowników i ekspansję na rynku międzynarodowym.
Jak definiowane są rozmiary i stopień szczegółowości Tokenów?
Wielkość i stopień szczegółowości Tokenów zależy od konkretnych potrzeb aplikacji i oczekiwanego poziomu przetwarzania:
Tokeny o drobnej strukturze: Zwykle używane są w sytuacjach wymagających głębokiego rozumienia języka, takich jak analiza emocji lub wyszukiwanie semantyczne. Na przykład dalsze rozkładanie złożonych słów może pomóc modelowi lepiej uchwycić subtelne zmiany znaczeniowe.
Tokeny o szerszej strukturze: Odpowiednie są do szybkiego przetwarzania dużych zbiorów danych tekstowych, takich jak klasyfikacja dokumentów lub wstępne wydobywanie słów kluczowych. Grubsze tokeny zmniejszają złożoność przetwarzania i obciążenia obliczeniowe.
Określenie stopnia szczegółowości Tokenów zazwyczaj wiąże się z wyważeniem między prędkością przetwarzania a dokładnością semantyczną. Wiedza na ten temat może pomóc menedżerom podjąć bardziej informowane decyzje przy wdrażaniu projektów AI, wybierając odpowiednie technologie i narzędzia, które spełniają rzeczywiste potrzeby biznesowe.
Zrozumienie metod tokenizacji w różnych językach oraz zasady określania wielkości i stopnia szczegółowości Tokenów może pomóc:
- Lepsza ocena projektów AI: Zrozumienie złożoności i wyzwań związanych z tokenizacją może pomóc w podejmowaniu bardziej świadomych decyzji przy zakupie lub rozwijaniu odpowiednich rozwiązań AI.
- Optymalizacja globalnych operacji: Dostosowana do zastosowań wielojęzycznych tokenizacja jest kluczowa dla udanego działania globalnego, poprawiając komunikację międzykulturową i interakcje użytkowników.
- Zwiększenie efektywności przetwarzania danych: Wybór odpowiedniego stopnia szczegółowości Tokenów może optymalizować wydajność przetwarzania danych i koszty, jednocześnie zaspokajając potrzeby biznesowe.
Jak zatem Tokeny wpływają na wydajność modeli?
Token a wydajność modeli AI
Strategia Tokenów w pewnym stopniu wpływa na przestrzeń kontekstową dużych modeli. Kiedy rozmawiamy z AI, gdy mamy wiele wymian, to jeśli tych treści jest zbyt dużo, AI może zapomnieć, co było wcześniej. To można zrozumieć jako limit górny. Poniżej przedstawiono ograniczenia kontekstowe modeli językowych z zeszłego roku.
źródło: https://s10251.pcdn.co/pdf/2023-Alan-D-Thompson-2023-Context-Windows-Rev-0.pdf
To były dane zeszłoroczne, a poniżej są dane Gemini.
źródło: https://beebom.com/gemini-1-5-pro-announced/
Chińska firma Kimi może obsługiwać pliki PDF o rozmiarze do 100M, wielkość przestrzeni kontekstowej stała się kluczowym punktem marketingowym. Jakie są tego skutki?
Na podstawie aktualnych praw scalingu, różne strategie Tokenów pozostają w sferze algorytmu podstawowego, co oznacza, że zoptymalizowanie strategii Tokenów nie będzie tak skuteczne, jak inwestowanie w dodatkowe karty graficzne.
Wpływ Tokenów na wydajność modeli
sequenceDiagram participant U as Użytkownik participant I as Przetwarzanie wejściowe participant M as Obliczenia modelu participant S as System przechowywania U->>+I: Wprowadzona historia rozmów (liczba Tokenów) I->>+M: Analiza Tokenów i przygotowanie danych M->>+M: Obliczenia samouzasadnienia Note over M: Obliczenia relacji z każdym Tokenem do innych Tokenów M->>+S: Żądanie dodatkowej pamięci Note over S: Wzrost przydziału pamięci w zależności od liczby Tokenów S-->>-M: Potwierdzenie przydziału pamięci M->>M: Kontynuacja obliczeń odpowiedzi M-->>-I: Zwrócenie wygenerowanej odpowiedzi I-->>-U: Wyświetlenie odpowiedzi
Jak liczba Tokenów wpływa na złożoność obliczeniową modelu i wykorzystanie pamięci?
W modelach AI generatywnej, takich jak GPT-4 lub inne oparte na Transformerach, liczba Tokenów bezpośrednio odnosi się do złożoności obliczeniowej modeli oraz pamięci używanej podczas przetwarzania. Każdy dodatkowy Token zmusza model do obliczeń na większej liczbie punktów danych, co zwiększa zarówno obciążenie obliczeniowe podczas treningu, jak i zapotrzebowanie na pamięć. Na przykład, podczas szkolenia modelu językowego, model musi przechowywać i obliczać relacje między każdym Tokenem a innymi Tokenami, co jest szczególnie widoczne w samouzasadniającym systemie modelu.
Przykład: Rozważmy projekt robota czatu generującego odpowiedzi. Jeśli historia rozmów wprowadzona jako dane wejściowe jest zbyt długa (czyli liczba Tokenów jest duża), model może spowolnić w generowaniu odpowiedzi, a zasoby obliczeniowe będą większe. Na przykład, historia rozmów składająca się z tysięcy Tokenów może znacznie spowolnić proces, szczególnie na zasobach o ograniczonej wydajności.
Prosto mówiąc, firmy produkujące duże modele powstrzymują się od rozszerzania pojemności z realistycznych powodów. Czy więcej zawsze oznacza lepiej?
Czy więcej Tokenów zawsze oznacza lepszą wydajność modelu?
Nie zawsze większa liczba Tokenów oznacza lepszą wydajność modelu. W generatywnej AI odpowiednia liczba Tokenów pozwala modelowi lepiej uchwycić i zrozumieć kontekst, co poprawia trafność i dokładność generowanej treści. Jednak zbyt wielu Tokenów może wprowadzić nieistotne informacje, obniżając wydajność i jakość wyjść modelu.
Przykład: W systemach AI generujących raporty rynkowe, precyzyjna tokenizacja może zapewnić, że istotne informacje są wyróżniane, a nie toną w gąszczu niepotrzebnych szczegółów. Na przykład, system potrzebuje wygenerować zwięzłe podsumowanie z dużej ilości wiadomości finansowych – zbyt duża liczba Tokenów może doprowadzić do tego, że raport będzie chaotyczny i trudny do uchwycenia kluczowych informacji.
Obecnie w firmach modeli rozmiar plików obsługiwany jest prawdopodobnie przy użyciu strategii podobnych do chmury, w której A przesyła plik, a B, gdy przesyła, nie będzie już ponownie rozkładał, lecz wykorzysta wyniki przetwarzania A. W miarę jak zawartość rośnie, wytworzy się przewaga konkurencyjna.
Optymalizacja wykorzystania Tokenów
Jak znaleźć punkt równowagi between liczbą Tokenów a wydajnością modeli?
Tutaj mówimy o strategii Tokenów, która jest głównie przeznaczona dla zwykłych użytkowników, by skuteczniej korzystać z promptów, aby wyniki bardziej odpowiadały naszym oczekiwaniom.
Znalezienie najlepszego punktu równowagi między liczbą Tokenów a wydajnością modeli jest kluczowe dla zapewnienia, aby generatywne modele AI były zarówno wydajne, jak i dokładne. Zwykle wymaga to prób i błędów oraz zastosowania zaawansowanych technik optymalizacji modeli.
Przykład: W systemie generującym treści automatycznie, znalezienie równowagi w sposobie wykorzystania Tokenów jest typowym wyzwaniem. System musi wydobyć istotne informacje z długich tekstów, aby zamienić je w streszczenie. W takim przypadku wybór odpowiedniej liczby Tokenów, aby zachować wystarczającą ilość informacji, jednocześnie unikając nadmiernie złożonej struktury modelu, jest kluczowe.
Relacja między Tokenem a kontekstem a wpływem na jakość generowanej treści.
W generatywnej AI, ustawienie Tokenów oraz kontekstu bezpośrednio wpływa na spójność i logikę generowanego tekstu. Im większe okno kontekstowe, tym więcej informacji historycznych ma model do rozważenia przy generowaniu treści, co pozwala na generowanie bardziej spójnego i naturalnego tekstu.
Przykład: Załóżmy, że używamy modelu AI do generowania artykułów blogowych o tematyce technologicznej. Jeżeli okno kontekstowe jest zbyt małe, model może nie być w stanie efektywnie połączyć poszczególnych części artykułu, co prowadzi do przerwy logicznej w generowanej treści. Poprzez optymalizację wykorzystania Tokenów i dostosowanie wielkości okna kontekstowego możemy znacznie poprawić jakość i czytelność artykułu.
Przechodząc do tematów, o których wspominaliśmy wcześniej, chcemy, aby system doświadczeń użytkowników był dobry, ale musimy także brać pod uwagę koszty.
Komercyjne zastosowania Tokenów i modele naliczania opłat
Najpierw przyjrzyjmy się tabeli, która przedstawia aktualne koszty modeli dużego języka:
źródło: https://yourgpt.ai/tools/openai-and-other-llm-api-pricing-calculator
Zazwyczaj korzystanie z dużych modeli językowych może obejmować rozmowy w Internecie oraz wywołania API, gdzie w przypadku używania OpenAI na stronie internetowej przyjmuje się standard 20 dolarów miesięcznie. Jednak w przypadku wywołań API mogą się one znacznie różnić.
Gra w kotka i myszkę, nawet z ChatGPT Plus, nadal istnieje limit na liczbę rozmów w ciągu 3 godzin. Wielu próbuje korzystać z podobnych technik, jak web scraping, by używać ChatGPT, zamiast API - takie otwarte kody w większości zostały już wyeliminowane!
W przeszłości model naliczania opłat oparty na czasie był typowy w telekomunikacji, co można wspominać w okresie nadmiernych zysków, później przekształcił się w mechanizmy opłat abonamentowych, a aktualne modele naliczania opłat za Tokeny mają pewne analogie.
Logika naliczania opłat na podstawie Tokenów
Dlaczego możemy naliczać opłaty za pomocą Tokenów? Jakie są zasady i model biznesowy.
Model naliczania opłat oparty na Tokenach jest powszechny w usługach AI, szczególnie w przypadku wykorzystywania modeli językowych dostarczanych przez firmy takie jak OpenAI. Ten model oparty jest na konkretnej ilości wykorzystania przez użytkowników, co oznacza, że opłaty są naliczane w zależności od ilości Tokenów przetworzonych w każdym żądaniu.
Zasady:
Zasady naliczania opłat za Tokeny polegają na tym, że syntetyzują one rzeczywiste zużycie przez użytkowników zasobów. Każdy Token reprezentuje jednostkę informacji, która musi być przetworzona przez model. Więcej Tokenów oznacza większe zapotrzebowanie na zasoby. W ten sposób model kosztowy zapewnia, że użytkownik płaci zgodnie z rzeczywistym wykorzystaniem, a także zachęca do skuteczniejszego wprowadzania danych, by uniknąć niepotrzebnych strat.
Model biznesowy:
Z perspektywy biznesowej model naliczania opłat oparty na Tokenach dostarcza elastycznej i sprawiedliwej struktury naliczeń dla dostawców usług AI. Pozwala to dostawcom ustawiać różne poziomy cen w zależności od obciążenia systemu i kosztów operacyjnych, co umożliwia przyciągnięcie różnych grup klientów, od małych developów po duże przedsiębiorstwa.
Porównanie naliczenia opłat za Tokeny z innymi metodami naliczania (np. liczba słów, liczba znaków, czas)
W porównaniu do innych powszechnych metod naliczeń, naliczanie opłat oparte na Tokenach ma swoje unikalne zalety i ograniczenia:
Naliczanie według liczby słów lub znaków: Te metody są proste i przejrzyste, łatwe do zrozumienia i budżetowania. Niemniej jednak, nie uwzględniają one złożoności przetwarzania i rzeczywistego zużycia zasobów. Przykładem może być to, że przetwarzanie długiego zdania zawierającego proste słownictwo może być łatwiejsze niż przetwarzanie skomplikowanych terminów, ale według liczby słów koszt będzie wyższy.
Naliczanie według czasu: Modele naliczania oparte na czasie (np. w minutach lub godzinach) są najlepsze dla ciągłych usług, takich jak przetwarzanie danych strumieniowych lub nauka online. Jednak w przypadku krótkich zadań opartych na żądaniach, ten model może prowadzić do niesprawiedliwości w naliczaniu lub nieprecyzyjnych kosztów.
graph TD; A[Naliczenie opłat za Tokeny] -->|Odbicie rzeczywistego zużycia zasobów obliczeniowych| B[Sprawiedliwy podział zasobów]; A -->|Optymalizacja wydajności wprowadzania danych| C[Zachęta do uproszczeń]; D[Naliczenie według liczby słów/znaków] -->|Proste i przejrzyste| E[Łatwo zrozumieć i budżetować]; D -->|Nie biorą pod uwagę złożoności| F[Może prowadzić do nieprawidłowych kosztów]; G[Naliczenie według czasu] -->|Odpowiednie dla długoterminowych usług| H[Przetwarzanie danych strumieniowych/nauka online]; G -->|Nie nadaje się do krótkich zadań| I[Może prowadzić do niesprawiedliwości w naliczaniu];
Naliczanie opłat na podstawie Tokenów dostarcza bardziej szczegółowej miary, mogącej lepiej odzwierciedlać rzeczywiste zużycie zasobów przez użytkowników.
Koszty związane z dużymi modelami możemy oszacować na kilka elementów:
- Koszty rozwoju (ludzkie zasoby + eksperymenty)
- Koszty nauczania (zasoby obliczeniowe + przetwarzanie danych)
- Koszty wdrożenia (infrastruktura + koszty przechowywania)
- Koszty utrzymania i aktualizacji
- Koszty zgodności i etyki (bezpieczeństwo danych, zgodność z danymi)
Te koszty mogą być w jakiś sposób obciążone na Tokeny, co nie wydaje się realne; faktyczna ocena powinna być dokonana przez specjalistów w tej dziedzinie. W obecnej chwili wydaje się to być najodpowiedniejsza strategia oceny.
Praktyczne skutki naliczania opłat za Tokeny
Wpływ różnych metod naliczania na użytkowników i twórców.
Model naliczania opłat za Tokeny oznacza dla użytkowników, że muszą starannie zarządzać swoimi żądaniami API, aby kontrolować koszty. Twórcy muszą projektować efektywne zapytania, aby zredukować zbędne użycie Tokenów, co maksymalizuje wartość każdego żądania. Ten sposób naliczeń zachęca programistów do optymalizacji wprowadzania danych i procesów, ale także może zwiększać złożoność rozwoju oraz wstępną pracę na optymalizację.
Dla dostawców, naliczanie opłat w modelu Tokenowym może pomóc zrównoważyć obciążenie serwerów, prognozować przychody i optymalizować alokację zasobów. Może także funkcjonować jako sprzężenie zwrotne w optymalizacji produktów i zmiany strategii cenowych, co pozwala lepiej spełniać potrzeby rynku.
Jak zoptymalizować wykorzystanie Tokenów, aby obniżyć koszty?
Optymalizacja wykorzystania Tokenów jest kluczowym czynnikiem w kontrolowaniu kosztów. Można to osiągnąć dzięki kilku metodom:
- Upraszczanie danych wejściowych: Przed wysłaniem żądania usuń zbędne teksty i nadmiarowe dane, zachowując jedynie kluczowe informacje.
- Projektowanie efektywnych zapytań: Tworzenie przemyślanych zapytań, unikając zbyt złożonych lub głębokich ciągłych żądań.
- Wykorzystanie strategii pamięci podręcznej: Użyj wyników z pamięci podręcznej dla częstych lub powtarzających się żądań, ograniczając zapytania do serwisów backendowych.
- Monitorowanie i analizowanie: Regularnie analizuj dane dotyczące zużycia Tokenów. Zidentyfikuj punkty optymalizacji i dostosuj strategie w celu zmniejszenia marnotrawstwa.
Stosując te metody, nie tylko obniżasz koszty, ale także zwiększasz prędkość odpowiedzi systemu i satysfakcję użytkowników, co pozwala na uzyskanie przewagi konkurencyjnej na intensywnie konkurencyjnym rynku.
Wartość komercyjna Tokenów i studia przypadków
Praktyczne zastosowanie Tokenów w biznesie
W funkcjonowaniu przedsiębiorstw, zastosowanie technologii tokenizacji może znacznie zwiększyć efektywność przetwarzania danych i jakość podejmowanych decyzji. Dla przedstawicieli przedsiębiorstw, którzy nie są techniczni, zrozumienie zastosowania Tokenów pomoże lepiej ocenić inwestycje w technologie oraz napędzać innowacje biznesowe.
graph LR; A[Punkt widzenia technologicznego: Rola Tokenów w przetwarzaniu języka naturalnego] B[Punkt widzenia biznesowego: Rola Tokenów w zwiększaniu wartości przedsiębiorstw] A --> A1[Ekstrakcja informacji\nszybkie wydobywanie kluczowych informacji] A --> A2[Analiza emocji\nrozpoznać emocje klientów] A --> A3[Podsumowanie\ngenerowanie podsumowań dokumentów] B --> B1[Poprawa interakcji z klientami\n24/7 obsługa klienta] B --> B2[Analiza rynku\nuzyskiwanie informacji o trendach] B --> B3[Rekomendacje personalizowane\nzwiększanie sprzedaży] style A fill:#8ecae6,stroke:#333,stroke-width:4px style B fill:#90be6d,stroke:#333,stroke-width:4px style A1 fill:#219ebc,stroke:#333,stroke-width:2px style A2 fill:#219ebc,stroke:#333,stroke-width:2px style A3 fill:#219ebc,stroke:#333,stroke-width:2px style B1 fill:#ffb703,stroke:#333,stroke-width:2px style B2 fill:#ffb703,stroke:#333,stroke-width:2px style B3 fill:#ffb703,stroke:#333,stroke-width:2px
Punkt widzenia technologicznego: Rola Tokenów w przetwarzaniu języka naturalnego
Tokenizacja to techniczne przetwarzanie, które dzieli skomplikowane dane tekstowe na mniejsze, łatwiejsze do zarządzania jednostki, umożliwiając systemom AI skuteczne analizy i przetwarzanie danych. Proces ten ma szczególne znaczenie w przetwarzaniu języka naturalnego (NLP), ponieważ pozwala maszynom “rozumieć” ludzki język i wykonywać następujące zadania:
- Ekstrakcja informacji: Tokenizacja pomaga wyodrębnić kluczowe informacje z dużych zbiorów tekstów, takich jak wyodrębnienie odpowiednich postanowień z dokumentów prawnych.
- Analiza emocji: Poprzez analizowanie tokenów feedbacków klientów, firmy mogą rozpoznać nastroje, co pozwala na dostosowanie produktów lub usług.
- Automatyczne podsumowywanie: Technologie tokenizacji mogą automatycznie tworzyć podsumowania dokumentów, zwiększając efektywność pracowników wiedzy.
Punkt widzenia biznesowego: Rola Tokenów w zwiększaniu wartości przedsiębiorstw
Z perspektywy biznesowej Tokeny nie tylko zwiększają efektywność operacyjną, ale także uruchamiają nowe modele biznesowe i źródła przychodów:
- Poprawa interakcji z klientami: Wykorzystanie tokenizacji w chatbotach umożliwia 24/7 obsługę klienta, co zwiększa satysfakcję klientów i redukuje koszty usług.
- Analiza rynku: Przetwarzanie tokenizacji może szybko pomóc firmom uzyskać informacje o trendach z raportów rynkowych, co kieruje decyzjami strategicznymi.
- Rekomendacje personalizowane: W platformach e-commerce technologie tokenizacji mogą analizować historię zakupów i zachowania przeglądania użytkowników, dostarczając spersonalizowane rekomendacje produktów, co zwiększa wskaźniki konwersji.
Analiza studiów przypadków
Chatboty obsługujące klientów
Typowym zastosowaniem są chatboty obsługujące klientów. Na przykład, duża firma telekomunikacyjna wdrożyła chatbota opartego na tokenizacji do obsługi zapytań użytkowników, takich jak problemy dotyczące rachunków, przerwy w usługach i inne. Chatbot analizuje pytania użytkowników (przetworzone na tokeny), aby szybko dostarczyć poprawne odpowiedzi lub przekazać problemy odpowiednim działom wsparcia.
Systemy rekomendacji treści
W mediach i branży rozrywkowej systemy rekomendacji wykorzystują technologie tokenizacji do analizy historii oglądania lub czytania użytkowników, aby polecać nowe filmy, książki czy artykuły, które mogą ich zainteresować. Na przykład system rekomendacji Netflixa analizuje opisy programów, które użytkownik oglądał, aby przewidywać inne programy, które mogą mu się podobać.
Wartość komercyjna Tokenów i perspektywy zastosowań
W zastosowaniach przedsiębiorstw zrozumienie i efektywne wykorzystanie Tokenów jest kluczowe dla sukcesu projektów AI. Zrozumienie wartości komercyjnej Tokenów oraz wynikających z nich wyzwań jest niezwykle ważne dla opracowania strategii i kierowania innowacjami technologicznymi.
Zastosowania komercyjne Tokenów
Punkt widzenia technologiczny: Rola Tokenów
Zastosowanie Tokenów w przetwarzaniu języka naturalnego (NLP) umożliwia skuteczną obróbkę informacji tekstowych przez systemy AI. Krótko mówiąc, tokenizacja to proces dzielenia długich tekstów na łatwe do przetworzenia jednostki, które są podstawą modeli uczenia maszynowego.
- Przetwarzanie danych: W obsłudze zapytań klientów, analizie reakcji rynku czy zarządzeniu dużą ilością dokumentów, tokenizacja sprawia, że złożone dane tekstowe stają się łatwiejsze do analizy.
- Zwiększenie wydajności: Dzięki tokenizacji modele AI mogą szybko identyfikować kluczowe informacje, przyspieszając proces podejmowania decyzji i zwiększając szybkość reakcji biznesów.
Punkt widzenia biznesowy: Wartość ekonomiczna Tokenów
Z perspektywy biznesowej, Tokeny nie są tylko częściami technicznymi, ale wiążą się bezpośrednio z poprawą efektywności operacyjnej, wzmacnianiem doświadczeń klientów oraz poszerzaniem nowych modeli biznesowych.
- Optymalizacja obsługi klientów: Tokenizacja umożliwia automatyzację obsługi klienta, co pozwala na dostarczanie szybkich i dokładnych odpowiedzi na zapytania, znacznie zwiększając satysfakcję klientów i lojalność wobec marki.
- Marketing personalizowany: Wykorzystując tokenizację do analizy zachowań użytkowników i preferencji, przedsiębiorstwa mogą dostarczać wysoko personalizowane treści marketingowe, co zwiększa wskaźniki konwersji sprzedaży.
Perspektywy rozwoju Tokenów
Kierunki przyszłego rozwoju
W miarę postępu technologii AI, zastosowanie Tokenów ma szansę stać się jeszcze bardziej inteligentne i zróżnicowane:
- Zastosowanie multimodalne: Technologia tokenizacji nie tylko ograniczy się do przetwarzania tekstów, lecz w przyszłości zostanie rozszerzona na analizę treści multimedialnych, takich jak wideo czy audio, wspierając szersze przypadki zastosowania.
- Optymalizacje inteligentne: Proces generacji i przetwarzania Tokenów będzie bardziej inteligentny, na przykład poprzez automatyczne dostosowywanie stopnia i liczby Tokenów do różnych potrzeb biznesowych.
Wyzwania i możliwości biznesowe
- Zabezpieczenie danych i prywatność: Zapewnienie bezpieczeństwa danych i prywatności użytkowników w trakcie tokenizacji stanowi kluczowe wyzwanie, zwłaszcza w przypadku przetwarzania wrażliwych informacji.
- Integracja technologii: Kluczowe będzie wdrożenie tokenizacji w już istniejące systemy IT i procesy biznesowe.
- Sprawiedliwość i przejrzystość: Zapewnienie, że decyzje AI podejmowane na podstawie tokenizacji są sprawiedliwe i przejrzyste, wzmacniając zaufanie wszystkich interesariuszy.
Podsumowanie
Pisząc ten artykuł, Lin Miao wskazał nowe kierunki (dziękujemy), https://arxiv.org/abs/2104.12369, a z praktyki modelu Pangu Huawei, rozwój Tokenów w chińskim kontekście może zmierzać w stronę mniej inżynieryjnego podejścia, co wymaga dalszej obserwacji.
Przed napisaniem tego artykułu zrozumienie Tokenów ograniczało się do ogólnego pojęcia, w którym jeden znak chiński równa się jednemu Tokenowi. Miałem także skojarzenie między Tokenami a wektoryzacją. Skoro już mówimy o wektoryzacji, najpierw należy wykonać proces tokenizacji. Jak lepiej stosować AI i przyjąć zmiany? Jaki sposób lepszego wykorzystania danych w istniejących systemach biznesowych można stąd zacząć!
Linki referencyjne
- https://platform.openai.com/tokenizer
- https://arxiv.org/abs/2104.12369
- https://help.openai.com/en/articles/4936856-what-are-tokens-and-how-to-count-them
- https://www.coindesk.com/learn/a-beginners-guide-to-ai-tokens/
- https://ogre51.medium.com/context-window-of-language-models-a530ffa49989
- https://cobusgreyling.medium.com/rag-llm-context-size-6728a2f44beb
- https://www.humanfirst.ai/blog/how-does-large-language-models-use-long-contexts
- https://slator.com/10-large-language-models-that-matter-to-the-language-industry/
- https://yourgpt.ai/blog/general/long-context-window-vs-rag
- https://github.com/datawhalechina/hugging-llm/blob/main/content/chapter1/ChatGPT%E5%9F%BA%E7%A1%80%E7%A7%91%E6%99%AE%E2%80%94%E2%80%94%E7%9F%A5%E5%85%B6%E4%B8%80%E7%82%B9%E6%89%80%E4%BB%A5%E7%84%B6.md
- https://gpt-tokenizer.dev/