- Neu veröffentlichter Code von Andrej Karpathy, nachdem er OpenAI verlassen hat
- Minimaler/sauberer Code für den (Byte-Level-)Byte-Pair-Encoding-(BPE-)Algorithmus, der üblicherweise für die Tokenisierung von LLMs verwendet wird
- Byte Level: weil er auf UTF-8-kodierten Zeichenketten arbeitet
- BPE wurde für LLMs durch das GPT-2-Paper und den zugehörigen GPT-2-Code-Release von OpenAI populär gemacht
- Heute trainieren alle modernen LLMs (z. B. GPT, Llama, Mistral) ihre Tokenizer mit diesem Algorithmus
- Das Repo enthält zwei Tokenizer. Beide führen drei zentrale Operationen aus
-
- Training des Vokabulars und der Merges des Tokenizers auf einem gegebenen Text
-
- Kodierung von Text in Tokens
-
- Dekodierung von Tokens zurück in Text
- Eine Tokenizer-Basisklasse sowie die einfachste Implementierung
BasicTokenizer und RegexTokenizer, das Eingabestrings per regulärem Ausdruck aufteilt
GPT4Tokenizer, ein Wrapper für RegexTokenizer, reproduziert mit der Bibliothek tiktoken die Tokenisierung von GPT-4 exakt
1 Kommentare
Dazu ist auch ein Video zum Erstellen eines GPT-Tokenizers erschienen.
GPT-Tokenizer erstellen von Andrej Karpathy [Video]