# Token va tokenizatsiya: til modellari matnni qanday oʻqiydi

> Token nima ekanini, tokenizatsiya matnni til modeli qayta ishlay oladigan birliklarga qanday ajratishini, tokenlar soni nega farq qilishini va tokenizer oʻzbek tili uchun nega muhimligini bilib oling.

- URL: https://neuronai.uz/uz/blog/token-and-tokenization/
- Published: 2026-10-13
- Author: NeuronAI Jamoasi

Til modeliga gap yozganingizda, model uni odatda oddiy soʻzlar roʻyxati sifatida qayta ishlamaydi.

Avval matn **tokenlar** deb ataladigan kichik birliklarga ajratiladi. Bu jarayon **tokenizatsiya** deyiladi.

Soddalashtirilgan koʻrinishda matn modelga shunday yetib boradi:

1. Siz matn yozasiz.
2. Tokenizer uni tokenlarga ajratadi.
3. Har bir token oʻz raqami, yaʼni token ID bilan almashtiriladi.
4. Til modeli shu raqamlarni qayta ishlaydi.

Tokenlar zamonaviy til modellarining asosiy tarkibiy qismlaridan biri. Ular matn qanday ifodalanishiga, model qancha kontekstni qayta ishlay olishiga, qanchalik tez ishlashiga va koʻpincha foydalanish hajmi qanday hisoblanishiga taʼsir qiladi.

## Token nima?

**Token** — model ishlaydigan matn birligi. Token quyidagilardan biri boʻlishi mumkin:

- toʻliq soʻz;
- soʻzning bir qismi;
- tinish belgisi;
- son;
- boʻsh joy bilan birga keladigan belgilar;
- baʼzi tokenizerlarda esa bitta belgi yoki baytlar ketma-ketligi.

Demak, token **soʻz bilan aynan bir narsa emas**.

Tokenizerga qarab, koʻp uchraydigan soʻz bitta token boʻlishi, uzunroq yoki kam uchraydigan soʻz esa bir nechta boʻlakka ajralishi mumkin. Masalan, bir tokenizer inglizcha *tokenization* soʻzini *token* va *ization* qismlariga ajratsa, boshqasi uni boshqacha boʻlaklarga ajratishi mumkin.

Muhimi shundaki, token chegaralarini soʻzlar orasidagi boʻsh joy emas, **tokenizerning oʻzi belgilaydi**.

## Tokenizatsiya nima?

**Tokenizatsiya** — oddiy matnni model ishlatadigan tokenlarga aylantirish jarayoni.

Tokenizerning odatda **lugʻati (vocabulary)** boʻladi: bu u taniydigan matn boʻlaklarining belgilangan toʻplami. Lugʻatdagi har bir tokenning **token ID** deb ataladigan raqamli identifikatori bor.

Masalan, “AI foydali.” gapi shartli ravishda toʻrtta tokenga ajralishi mumkin:

| Token | Token ID |
| --- | --- |
| “AI” | 4210 |
| “foyda” | 9132 |
| “li” | 2801 |
| “.” | 13 |

Bu boʻlinish va raqamlar faqat tushuntirish uchun keltirilgan, haqiqiy tokenlar va IDlar tokenizerga bogʻliq. Eʼtibor bering: *foydali* soʻzi oʻzak va qoʻshimchaga ajraldi. Bu oʻzbek tili uchun nega muhimligini quyida koʻramiz.

Modelning oʻzi raqamlar bilan ishlaydi. Shuning uchun token IDlar yordamida [neyron tarmoq](https://neuronai.uz/uz/blog/neyron-tarmoq-nima/) qayta ishlay oladigan oʻrganilgan vektorlar olinadi. Ular odatda **embedding** deb ataladi.

Til modeli matn yaratganda jarayon teskari yoʻnalishda boradi: model token IDlarni bashorat qiladi, tokenizer esa ularni yana oʻqiladigan matnga aylantiradi.

## Nega shunchaki soʻzlardan foydalanilmaydi?

Har bir mumkin boʻlgan soʻzga alohida token berish oddiy tuyuladi, ammo bu bir nechta muammo tugʻdiradi.

Tillarda soʻzlar, ismlar, texnik atamalar, imlo variantlari va yangi iboralar juda koʻp.

Agar har bir toʻliq soʻz uchun alohida token kerak boʻlsa:

- lugʻat haddan tashqari kattalashib ketishi mumkin;
- kam uchraydigan soʻzlarni ifodalash qiyinlashadi;
- yangi soʻzlar lugʻatda umuman boʻlmasligi mumkin;
- soʻz shakllari koʻp tillar uchun juda koʻp alohida yozuv kerak boʻladi.

Faqat alohida belgilardan foydalanish notanish soʻz muammosini hal qiladi, ammo oddiy matn juda uzun ketma-ketlikka aylanadi.

Shuning uchun zamonaviy til modellari koʻpincha oraliq yechim — **subword tokenizatsiya**dan foydalanadi.

Koʻp uchraydigan soʻz yoki soʻz qismi bitta token boʻlib qolishi, kam uchraydigan soʻz esa kichikroq, qayta ishlatiladigan boʻlaklarga ajralishi mumkin. Bu lugʻat hajmini boshqariladigan darajada saqlab, modelga deyarli istalgan matnni ifodalash imkonini beradi.

## Keng tarqalgan tokenizatsiya usullari

Tokenizer yaratishning bir nechta usuli bor. Zamonaviy NLPda uchta nom tez-tez uchraydi:

- **BPE (Byte Pair Encoding):** alohida belgilar yoki baytlardan boshlaydi va eng koʻp uchraydigan qoʻshni juftlikni qayta-qayta yangi tokenga birlashtiradi;
- **WordPiece:** foydali soʻz qismlaridan lugʻat tuzadi va BERT kabi modellar orqali mashhur;
- **Unigram:** koʻplab nomzod boʻlaklardan boshlaydi va ehtimollik modeli eng foydali deb topganlarini qoldiradi.

Oddiy oʻquvchi uchun algoritm tafsilotlaridan koʻra asosiy gʻoya muhimroq:

> **Tokenizer foydali matn boʻlaklari toʻplamini oʻrganadi yoki belgilaydi va matnni doim bir xil tarzda shu boʻlaklarga ajratadi.**

Shuning uchun bir xil til bilan ishlasa ham, turli model oilalari turli tokenizerlardan foydalanishi mumkin.

## Nega bir xil gapning tokenlar soni turlicha boʻlishi mumkin?

Chunki tokenizatsiya tokenizerga bogʻliq.

Ikki modelning lugʻati har xil boʻlishi mumkin. Bir tokenizer koʻp uchraydigan soʻzni bitta token sifatida biladi, boshqasi esa shu soʻzni ikki yoki uch qismga boʻlishiga toʻgʻri keladi.

Shuning uchun bir xil gap A tokenizerda 8 ta, B tokenizerda esa 11 ta tokenga ajralishi mumkin, garchi ekrandagi matn aynan bir xil boʻlsa ham.

Shu sababli **soʻzlar soni va tokenlar soni bir xil oʻlchov emas**.

Ingliz tilidagi oddiy matnda baʼzi tokenizerlarda bitta token oʻrtacha bir necha belgiga toʻgʻri keladi, ammo bu taxminiy hisob. Uni barcha tillar, yozuv tizimlari va modellar uchun umumiy qoida deb qabul qilib boʻlmaydi.

## Nega tilning oʻzi muhim?

Tokenizatsiya sifati tildan tilga sezilarli farq qilishi mumkin.

Asosan bitta til maʼlumotlarida yaratilgan tokenizer oʻsha tilni juda samarali ifodalashi, boshqa tildagi soʻzlarni esa koʻplab mayda boʻlaklarga ajratib yuborishi mumkin.

Bu, ayniqsa, soʻz yasalishi boy, boshqa alifbodan foydalanadigan, oʻziga xos tinish belgilariga ega yoki tokenizer yaratilgan maʼlumotlarda kam uchraydigan tillar uchun muhim.

Oʻzbek tili bunga yaxshi misol. Bitta oʻzakka koʻplab qoʻshimchalar qoʻshilishi mumkin. Oʻzbekcha matn lotin yoki kirill yozuvida boʻlishi mumkin, unda turli apostrof belgilari ham uchraydi. Oʻzbek tilidagi koʻp uchraydigan shakllarni yaxshi ifodalaydigan tokenizer bu tilni lugʻatida bunday shakllar deyarli yoʻq tokenizerga qaraganda samaraliroq qayta ishlaydi.

Bu faqat nazariya emas. NeuronAI [**MustaqiLLM**](https://neuronai.uz/uz/blog/mustaqillm/) modelini yaratganda tokenizer ham model dizaynining bir qismi boʻlgan: eʼlon qilingan model **48 ming tokenli BPE tokenizer**dan foydalanadi va oʻzbek tiliga maxsus moslashtirilgan.

Demak, tokenizer shunchaki koʻzga koʻrinmaydigan texnik detal emas. Koʻp tilli va mahalliy tillar uchun AI yaratishda u model dizaynining muhim qismi.

## Tokenlar va kontekst oynasi

Til modeli bir vaqtning oʻzida cheklangan hajmdagi maʼlumotni qayta ishlay oladi.

Bu chegara odatda **context window — kontekst oynasi** deb ataladi va koʻpincha soʻzlarda emas, tokenlarda oʻlchanadi.

Masalan, model 128 ming tokenli kontekstni qoʻllab-quvvatlasa, shu byudjetga foydalanuvchi prompti, suhbat tarixi, tizim koʻrsatmalari, hujjatlar va model hisobga olishi kerak boʻlgan boshqa matnlar kirishi mumkin.

Kamroq soʻzli hujjat har doim ham kamroq token ishlatavermaydi, ayniqsa turli tillar yoki tokenizerlar solishtirilganda.

Shuning uchun samarali tokenizatsiya bir xil kontekst byudjetiga koʻproq foydali matn sigʻdirishga yordam beradi.

## Tokenlar, tezlik va narx

Tokenlar amalda ham muhim.

Koʻplab AI xizmatlarida foydalanish hajmi qisman **input tokenlar** va **output tokenlar** soni bilan oʻlchanadi.

Tokenlar qancha koʻp boʻlsa, model qayta ishlashi kerak boʻlgan birliklar ham shuncha koʻpayadi. Bu quyidagilarga taʼsir qilishi mumkin:

- [inference](https://neuronai.uz/uz/blog/training-inference-farqi/) vaqtiga;
- xotira sarfiga;
- hisoblash talabiga;
- API narxiga;
- kontekst oynasiga qancha maʼlumot sigʻishiga.

Lekin bu eng qisqa prompt har doim eng yaxshisi degani emas. Yetarli va aniq kontekst koʻpincha natijani yaxshilaydi.

Amaliy maqsad — modelga kerakli maʼlumotni saqlagan holda ortiqcha matnni qisqartirish.

## LLM javobida tokenlar qanday ishlaydi?

Katta til modellari matnni tokenma-token yaratadi. Soddalashtirilgan generatsiya sikli quyidagicha:

1. Model prompt tokenlarini oʻqiydi.
2. Keyingi token boʻlishi mumkin boʻlgan har bir variant uchun ehtimollik hisoblaydi.
3. Bitta token tanlanadi.
4. Bu token ketma-ketlikka qoʻshiladi.
5. Javob tayyor boʻlguncha sikl takrorlanadi: model uzaygan ketma-ketlik asosida keyingi tokenni bashorat qiladi.

[LLM haqidagi maqolamizda](https://neuronai.uz/uz/blog/llm-nima/) til modeli keyingi tokenni bashorat qiladi, deganimizda aynan shu jarayonni nazarda tutganmiz.

Toʻliq javob yuzlab yoki minglab shunday qadamdan iborat boʻlishi mumkin. Bizga yakuniy matn yaxlit koʻrinadi, ammo model ichida u tokenma-token qurilgan.

## Tokenlar har doim koʻrinadigan matnmi?

Yoʻq.

Baʼzi tizimlarda oddiy matn sifatida koʻrsatilmaydigan **maxsus tokenlar** ham bor. Ular quyidagilarni belgilashi mumkin:

- ketma-ketlikning boshlanishi yoki tugashi;
- xabarlar orasidagi chegara;
- suhbatdagi turli rollar;
- padding, yaʼni ketma-ketliklarni bir xil uzunlikka keltiradigan toʻldiruvchi tokenlar;
- boshqa maxsus boshqaruv maʼlumotlari.

Aniq maxsus tokenlar model va tokenizerga bogʻliq.

Shuning uchun tizim hisoblagan tokenlar soniga baʼzan promptdagi koʻrinadigan soʻzlardan tashqari narsalar ham kiradi.

## Tokenizer modelning bir qismimi?

Tokenizerni model bilan chambarchas bogʻlangan qism deb qarash toʻgʻriroq.

Tokenizer lugʻatni belgilaydi va tokenlarga ID beradi. Training vaqtida model shu IDlar uchun ichki ifodalarni oʻrganadi.

Shuning uchun oʻqitib boʻlingan modelning tokenizerini almashtirish oddiy matn sozlamasini oʻzgartirishdek oson emas. Lugʻat oʻzgarsa, token IDlar va model oʻrgangan embeddinglar orasidagi bogʻliqlik buziladi.

Shu sababli tokenizer odatda model ishlab chiqilishidan oldin yoki shu jarayonda tanlanadi va training tugagach, shunchaki almashtirilmaydi.

## Tokenizatsiya maʼnoni tushunadimi?

Yoʻq.

Tokenizerning vazifasi — matnni boʻlish va kodlash. U gap maʼnosini til modeli kabi tushunishi shart emas.

Masalan, tokenizer texnik atamani shunchaki lugʻati uchun qulay boʻlgani sababli bir nechta boʻlakka ajratishi mumkin. Shu tokenlar bir-biri bilan qanday bogʻlanishini esa til modeli training jarayonida oʻrganadi.

Demak, ish ikkiga boʻlingan:

- **Tokenizer:** matn → token boʻlaklari → token IDlar.
- **Model:** token ifodalari → oʻrganilgan bogʻliqliklar → bashorat.

Tokenizatsiya tilni modelga tayyorlaydi. Qonuniyatlarni oʻrganish esa modelning vazifasi.

## Eslab qolishning eng oson yoʻli

Faqat ikki fikrni eslab qolsangiz, mana shular boʻlsin:

> **Token — model ishlaydigan matn boʻlagi.**
>
> **Tokenizatsiya — matnni shu boʻlaklarga ajratish va ularni IDlarga aylantirish jarayoni.**

Bitta qatorda: **matn → tokenizer → tokenlar → sonlar → model**.

Bu kichik dastlabki ishlov (preprocessing) bosqichi kutilganidan ancha katta taʼsirga ega. U model turli tillarni qanchalik samarali qayta ishlashiga, kontekst oynasiga qancha matn sigʻishiga, foydalanish qanday hisoblanishiga va til neyron tarmoqqa umuman qanday yetib borishiga taʼsir qiladi.

LLM keyingi tokenni bashorat qilishidan oldin tokenizer token nima ekanini belgilab berishi kerak.
