Inférence

Tokenization

La tokenization est le processus de division du texte brut en unités discrètes appelées tokens — généralement des fragments de sous-mots — qu'un modèle de langage encode et traite numériquement. Un token représente en moyenne environ 4 caractères en anglais ; la plupart des LLM modernes utilisent des vocabulaires de sous-mots contenant 32 000 à 200 000 entrées.

La tokenization est l'étape de prétraitement qui convertit une chaîne de texte en une séquence d'ID entiers tirés d'un vocabulaire fixe. Chaque ID correspond à un token — qui peut être un mot, un fragment de sous-mot, un caractère unique ou un espace — selon la conception du tokenizer. Les tailles de vocabulaires des tokenizers modernes courants varient d'environ 32 000 (le tokenizer SentencePiece de LLaMA 2) à environ 100 000 à 200 000 (vocabulaire cl100k tiktoken de GPT-4o).

L'approche dominante depuis environ 2018 est le Byte-Pair Encoding (BPE), dans lequel les paires de caractères fréquentes sont itérativement fusionnées en unités de sous-mots lors d'une phase d'entraînement sur un grand corpus textuel, produisant un vocabulaire qui équilibre la couverture des mots rares avec un codage efficace des mots courants. Les alternatives incluent WordPiece (utilisé dans les modèles de la famille BERT) et Unigram LM (utilisé dans SentencePiece, qui sous-tend les modèles LLaMA et Mistral). Le vocabulaire du tokenizer est fixé avant que le modèle de langage lui-même ne soit entraîné. Au moment de l'inférence, le texte d'entrée est codé en une séquence d'ID de tokens, et les ID de sortie du modèle sont décodés en texte lisible.

La tokenization détermine directement le coût du système et le comportement du modèle : le prix des API est libellé en tokens, les limites de la fenêtre de contexte sont exprimées en tokens, et les modèles fonctionnent purement sur des ID entiers — ils ne voient jamais de caractères bruts. Les langues avec de grands ensembles de caractères (chinois, japonais) ou une morphologie hautement agglutinante (finnois, turc) sont codées moins efficacement que l'anglais, ce qui signifie que le contenu sémantique équivalent peut consommer deux à quatre fois plus de tokens et donc proportionnellement plus de calcul et de coûts.

En 2026, la plupart des modèles frontière — GPT-4o, Claude 3.5/4, Gemini 2.0 — utilisent des tokenizers de style BPE avec des vocabulaires dans la plage 100k à 200k. La recherche sur les architectures sans tokenizer et au niveau des octets (MegaByte, MEGALODON) continue, visant à éliminer entièrement le goulot d'étranglement de la tokenization, mais la tokenization de sous-mots reste l'approche de production dominante dans les modèles à poids ouvert et propriétaires.

Exemple

Lorsqu'un utilisateur soumet la phrase « Tokenization is fundamental » à GPT-4o, le tokenizer la convertit en environ 4 à 5 ID entiers avant que tout calcul neuronal ne commence ; les ID entiers de sortie du modèle sont ensuite décodés en texte lisible un token à la fois.

Termes liés

Dernières actualités sur le sujet

← Glossaire