- OpenAI'dan ayrılan Andrej Karpathy'nin yeni yayımladığı kod
- LLM tokenizasyonunda yaygın olarak kullanılan (Byte Level) byte pair encoding (BPE) algoritması için minimal/temiz kod
- Byte Level: UTF-8 ile kodlanmış dizgeler üzerinde çalıştığı için
- BPE, GPT-2 makalesi ve OpenAI'nin ilgili GPT-2 kod yayını sayesinde LLM'lerde yaygınlaştı
- Günümüzde tüm modern LLM'ler (ör. GPT, Llama, Mistral) tokenizer'larını eğitmek için bu algoritmayı kullanıyor
- Repo'da 2 tokenizer bulunuyor. İkisi de 3 ana işlemi gerçekleştiriyor
-
- Verilen metin için tokenizer'ın söz varlığını ve birleştirmelerini eğitme
-
- Metni token'lara kodlama
-
- Token'lardan metne çözme
- Tokenizer temel sınıfı ile en basit uygulama olan BasicTokenizer ve girdi dizgesini düzenli ifadeyle bölen RegexTokenizer
- RegexTokenizer için bir sarmalayıcı olan GPT4Tokenizer,
tiktoken kütüphanesinde GPT-4'ün tokenizasyonunu birebir yeniden üretir
1 yorum
Bununla ilgili olarak, GPT Tokenizer oluşturma videosu da yayınlandı.
Andrej Karpathy tarafından GPT Tokenizer oluşturma [video]