Token (LLM) (FR)
Un token est l'unité de texte minimale avec laquelle les grands modèles de langage (LLM) peuvent travailler. Tout texte, avant d'être traité par un LLM, est d'abord converti en une séquence de tokens, qui sont ensuite traduits en représentations numériques faciles à analyser et à traiter par le modèle.
Selon la stratégie de tokenisation utilisée, un token peut représenter :
- Un mot entier (par exemple, "maison")
- Une partie de mot ou une racine (par exemple, "chant" dans "chanter")
- Un seul caractère ou un signe de ponctuation (par exemple, « , », « ! »)
L'utilisation de tokens permet aux modèles de langage d'apprendre et de reproduire efficacement les structures textuelles, d'identifier des motifs, ainsi que de comprendre la sémantique et la syntaxe du texte.
Processus de tokenisation
La tokenisation est le processus de segmentation du texte source en tokens, suivi de leur conversion en identifiants numériques compréhensibles par le modèle.
Cette étape est obligatoire et fondamentale pour le fonctionnement des grands modèles de langage. Elle permet aux LLM de :
- Analyser la syntaxe — la structure du texte et la disposition des éléments (mots et phrases) ;
- Extraire la sémantique — le sens profond du texte et les relations entre ses éléments.
Il existe plusieurs méthodes principales de tokenisation, parmi lesquelles :
- Byte Pair Encoding (BPE) : Un algorithme qui remplace itérativement les paires de symboles les plus fréquentes par de nouveaux tokens, ce qui permet de traiter efficacement les mots rares et les variations morphologiques.
- WordPiece : Utilisé dans les modèles BERT, il segmente les mots en unités de sous-mots, ce qui aide à traiter les mots inconnus.
- SentencePiece : Une méthode qui considère le texte comme une séquence de caractères et applique des modèles basés sur BPE ou Unigram pour la tokenisation.
Le choix de la méthode de tokenisation influe sur les performances du modèle, sa capacité à traiter différentes langues et l'efficacité de son entraînement.
Tokens spéciaux
En plus des tokens principaux, les modèles utilisent également des tokens spéciaux pour marquer des éléments fonctionnels du texte, tels que :
[CLS](class) — token de début de séquence, souvent utilisé pour les tâches de classification de texte ;[SEP](separator) — sépare différentes parties du texte (par exemple, une question et une réponse, des phrases ou des paragraphes) ;[MASK]— token spécial désignant un mot que le modèle doit prédire (utilisé dans BERT et d'autres modèles de langage masqué) ;[PAD](padding) — utilisé pour le padding (rembourrage) afin d'égaliser la longueur des textes.
Ces tokens spéciaux aident les modèles à percevoir plus précisément la structure et le contexte du texte traité.
Tokens et fenêtre de contexte
La fenêtre de contexte (context window) est le nombre maximal de tokens qu'un modèle peut prendre en compte et traiter simultanément lors de la génération de texte.
Par exemple, le modèle GPT-3 a une fenêtre de contexte de 2048 tokens. Cela signifie que lors de la génération de texte, le modèle peut prendre en compte simultanément des informations contenues dans un maximum de 2048 tokens du texte source. La taille de la fenêtre de contexte influe sur :
- La quantité maximale d'informations accessible au modèle ;
- La qualité et la pertinence des réponses générées ;
- La capacité du modèle à comprendre de longs textes et à maintenir le contexte sur de grandes distances entre les tokens.
Bibliographie
- Sennrich, R.; Haddow, B.; Birch, A. (2016). Neural Machine Translation of Rare Words with Subword Units. arXiv:1508.07909.
- Kudo, T.; Richardson, J. (2018). SentencePiece: A Simple and Language-Independent Subword Tokenizer and Detokenizer for Neural Text Processing. arXiv:1808.06226.
- Kudo, T. (2018). Subword Regularization: Improving Neural Network Translation Models with Multiple Subword Candidates. arXiv:1804.10959.
- Devlin, J. et al. (2019). BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding. arXiv:1810.04805.
- Song, X. et al. (2021). Fast WordPiece Tokenization. *EMNLP 2021*. ACL Anthology.
- Mielke, S. J.; Dalmia, S.; Cotterell, R. (2021). A Brief History of Open-Vocabulary Modeling and Tokenization in NLP. arXiv:2112.10508.
- Xue, J. et al. (2022). ByT5: Towards a Token-Free Future with Pre-trained Byte-to-Byte Models. arXiv:2105.13626.
- Limisiewicz, T.; Balhar, J.; Mareček, D. (2023). Tokenization Impacts Multilingual Language Modeling: Assessing Vocabulary Allocation and Overlap Across Languages. arXiv:2305.17179.
- Pourmostafa Roshan Sharami, J.; Shterionov, D.; Spronck, P. (2023). A Systematic Analysis of Vocabulary and BPE Settings for Optimal Fine-tuning of NMT. arXiv:2303.00722.
- Batsuren, K. et al. (2024). Evaluating Subword Tokenization: Alien Subword Composition and OOV Generalization Challenge. arXiv:2404.13292.
- Chai, Y. et al. (2024). Tokenization Falling Short: On Subword Robustness in Large Language Models. arXiv:2406.11687.