অধ্যায় 2 · লার্জ ল্যাঙ্গুয়েজ মডেলের ভেতরে
টোকেন: LLM কীভাবে লেখা পড়ে
- পৃষ্ঠা 4 / 8
- 2 মিনিট পড়া
LLM কখনো সরাসরি অক্ষর বা শব্দ দেখে না। লেখাকে প্রথমে টোকেন-এ ভাগ করা হয় — ছোট ছোট টুকরো, যা পুরো একটা শব্দ, শব্দের অংশ, স্পেসসহ শব্দ, বা যতিচিহ্ন হতে পারে — আর প্রতিটা টোকেন একটা সংখ্যায় রূপ নেয়, যা দিয়ে মডেল হিসাব করে।
নিজেই দেখে নিন
OpenAI তাদের টোকেনাইজার Python লাইব্রেরি tiktoken হিসেবে প্রকাশ করেছে:
# pip install tiktoken
import tiktoken
enc = tiktoken.get_encoding("o200k_base") # GPT-4o যে টোকেনাইজার ব্যবহার করে
for text in ["Artificial intelligence is changing how we work.",
"unbelievable"]:
ids = enc.encode(text)
print(len(ids), [enc.decode([i]) for i in ids])
# 8 ['Artificial', ' intelligence', ' is', ' changing', ' how', ' we', ' work', '.']
# 3 ['un', 'bel', 'ievable']
পরিচিত শব্দ একটা টোকেন; "unbelievable"-এর মতো কম প্রচলিত শব্দ কয়েক টুকরো হয়। ব্রাউজারে বিনামূল্যের OpenAI Tokenizer পাতাতেও চেষ্টা করে দেখতে পারেন।
কাজের একটা হিসাব (ইংরেজির জন্য)
OpenAI-এর টোকেন গাইড ইংরেজির জন্য এই আনুমানিক হিসাব দেয়: ১ টোকেন ≈ ৪টা অক্ষর ≈ একটা শব্দের ¾, অর্থাৎ ১০০ টোকেন ≈ ৭৫টা শব্দ। সঠিক সংখ্যা জানতে টোকেনাইজার ব্যবহার করুন।
বাংলায় বেশি টোকেন লাগে
আমরা একই বাক্য দুই ভাষায় একই টোকেনাইজার দিয়ে মেপে দেখেছি:
| বাক্য | অক্ষর | টোকেন (o200k_base) | টোকেন (পুরোনো cl100k_base) |
|---|---|---|---|
| Artificial intelligence is changing how we work. | 48 | 8 | 9 |
| কৃত্রিম বুদ্ধিমত্তা আমাদের কাজের ধরন বদলে দিচ্ছে। | 49 | 20 | 59 |
টোকেনাইজার তার টুকরোগুলো শেখে ট্রেনিংয়ের লেখা থেকে, যেখানে বাংলার চেয়ে ইংরেজি অনেক বেশি — তাই বাংলা ছোট ছোট টুকরোয় ভাগ হয়। নতুন টোকেনাইজার অনেক ভালো (৫৯-এর বদলে ২০), তবু পার্থক্যটা রয়ে গেছে।
টোকেন কেন আপনার জন্য জরুরি
- খরচ — API টোকেন ধরে টাকা নেয়, আপনার ইনপুট আর মডেলের উত্তর দুটোরই।
- সীমা — প্রতিটা মডেল একসাথে নির্দিষ্ট সংখ্যক টোকেনই সামলাতে পারে (তার কনটেক্সট উইন্ডো, পাতা ৭)।
- অদ্ভুত ভুল — মডেল অক্ষর নয়, টুকরো দেখে; তাই একটা শব্দে কয়টা অক্ষর আছে গোনার মতো কাজে সে ভুল করতে পারে।
মূল কথা
- মডেল শব্দ নয়, টোকেন পড়ে: পুরো শব্দ, শব্দের টুকরো, স্পেস আর যতিচিহ্ন।
- ইংরেজিতে প্রতি টোকেনে মোটামুটি ৪টা অক্ষর বা শব্দের ¾।
- একই কথা বাংলায় সাধারণত বেশি টোকেন খরচ করে।