Før en språkmodell kan lese noe, må teksten deles i biter den kan telle. Disse bitene er tokener, og tokenisering er oppdelingen. Et token kan være et helt ord, et fragment som "ing" eller "pre", et tegnsettingstegn eller til og med et enkelt tegn. Modellen ser aldri råtekst; den ser en sekvens av heltalls-ID-er som er tilordnet disse tokenene.
Ulike ordninger fører til ulike avveininger. Tokenisering på ordnivå beholder betydningen intakt, men eksploderer i millioner av sjeldne ord og sliter med skrivefeil. Tokenisering på tegnnivå har et lite vokabular, men produserer svært lange sekvenser. Underordmetoder som byteparkoding ligger midt imellom: de starter med tegn og slår gjentatte ganger sammen de hyppigste parene til en målvokabularstørrelse er nådd.
Hvorfor det er viktig
- Vokabularstørrelsen bestemmer modellens innebyggingstabell og minneavtrykk
- Tokenantall angir kontekstvinduet og kostnaden for hvert API-kall
- Dårlig tokenisering deler ord opp på måter som skader flerspråklig ytelse
- Språk med ikke-latinske skrifttyper trenger ofte langt flere symboler per setning
En setning på engelsk kan bruke 20 tokens; den samme setningen på thai eller hindi kan ta 60 eller mer under en vestlig-sentrisk tokenizer. Denne ubalansen påvirker hastighet, pris og nøyaktighet for milliarder av talere.
Comments
No comments yet. Be the first to share a thought.
Leave a comment