OpenAI
Cette page a été traduite automatiquement. Afficher l’article original en anglais.

Que sont les tokens et comment les compter?

Dernière mise à jour : 19 days ago

Que sont les tokens?

Les tokens sont les briques de base du texte que les mode8les OpenAI traitent. Ils peuvent eatre aussi courts qub4un seul caracte8re ou aussi longs qub4un mot entier, selon la langue et le contexte. Les espaces, la ponctuation et les parties de mots contribuent tous au de9compte des tokens. Cb4est ainsi que lb4API segmente votre texte en interne avant de ge9ne9rer une re9ponse.

Repe8res utiles pour lb4anglais:

  • 1 token e0b4peu pre8s e9quivaut e0 4 caracte8res

  • 1 token e0b4peu pre8s e9quivaut e0 be de mot

  • 100 tokens e0b4peu pre8s e9quivalent e0 75 mots

  • 1a0e0a02 phrases e0b4peu pre8s e9quivalent e0 30 tokens

  • 1 paragraphe e0b4peu pre8s e9quivaut e0 100 tokens

  • b91a0500 mots e0b4peu pre8s e9quivalent e0 2a0048 tokens

La tokenisation peut varier selon la langue. Par exemple, aba0Cf3mo este1sa0bb (espagnol pour aba0Comment e7a vaa0?a0bb) contient 5 tokens pour 10 caracte8res. Les textes non anglophones produisent souvent un ratio tokens/caracte8res plus e9leve9, ce qui peut affecter les cofbts et les limites.

Exemples

Voici quelques exemples de textes re9els avec leur nombre de tokens approximatif:

  • La citation de Wayne Gretzky aba0You miss 100% of the shots you donb4t takea0bb = 11 tokens

  • La Charte OpenAI = 476 tokens

  • La De9claration db4inde9pendance des c9tats-Unis = 1a0695 tokens

Comment les nombres de tokens sont calcule9s

Lorsque vous envoyez du texte e0 lb4API:

  1. Le texte est de9coupe9 en tokens.

  2. Le mode8le traite ces tokens.

  3. La re9ponse est ge9ne9re9e sous forme db4une se9quence de tokens, puis reconvertie en texte.

Lb4utilisation des tokens est suivie dans plusieurs cate9gories:

  • Tokens db4entre9e b7 tokens de votre requeate.

  • Tokens de sortie b7 tokens ge9ne9re9s dans la re9ponse.

  • Tokens en cache b7 tokens re9utilise9s dans lb4historique de conversation (souvent facture9s e0 un tarif re9duit).

  • Tokens de raisonnement b7 dans certains mode8les avance9s, des aba0e9tapes de re9flexiona0bb supple9mentaires sont ajoute9es en interne avant de produire la sortie finale.

Ces de9comptes apparaissent dans les me9tadonne9es de la re9ponse de lb4API et servent e0 la facturation et au suivi db4utilisation.

Pour explorer davantage la tokenisation, vous pouvez utiliser notre outil Tokenizer interactif, qui permet de calculer le nombre de tokens et de voir comment un texte est de9coupe9 en tokens.
a0
Alternativement, si vous souhaitez tokeniser du texte de manie8re programmatique, utilisez Tiktoken, un tokenizer BPE rapide spe9cialement utilise9 pour les mode8les OpenAI.

Limites de tokens

Chaque mode8le a une limite maximale de tokens combine9s (entre9e + sortie). Les mode8les actuels e0 grande capacite9 prennent en charge jusqub4e0 des centaines de milliers de tokens de contexte, meame si les limites pratiques peuvent varier selon la version du mode8le et votre niveau db4usage.

Si vous de9passez la limite, vous pouvez:

  • Raccourcir ou reformuler les prompts.

  • De9couper un grand texte en plus petits blocs.

  • Re9sumer ou pre9-traiter les entre9es avant de les envoyer.

Tarification des tokens

Lb4utilisation de lb4API est facture9e au token, selon le mode8le et selon que les tokens sont en entre9e, en sortie ou en cache. Consultez la page de tarification db4OpenAI pour les tarifs actuels. Certains mode8les de raisonnement peuvent utiliser davantage de tokens en interne, mais visent e0 ame9liorer lb4efficacite9 en re9duisant le nombre de tokens ne9cessaires pour mener e0 bien une te2che.

Explorer les tokens

Lb4API traite les mots en fonction de leur contexte dans les donne9es du corpus. Les mode8les prennent le prompt, convertissent lb4entre9e en liste de tokens, traitent le prompt, puis reconvertissent les tokens pre9dits en mots tels que nous les voyons dans la re9ponse.

Ce qui peut nous sembler eatre deux mots identiques peut eatre ge9ne9re9 sous forme de tokens diffe9rents selon la manie8re dont ils sont structure9s dans le texte. Voyez comment lb4API ge9ne8re des valeurs de tokens pour le mot aba0reda0bb selon son contexte dans le texte:

Sentence split into color-coded tokens with Text selected over Token IDs
Token ID output as a list of integers with the Token IDs tab selected

Dans le premier exemple ci-dessus, le token aba02266a0bb pour aba0 reda0bb inclut un espace final (remarque: il sb4agit db4ID de tokens donne9s e0 titre db4exemple, e0 des fins de de9monstration).

Sentence split into color-coded token blocks: My favorite color is Red.
Tokenizer output with Token IDs selected and a list of numeric token IDs

Le token aba02296a0bb pour aba0 Reda0bb (avec un espace au de9but et une majuscule) est diffe9rent du token aba02266a0bb pour aba0 reda0bb avec une minuscule.

Tokenizer example splitting “Red is my favorite color.” into color-coded tokens
Tokenizer output with Token IDs selected and a list of token ID numbers

Lorsque aba0Reda0bb est utilise9 en de9but de phrase, le token ge9ne9re9 nb4inclut pas db4espace au de9but. Le token aba07738a0bb est diffe9rent des deux exemples pre9ce9dents du mot.

Observations:

Plus un token est probable/fre9quent, plus le nume9ro de token qui lui est attribue9 est faible:

  • Le token ge9ne9re9 pour le point est le meame (aba013a0bb) dans les 3 phrases. En effet, dans le corpus, le point est utilise9 db4une manie8re assez similaire, quel que soit le contexte.

  • Le token ge9ne9re9 pour aba0reda0bb varie selon sa place dans la phrase:

    • Minuscule au milieu db4une phrase: aba0 reda0bb - (token: aba02266a0bb)

    • Majuscule au milieu db4une phrase: aba0 Reda0bb - (token: aba02297a0bb)

    • Majuscule en de9but de phrase: aba0Reda0bb - (token: aba07738a0bb)

Cet article vous a-t-il été utile ?