Tokens – så blir text modellens byggbitar
En token är en textbit, inte alltid ett ord. Följ vägen från text till token-ID och vektor, och förstå hur modellens svar byggs en bit i taget.
Kort sagt
Se instruktionsfilmen på YouTube och följ textens väg genom tokenisering, token-ID:n och nästa token. Berättarrösten är AI-genererad. Fler filmer i Lisemarks videogalleri.
En språkmodell arbetar inte direkt med hela meningar. Först delar en tokeniserare texten i mindre bitar: tokens. En bit kan vara ett ord, en del av ett ord, ett skiljetecken eller innehålla ett mellanslag.
Varje bit får ett nummer, ett token-ID. Modellen använder dessa nummer för att slå upp talrepresentationer och beräkna vilken token som kan komma härnäst.
Text → textbitar → token-ID:n → talrepresentationer → nästa token → text.
När är detta användbart?
När du vill förstå hur en språkmodell läser och skriver, varför textlängd inte är samma sak som antal ord och varför långa dokument tar plats i kontexten och kan kosta mer att behandla.
Exempel: tre ord blir fyra tokens
Meningen ”Jag gillar kaffe.” delas med tokeniseraren o200k_base så här:
| Tokenens text | Token-ID |
|---|---|
Jag |
63640 |
gillar |
186719 |
kaffe |
177602 |
. |
13 |
Det finns ett inledande mellanslag i de två mittersta bitarna. Punkten är en egen token. Exemplen är faktiskt körda, inte gissade uppdelningar.
Numret är en adress i en ordlista, inte ett mått på betydelse. Att ett ID är större betyder inte att ordet är viktigare eller mer likt ett annat ord.
Ett långt ord kan bli flera bitar
”fastighetsförvaltning” delas med samma tokeniserare i:
fast·ighe·ts·för·valt·ning
Ett ord blir alltså sex tokens. Delarna följer inte nödvändigtvis svenska stavelser eller meningsfulla ordled. Tokeniseringen är en teknisk uppdelning, inte en grammatisk analys.
Hur byggs tokeniserarens ordlista?
En vanlig metod heter BPE, Byte-Pair Encoding. Förenklat börjar den med små enheter och lär sig slå ihop par som förekommer ofta i träningsmaterialet. I bytebaserad BPE är grunden bytes – inte nödvändigtvis hela bokstäver.
Påhittat miniexempel för att visa principen:
k+akan blika.ka+fkan blikaf. Fler sammanslagningar kan gekaffe.
Det här är inte den faktiska inlärningshistoriken för ordet kaffe. Vilka par som slås ihop och i vilken ordning beror på materialet och algoritmen.
När tokeniseraren är färdig använder den sin ordlista och sina regler på ny text. Den bygger normalt inte om ordlistan för varje fråga. BPE är en vanlig metod, men inte den enda.
Från token-ID till något modellen kan räkna med
Token-ID:t används för att slå upp en embedding: en lista med inlärda tal, en vektor. Modellen bearbetar dessa representationer tillsammans med positionsinformation och sammanhanget.
| Begrepp | Vad det är |
|---|---|
| Token | En bit i tokeniserarens representation av text. |
| Token-ID | Numret som identifierar biten i just den ordlistan. |
| Embedding | En inlärd lista med tal som modellen kan bearbeta. |
En token är alltså inte samma sak som en embedding. Samma token kan dessutom få olika kontextberoende representationer inne i modellen beroende på meningen där den används.
Hur byggs ett svar?
Om du skriver ”Jag gillar” beräknar modellen sannolikheter för möjliga nästa tokens. En vald token kan exempelvis motsvara kaffe, men andra fortsättningar är också möjliga.
Den valda tokenen läggs till sammanhanget. Sedan beräknas nästa token, och nästa, tills svaret avslutas eller en gräns nås. Token-ID:n avkodas tillbaka till text som du kan läsa.
Tokenisering och generering är olika saker: tokeniseraren delar upp befintlig text; modellen beräknar möjliga fortsättningar.
Vad betyder det i praktiken?
- Ord är ingen exakt räknare. Svenska sammansättningar, kod, siffror och symboler kan delas på olika sätt.
- Mellanslag och versaler spelar roll.
Helloochhellofick olika ID:n i vårt test, även om båda var en token. - Kontexten omfattar mer än din senaste fråga. Instruktioner, historik och verktygsresultat kan också ta plats. Exakta gränser och debiteringsregler beror på tjänsten.
- Färre tokens betyder inte automatiskt bättre svar. Ta bort onödiga upprepningar, inte information som behövs för uppgiften.
Viktigaste fallgropen
Att räkna ord och tro att du har räknat tokens. Använd den aktuella modellens tokeniserare när antalet spelar roll. Exemplen här visar o200k_base, inte en universell uppdelning för alla modeller.
Vad du kan göra nu
Testa en vardagsmening, ett svenskt sammansatt ord och en kort kodrad i en tokeniserare. Jämför bitarna, inte bara totalen. Använd ofarlig exempeltext – klistra inte in hemligheter i ett publikt verktyg.
Vidare läsning
Nästa del: Embeddings och vikter – så räknar och lär sig språkmodellen. Följ token-ID:t till inlärda tal, räkna med en viktmatris och skilj träning från nytt sammanhang.