Débutant
🧠 Fondamentaux
10 XP
0 personnes ont réussi
Compter les tokens avec tiktoken
Quand tu appelles l'API OpenAI, tu paies au token. Pas au mot, pas au caractere, au token. Un token c'est un bout de mot : 'bonjour' peut etre un seul token, mais 'anticonstitutionnellement' sera decoupe en plusieurs. Savoir compter les tokens, c'est savoir controler tes couts et eviter les mauvaises surprises sur la facture.
La bibliotheque tiktoken permet de compter les tokens exactement comme le fait OpenAI. Voici comment l'utiliser :
import tiktoken
encodeur = tiktoken.encoding_for_model('gpt-4o-mini') tokens = encodeur.encode('Bonjour le monde') nombre = len(tokens)
La méthode encode() retourne une liste de nombres entiers (les identifiants des tokens). Pour compter, il suffit de prendre la longueur de cette liste avec len().
Écris une fonction compter_tokens(texte, modèle='gpt-4o-mini') qui retourne le nombre de tokens dans le texte pour le modèle donne.
Exemple : compter_tokens('Bonjour') retourne un entier (le nombre de tokens) compter_tokens('') retourne 0
Tests (1/1)
Tests
import tiktoken
assert compter_tokens('') == 0, 'Un texte vide doit donner 0 tokens'
assert compter_tokens('Bonjour') > 0, 'Un mot doit donner au moins 1 token'
assert isinstance(compter_tokens('test'), int), 'Doit retourner un entier'
enc = tiktoken.encoding_for_model('gpt-4o-mini')
attendu = len(enc.encode('Bonjour le monde'))
assert compter_tokens('Bonjour le monde') == attendu, 'Le compte de tokens doit correspondre a tiktoken'
long_texte = 'Python est un langage de programmation tres populaire dans le monde entier.'
assert compter_tokens(long_texte) > 5, 'Un texte long doit avoir plusieurs tokens'