Tokenisierung
Stand
Was ist Tokenisierung?
Die Wahl des Tokenizers legt stillschweigend das effektive Vokabular eines Modells, seine Mehrsprachigkeit und die API-Kosten fest — und die ziffernweise Aufspaltung von Zahlen ist die konkrete Eigenheit, die LLM-Arithmetik ohne umfangreiche numerische Trainingsdaten unzuverlässig macht.
Worum es geht
Tokenisierung ist der Prozess, rohen Text in eine Sequenz ganzzahliger IDs umzuwandeln, die ein LLM verarbeiten kann. Sie ist kein Vorverarbeitungsdetail — sie legt das effektive Vokabular des Modells fest, seinen Umgang mit seltenen Wörtern, seine mehrsprachige Leistung und treibt direkt die API-Kosten.
Das Kernproblem, das sie löst, ist die Darstellung eines offenen Zeichenkettenraums mit einer festgrößigen Embedding-Tabelle bei gleichzeitig handhabbaren Sequenzlängen. Modelle auf Zeichenebene erzeugen sehr lange Sequenzen; Modelle auf Wortebene versagen bei Token außerhalb des Vokabulars und bei morphologischer Variation.
Drei Algorithmen dominieren: Byte-Pair Encoding (BPE, Sennrich 2016) verschmilzt iterativ die häufigsten Byte-Paare, bis die Zielvokabulargröße erreicht ist — GPT-4 verwendet cl100k mit 100.256 Token. WordPiece (Schuster 2012) maximiert die Log-Likelihood des Trainingskorpus und wird von Modellen der BERT-Familie verwendet. SentencePiece (Kudo 2018) arbeitet auf rohem Unicode ohne Vor-Tokenisierung und ist damit sprachunabhängig — Llama 3 verwendet ein SentencePiece-Vokabular mit 128.256 Token. Tokenizer werden separat vom Modell trainiert und dann eingefroren. Eine kritische Eigenheit: Die meisten Tokenizer spalten Zahlen ziffernweise auf ('2024' → ['20','24'] oder ['2','0','2','4']), was Arithmetik brüchig macht, sofern das Modell nicht reichlich numerische Trainingsdaten sieht.
Wählen Sie cl100k (tiktoken), wenn Sie auf OpenAI-Modellen aufbauen; verwenden Sie sonst den mitgelieferten Tokenizer des Modells — mischen Sie Tokenizer niemals. Nicht zueinander passende Tokenizer erzeugen stillschweigend falsche Token-Zahlen und Budgetüberschreitungen.
Warum es zählt
- GPT-4s cl100k (100.256 Token) und Llama 3s SentencePiece (128.256 Token) sind nicht austauschbar — das Mischen von Tokenizern erzeugt stillschweigend falsche Token-Zahlen und Budgetüberschreitungen.
- Die sprachunabhängige Unicode-Behandlung von SentencePiece ist direkt relevant für mehrsprachige SAP-Deployments (DACH, EMEA).
- Die Eigenheit der Ziffernaufspaltung ('2024' → ['20','24']) ist ein konkreter Grund, LLM-Arithmetik in Finanzberichts-Use-Cases ohne Validierung zu misstrauen.
Kernpunkte
- BPE verschmilzt häufige Byte-Paare; die Merge-Tabelle ist Teil des Modell-Artefakts und muss mit ihm ausgeliefert werden.
- GPT-4 cl100k: 100.256 Token. Llama 3 SentencePiece: 128.256 Token. Nehmen Sie niemals an, Token-Zahlen seien austauschbar.
- ABAP-Code tokenisiert in den meisten englisch trainierten Vokabularen schlecht — 1 ABAP-LOC ≈ 8–15 Token gegenüber 3–5 bei Python.
- Zahlen werden meist ziffernweise aufgespalten; weisen Sie Modelle an, Zahlen als formatierte Zeichenketten auszugeben, wenn Präzision zählt.
- Tiktoken (OpenAI) und HuggingFace-Tokenizer liefern beide Zählungen; verwenden Sie stets den Tokenizer des Zielmodells.
- Ein Tokenizer wird einmal trainiert und mit seinem Modell eingefroren — ein Wechsel der Modellfamilie (z. B. GPT-4 zu Llama 3) macht jede vorherige Token-Kostenschätzung ungültig und erfordert eine vollständige Neu-Benchmark, keine proportionale Anpassung.
- Deutsche zusammengesetzte Nomen und andere agglutinierende Konstruktionen tokenisieren unter den meisten, auf englischlastigen Korpora trainierten Vokabularen weniger effizient als ihre englischen Entsprechungen — ein Mandat im DACH-Markt sollte deutschsprachigen Traffic getrennt benchmarken, nie von einem rein englischsprachigen Test hochrechnen.
- Der Byte-Ebenen-Fallback von BPE garantiert, dass jede Eingabezeichenkette tokenisierbar ist — nichts ist je wirklich außerhalb des Vokabulars, höchstens potenziell sehr ineffizient zu kodieren.
Begriffe auf dieser Seite
- BPE
- Byte-Pair Encoding: verschmilzt iterativ die häufigsten benachbarten Byte-Paare im Trainingstext, um ein Subwort-Vokabular aufzubauen.
- Vocabulary
- Die feste Menge von Token-IDs, mit denen das Modell trainiert wurde; Eingaben außerhalb des Vokabulars sind bei BPE konstruktionsbedingt unmöglich — jedes Byte ist darstellbar.
- SentencePiece
- Googles Tokenizer-Bibliothek, die ein BPE- oder Unigramm-LM-Modell direkt auf rohem Unicode trainiert und keine sprachspezifische Vor-Tokenisierung benötigt.
- cl100k
- OpenAIs BPE-Vokabular mit 100.256 Token, verwendet von GPT-4 und text-embedding-3-Modellen, implementiert in der tiktoken-Bibliothek.
- Token budget
- Die maximale Anzahl von Token (Prompt + Completion), die ein Modell in einem Aufruf verarbeiten kann; eine Überschreitung löst einen Kontextlängenfehler aus.
Quellen
- Sennrich et al. 2016 — Neural Machine Translation of Rare Words with Subword Units (BPE)
- Kudo & Richardson 2018 — SentencePiece
- OpenAI tiktoken documentation
- OpenAI tokenizer playground
- Meta AI — Llama 3 Model Card
- HuggingFace tokenizers library
- SAP Business AI — official product page
- SAP Generative AI — official product page
- Hugging Face — Tokenizer summary: BPE, WordPiece and SentencePiece compared
- Google — SentencePiece: official repository and documentation
- SAP Help Portal — Generative AI hub in SAP AI Core: model access overview
- SAP Help Portal — Metering and pricing for generative AI on SAP AI Core
Vollständige Karte für Mitglieder. Was die vollständige Karte ergänzt: den vollständigen Entscheidungsrahmen · den Vergleich SAP · Snowflake · Databricks · Fabric · die häufigen Fallstricke und ihre Behebung · die Kurzreferenz · die Architekturschemata · die Codeblöcke · die zitierfähigen Kennzahlen.
Offene SAP-Projekte
Aktuelle SAP-Analytics-Projekte und Stellen im DACH-Raum: SAP-Analytics-Projekte im DACH-Raum.