Whiz Tools

டோக்கன் கணக்கீட்டாளர்

Token Counter

Introduction

Token Counter என்பது tiktoken நூலகத்தைப் பயன்படுத்தி கொடுக்கப்பட்ட உரையில் உள்ள டோக்கன்களின் எண்ணிக்கையை எண்ணும் கருவி ஆகும். டோக்கனீகேஷன் என்பது இயற்கை மொழி செயலாக்கத்தில் (NLP) மிக முக்கியமான படி ஆகும் மற்றும் இது பல்வேறு பயன்பாடுகளில், இயந்திரக் கற்றல் மாதிரிகள், உரை பகுப்பாய்வு மற்றும் மொழி புரிதல் அமைப்புகள் ஆகியவற்றில் பரவலாகப் பயன்படுத்தப்படுகிறது.

How to Use This Tool

  1. நீங்கள் டோக்கனீக்க செய்ய விரும்பும் உரையை வழங்கப்பட்ட உரை பகுதியில் உள்ளீடு செய்யவும்.
  2. கீழ்காணும் பட்டியலில் இருந்து குறியீட்டு ஆல்காரிதத்தை தேர்ந்தெடுக்கவும். கிடைக்கக்கூடிய விருப்பங்கள்:
    • CL100K_BASE
    • P50K_BASE
    • R50K_BASE
  3. கருவி தானாகவே டோக்கன் எண்ணிக்கையை கணக்கிடும் மற்றும் காட்டும்.
  4. "Copy Result" பொத்தானை அழுத்தி முடிவை உங்கள் கிளிப்போர்டுக்கு நகலெடுக்கலாம்.

Tokenization Process

டோக்கனீகேஷன் என்பது உரையை டோக்கன்கள் எனப்படும் சிறிய அலகுகளில் உடைக்கும் செயல்முறை ஆகும். இந்த டோக்கன்கள், பயன்படுத்தப்படும் டோக்கனீகேஷன் ஆல்காரிதம் அடிப்படையில், வார்த்தைகள், துண்டுகள் அல்லது எழுத்துக்கள் ஆக இருக்கலாம். OpenAI உருவாக்கிய tiktoken நூலகம், GPT-3 மற்றும் GPT-4 போன்ற மாதிரிகளில் பயன்படுத்தப்படும் திறமையான டோக்கனீகேஷன் ஆல்காரிதங்களை செயல்படுத்துகிறது.

Encoding Algorithms

  1. CL100K_BASE: OpenAI மாதிரிகள் பயன்படுத்தும் சமீபத்திய குறியீட்டு முறையாகும். இது பல்வேறு மொழிகள் மற்றும் சிறப்பு எழுத்துக்களை திறமையாக கையாள வடிவமைக்கப்பட்டுள்ளது.

  2. P50K_BASE: சில GPT-3 மாதிரிகளில் பயன்படுத்தப்படும் பழைய குறியீட்டு முறையாகும். இது சுமார் 50,000 டோக்கன்களின் சொற்றொகுப்பைக் கொண்டுள்ளது.

  3. R50K_BASE: மேலும் பழைய GPT-3 மாதிரிகளில் பயன்படுத்தப்படும் மற்றொரு குறியீட்டு முறையாகும், இது கூடவே சுமார் 50,000 டோக்கன்களின் சொற்றொகுப்பைக் கொண்டுள்ளது.

Use Cases

டோக்கன் எண்ணிக்கை மற்றும் டோக்கனீகேஷன் இயற்கை மொழி செயலாக்கம் மற்றும் இயந்திரக் கற்றலில் பல்வேறு பயன்பாடுகள் உள்ளன:

  1. மொழி மாதிரி பயிற்சி: டோக்கனீகேஷன் என்பது GPT-3 மற்றும் BERT போன்ற பெரிய மொழி மாதிரிகளை பயிற்சியளிக்கும் முக்கிய முன்னணி படியாகும்.

  2. உரை வகைப்படுத்தல்: டோக்கனீக்கப்பட்ட உரை, உணர்ச்சி பகுப்பாய்வு அல்லது தலைப்பு வகைப்படுத்தல் போன்ற உரை வகைப்படுத்தல் பணிகளுக்கான உள்ளீடாகப் பயன்படுத்தப்படுகிறது.

  3. இயந்திர மொழிபெயர்ப்பு: டோக்கனீகேஷன், மொழிபெயர்ப்பு அமைப்புகளுக்கான நிரல்களை manageable அலகுகளாக உடைக்க உதவுகிறது.

  4. தகவல் தேடல்: தேடல் இயந்திரங்கள் ஆவணங்களை அடையாளம் காண மற்றும் கேள்விகளை பொருத்துவதற்காக டோக்கனீகேஷனைப் பயன்படுத்துகின்றன.

  5. உரை சுருக்கம்: முக்கிய வார்த்தைகள் மற்றும் சொற்றொடர்களை அடையாளம் காண டோக்கனீகேஷன் உதவுகிறது.

  6. சாட் போட்கள் மற்றும் உரையாடல் AI: பயனர் உள்ளீடுகளை செயல்படுத்த மற்றும் உரிய பதில்களை உருவாக்க டோக்கனீகேஷன் பயன்படுத்தப்படுகிறது.

  7. உள்ளடக்க ஒழுங்குபடுத்தல்: உள்ளடக்க ஒழுங்குபடுத்தல் அமைப்புகளில் குறிப்பிட்ட வார்த்தைகள் அல்லது சொற்றொடர்களை அடையாளம் காண டோக்கனீகேஷன் உதவலாம்.

Alternatives

இந்த கருவி tiktoken ஐ டோக்கனீகேஷனுக்காகப் பயன்படுத்தும் போதிலும், மற்ற டோக்கனீகேஷன் முறைகள் மற்றும் நூலகங்கள் கிடைக்கின்றன:

  1. NLTK (இயற்கை மொழி கருவி): NLP பணிகளுக்கான பிரபலமான Python நூலகம், டோக்கனீகேஷனையும் உள்ளடக்கமாக்குகிறது.

  2. spaCy: மற்றொரு சக்திவாய்ந்த NLP நூலகம், திறமையான டோக்கனீகேஷனுடன் பிற மொழி செயலாக்க திறன்களை வழங்குகிறது.

  3. WordPiece: BERT மற்றும் பிற மாற்று மாதிரிகளில் பயன்படுத்தப்படும் துண்டு டோக்கனீகேஷன் ஆல்காரிதம்.

  4. Byte Pair Encoding (BPE): டோக்கனீகேஷனுக்காகப் பயன்பாட்டுக்கேற்ப மாற்றப்பட்ட தரவுப் பீடிகை தொழில்நுட்பம், GPT-2 மாதிரிகளில் பயன்படுத்தப்படுகிறது.

  5. SentencePiece: நரம்பியல் நெட்வொர்க் அடிப்படையிலான உரை உருவாக்க அமைப்புகளுக்காக, ஒரு சுயமேற்பார்வை உரை டோக்கனீக்கருவி மற்றும் மீட்டமைப்பாளர்.

History

டோக்கனீகேஷன் இயற்கை மொழி செயலாக்கத்தில் அடிப்படையான கருத்தாக பல ஆண்டுகளாக உள்ளது. ஆனால், சமீபத்திய மொழி மாதிரிகளில் பயன்படுத்தப்படும் குறிப்பிட்ட டோக்கனீகேஷன் முறைகள் குறிப்பிடத்தக்க முறையில் மாறிவருகின்றன:

  1. வார்த்தை அடிப்படையிலான டோக்கனீகேஷன்: ஆரம்ப NLP அமைப்புகள் வெறும் வார்த்தை அடிப்படையிலான டோக்கனீகேஷனைக் கொண்டு, வெள்ளை இடம் மற்றும் குறியீட்டின் அடிப்படையில் உரையைப் பிரிக்கின்றன.

  2. வழிமுறையால் அடிப்படையிலான டோக்கனீகேஷன்: மேலும் சிக்கலான சந்தர்ப்பங்களை கையாள, மொழியியல் விதிகளைப் பயன்படுத்தி, அதிக சிக்கலான அமைப்புகள் செயல்படுத்தப்பட்டன.

  3. புள்ளியியல் டோக்கனீகேஷன்: தரவிலிருந்து டோக்கனீகேஷன் முறைமைகளை கற்றுக்கொள்ள இயந்திரக் கற்றல் தொழில்நுட்பங்களை அறிமுகப்படுத்தப்பட்டது.

  4. துண்டு டோக்கனீகேஷன்: ஆழ்ந்த கற்றல் NLP இல் வளர்ந்த போது, Byte Pair Encoding (BPE) மற்றும் WordPiece போன்ற துண்டு டோக்கனீகேஷன் முறைகள் பிரபலமாகின. இந்த முறைகள் வெளிப்புற சொற்களை கையாள முடியும் மற்றும் பல மொழிகளில் நன்கு செயல்படுகின்றன.

  5. Tiktoken மற்றும் GPT டோக்கனீகேஷன்: OpenAI உருவாக்கிய tiktoken, GPT மாதிரிகளில் பயன்படுத்தப்படும் டோக்கனீகேஷனை செயல்படுத்துகிறது, திறமையுடன் மற்றும் பரந்த மொழி க覆盖த்திற்காக மேம்படுத்தப்பட்டுள்ளது.

Examples

இங்கே tiktoken நூலகத்தைப் பயன்படுத்தி வெவ்வேறு நிரலாக்க மொழிகளில் டோக்கன் எண்ணிக்கையை கணக்கிடுவதற்கான சில குறியீட்டு எடுத்துக்காட்டுகள் உள்ளன:

import tiktoken

def count_tokens(text, encoding_name):
    encoding = tiktoken.get_encoding(encoding_name)
    tokens = encoding.encode(text)
    return len(tokens)

## Example usage
text = "Hello, world! This is a tokenization example."
encoding_name = "cl100k_base"
token_count = count_tokens(text, encoding_name)
print(f"Token count: {token_count}")
const { encoding_for_model } = require("tiktoken");

function countTokens(text, encodingName) {
  const enc = encoding_for_model(encodingName);
  const tokens = enc.encode(text);
  return tokens.length;
}

// Example usage
const text = "Hello, world! This is a tokenization example.";
const encodingName = "cl100k_base";
const tokenCount = countTokens(text, encodingName);
console.log(`Token count: ${tokenCount}`);
require 'tiktoken_ruby'

def count_tokens(text, encoding_name)
  encoding = Tiktoken.encoding_for_model(encoding_name)
  tokens = encoding.encode(text)
  tokens.length
end

## Example usage
text = "Hello, world! This is a tokenization example."
encoding_name = "cl100k_base"
token_count = count_tokens(text, encoding_name)
puts "Token count: #{token_count}"

இந்த எடுத்துக்காட்டுகள் tiktoken நூலகத்தை (அல்லது பிற மொழிகளில் அதற்கான சமமானவற்றை) பயன்படுத்தி, குறிப்பிட்ட குறியீட்டைப் பயன்படுத்தி கொடுக்கப்பட்ட உரையில் உள்ள டோக்கன்களை எண்ணுவதற்கான முறையை விளக்குகின்றன.

References

  1. OpenAI. "Tiktoken." GitHub, https://github.com/openai/tiktoken. Accessed 2 Aug. 2024.
  2. Vaswani, Ashish, et al. "Attention Is All You Need." arXiv:1706.03762 [cs], Dec. 2017, http://arxiv.org/abs/1706.03762.
  3. Sennrich, Rico, et al. "Neural Machine Translation of Rare Words with Subword Units." arXiv:1508.07909 [cs], Jun. 2016, http://arxiv.org/abs/1508.07909.
  4. Brown, Tom B., et al. "Language Models are Few-Shot Learners." arXiv:2005.14165 [cs], Jul. 2020, http://arxiv.org/abs/2005.14165.
  5. Devlin, Jacob, et al. "BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding." arXiv:1810.04805 [cs], May 2019, http://arxiv.org/abs/1810.04805.
Feedback