- Nouveau code publié par Andrej Karpathy après son départ d’OpenAI
- Code minimaliste et propre pour l’algorithme de Byte Pair Encoding (BPE) (au niveau des octets) couramment utilisé pour la tokenisation des LLM
- Byte Level : parce qu’il fonctionne sur des chaînes encodées en UTF-8
- Le BPE a été popularisé dans les LLM par l’article sur GPT-2 et la publication par OpenAI du code associé à GPT-2
- Aujourd’hui, tous les LLM modernes (par ex. GPT, Llama, Mistral) utilisent cet algorithme pour entraîner leur tokenizer
- Le dépôt contient 2 tokenizers. Tous deux effectuent 3 opérations principales
-
- entraînement du vocabulaire et des fusions du tokenizer sur un texte donné
-
- encodage du texte en tokens
-
- décodage des tokens en texte
- La classe de base
Tokenizer, l’implémentation la plus simple BasicTokenizer, ainsi que RegexTokenizer, qui découpe la chaîne d’entrée avec des expressions régulières
GPT4Tokenizer, un wrapper de RegexTokenizer, reproduit exactement la tokenisation de GPT-4 dans la bibliothèque tiktoken
1 commentaires
À ce sujet, une vidéo expliquant comment créer un GPT Tokenizer a également été publiée.
Créer un GPT Tokenizer par Andrej Karpathy [vidéo]