- 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 simpleBasicTokenizer, ainsi queRegexTokenizer, qui découpe la chaîne d’entrée avec des expressions régulières GPT4Tokenizer, un wrapper deRegexTokenizer, reproduit exactement la tokenisation de GPT-4 dans la bibliothèquetiktoken
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]