AI Sözlüğü
Başlangıç· ~2 dk okuma#token#tokenization

Token

LLM'in en küçük metin birimi

LLM'in metni okurken parçaladığı en küçük birim — genelde bir kelime, kelime parçası ya da noktalama.

METİN → TOKEN'LAR"Tokenization is how LLMs read text"Token#1024ization#1161is#1298how#1435LLMs#1572read#1709text#1846her token'ın bir sayısal kimliği var — LLM aslında bunları okur
Tanım

LLM'ler harfleri ya da kelimeleri değil, token'ları işler. Bir token bazen tam bir kelime ("cat"), bazen bir kelime parçası ("token", "ization"), bazen tek bir noktalama ya da boşluktur. Bu parçalama işlemine tokenization denir.

Pratik kural: İngilizce için ~1 token = 0.75 kelime, ya da ~4 karakter. Türkçe ve diğer eklemeli dillerde token sayısı daha fazladır (1 kelime bazen 3-4 token). Çince/Japonca farklı dinamikleri var.

Modern tokenizer'lar BPE (Byte-Pair Encoding) ya da SentencePiece algoritmaları kullanır. Sık geçen alt dizileri tek token yapıp, nadir kelimeleri parçalara bölerler. Vocab boyutu genelde 32K-256K arasıdır.

Benzetme

Bir cümleyi LEGO bloklarına bölmek gibi. Her LEGO parçası bir token. LLM cümleyi anlamak için önce bu LEGO'lara ayırır, sonra her parçayı bir sayı kimliğine çevirip işler. "merhaba" → 5 parça (mer, ha, ba, _, boşluk) — modele göre değişir.

Gerçek dünyadan örnek

"ChatGPT is amazing!" → GPT-4 tokenizer: ["Chat", "G", "PT", " is", " amazing", "!"] = 6 token.

"Yapay zeka harika!" → ["Yap", "ay", " zeka", " harika", "!"] = 5 token.

Aynı anlam, farklı token sayısı. Türkçe genelde %30-50 daha fazla token tüketir — yani aynı içerik için API faturan da %30-50 daha yüksek olur.

OpenAI Tokenizer Playground'da kendin görebilirsin: tiktoken kütüphanesi ile programatik olarak da sayılır.

Ne zaman kullan
  • API maliyeti hesaplamak için token sayısını bilmek (her token = para)
  • Context window dolup dolmadığını ölçmek
  • Prompt optimizasyonu — gereksiz token'ı kes, maliyet düşür
  • Akış (streaming) uygulamalarında parçalı çıktı yönetimi
Ne zaman kullanma
  • Karakter sayısıyla token sayısını karıştırmak (1 token ≠ 1 karakter)
  • Kelime sayısı ile token sayısını eşitlemek (özellikle TR'de hatalı)
  • Tokenizer'ı modelden ayrı düşünmek — her model farklı tokenizer kullanır
Sık yapılan hatalar

Türkçe maliyet sürprizleri

Aynı anlamlı içerik İngilizce 1000 token, Türkçe 1500 token. API faturasında karşılaşmadan önce hesapla. Bazı projelerde TR → EN → cevap → TR'ye çeviri daha ucuz olabilir.

Tokenizer'lar arası uyumsuzluk

GPT-4 ile Claude'un tokenizer'ı farklı. 'Bu prompt 4000 token' demek hangi modelde? Doğru tokenizer ile sayman gerekir.

Whitespace ve özel karakterler

Boşluk, satır sonu, emoji ayrı token'dır. JSON çıktısı isterken {, }, : gibi karakterler de token tüketir. Output formatını sade tut.