𝗧𝗼𝗸𝗲𝗻𝗶𝘇𝗮𝘁𝗶𝗼𝗻 𝗨𝗻𝗱𝗲𝗿 𝘁𝗵𝗲 𝗛𝗼𝗼𝗱 (டோக்கனைசேஷன்: அதன் பின்னணியில்)
நீங்கள் ஒரு சாட்போட்டை (chatbot) வரிசைப்படுத்துகிறீர்கள். ஆங்கிலக் கேள்விகள் 42 டோக்கன்களைப் பயன்படுத்துகின்றன. ஒரு ஸ்பானிஷ் பயனர் ஒரு கேள்வியைக் கேட்கும்போது அது 103 டோக்கன்களைப் பயன்படுத்துகிறது. திடீரென்று, உங்கள் API செலவுகள் 40% உயர்கின்றன.
டோக்கனைசேஷனை ஒரு கண்ணுக்குத் தெரியாத குழாய் அமைப்பு (plumbing) போல நீங்கள் கருதும் போது இது நிகழ்கிறது. ஒவ்வொரு பெரிய மொழி மாதிரியும் (Large Language Model) நான்கு துணைச் சொல் (subword) அல்காரிதம்களில் ஒன்றைப் பயன்படுத்துகிறது. உங்கள் தேர்வு சொல்லகராதியின் அளவு (vocabulary size), மொழியின் செயல்திறன் மற்றும் உங்கள் மாதாந்திரக் கட்டணத்தைத் தீர்மானிக்கிறது.
டோக்கனைசேஷன் மூன்று முக்கியமான விஷயங்களைக் கட்டுப்படுத்துகிறது:
- இன்ஃபரன்ஸ் செலவு (Inference cost). LLM API-கள் டோக்கன்களின் அடிப்படையில் கட்டணம் வசூலிக்கின்றன. ஒரு சிறிய சொல்லகராதி ஒரு சொல்லை 8 டோக்கன்களாகப் பிரிக்கலாம். ஒரு பெரிய சொல்லகராதி அதை 3 டோக்கன்களில் கையாளும். பெரிய அளவில் செயல்படும் போது இந்த வேறுபாடு உண்மையான பண இழப்பை ஏற்படுத்தும்.
- சொல்லகராதி பரப்பளவு (Vocabulary coverage). மோசமான சொல்லகராதிகள் நீண்ட தொடர்களை (sequences) உருவாக்குகின்றன. இது மெதுவான உருவாக்கத்திற்கும் (generation) அதிக செலவிற்கும் வழிவகுக்கிறது.
- மாதிரியின் செயல்பாடு (Model behavior). ஒரு டோக்கனைசர் "cowboy" என்பதை ["cow", "boy"] எனப் பிரித்தால், அதை ["c", "owb", "oy"] எனப் பிரிப்பதை விட மாதிரி வேறுவிதமாகப் பயிலும்.
நான்கு முக்கிய வகைகள் எவ்வாறு செயல்படுகின்றன என்பது இதோ:
BPE (Byte Pair Encoding)
- செயல்படும் விதம்: இது எழுத்துக்களுடன் தொடங்குகிறது. அடிக்கடி வரும் அருகருகே உள்ள ஜோடிகளைக் கணக்கிட்டு அவற்றை புதிய டோக்கன்களாக இணைக்கிறது. இலக்கு அளவை அடையும் வரை இதைத் திரும்பத் திரும்பச் செய்கிறது.
- நன்மைகள்: வேகமானது மற்றும் தீர்மானிக்கத்தக்கது (deterministic).
- பயனர்கள்: GPT-4o, Llama 3, Mistral.
WordPiece
- செயல்படும் விதம்: BPE போன்றது, ஆனால் வெறும் அதிர்வெட்டிற்கு (frequency) பதிலாக நிகழ்தகவைப் (likelihood) பயன்படுத்துகிறது. இது பயிற்சித் தரவின் நிகழ்தகவை அதிகப்படுத்தும் இணைப்புகளைத் தேர்ந்தெடுக்கிறது.
- நன்மைகள்: மொழியியல் ரீதியாக அதிக அர்த்தமுள்ள டோக்கன்களை உருவாக்குகிறது.
- பயனர்கள்: BERT, Google மாதிரிகள்.
SentencePiece
- செயல்படும் விதம்: இது உள்ளீட்டை மூல யுனிகோட் பைட்டுகளாக (raw Unicode bytes) treats செய்கிறது. இடைவெளிகளின் அடிப்படையில் பிரிப்பது போன்ற முன்-டோக்கனைசேஷன் (pre-tokenization) படிப்பு இதற்குத் தேவையில்லை.
- நன்மைகள்: இது மொழி சார்பற்றது (language-agnostic) என்பதால் பலமொழி ஆதரவிற்கு சிறந்தது.
- பயனர்கள்: Llama 2, Llama 3, Gemma.
Unigram
- செயல்படும் விதம்: இது ஒரு மிகப்பெரிய சொல்லகராதியுடன் தொடங்கி, ஒரு நிகழ்தகவு மாதிரியைப் (probabilistic model) பயன்படுத்தி அதைச் சுருக்குகிறது. இது சிறந்த பிரிப்புப் பாதையைத் (segmentation path) தேர்ந்தெடுக்கிறது.
- நன்மைகள்: டோக்கன்-அர்த்தம் இடையிலான வரைபடம் (mapping) மிகவும் நிலையானது.
- பயனர்கள்: T5, XLNet.
டெவலப்பர்களுக்கான முக்கியக் குறிப்புகள்:
- உங்கள் மொழிகளின் கலையைக் கவனியுங்கள். இடைவெளிகளைச் சார்ந்திருக்கும் BPE மாதிரிகள் ஜப்பானிய அல்லது இந்தி போன்ற மொழிகளில் சிரமப்படுகின்றன. உலகளாவிய தயாரிப்புகளுக்கு SentencePiece-ஐப் பயன்படுத்துங்கள்.
- உங்கள் பதிப்புகளை (versions) உறுதிப்படுத்துங்கள். cl100k_base என்பதிலிருந்து o200k_base க்கு மாறுவது உங்கள் டோக்கன் எண்ணிக்கையை மாற்றும். மதிப்பீடுகளின் போது நீங்கள் எந்த என்கோடிங்கை (encoding) பயன்படுத்துகிறீர்கள் என்பதை எப்போதும் கண்காணிக்கவும்.
- சரியாக பெஞ்ச்மார்க் (Benchmark) செய்யுங்கள். வெவ்வேறு மாதிரி குடும்பங்களுக்கு இடையிலான டோக்கன் எண்ணிக்கையை ஒப்பிடாதீர்கள். துல்லியமாக இருக்க எப்போதும் எழுத்து அல்லது பைட் எண்ணிக்கையைப் பயன்படுத்தி பெஞ்ச்மார்க் செய்யுங்கள்.
இந்தத் கருவிகளைப் புரிந்துகொள்வது, நிதித் துறையினர் அதிர்ச்சியடைவதற்குப் பதிலாக, செலவு குறைந்த தயாரிப்புகளை நீங்கள் வெளியிட உதவும்.
விருப்பத்தேர்வு கற்றல் சமூகம்: https://t.me/GyaanSetuAi