Planification de l’IA / CLEARBYTE

Jetons d'IA et mots : mesurer la requête avant d'estimer son coût

Un jeton est une unité d'un tokenizer donné, pas un nombre fixe de mots ou caractères. Pour le texte exact, utilisez le tokenizer et ses réglages correspondants. Pour une requête complète, incluez structure et outils puis comparez à l'utilisation renvoyée.

Dans ce guide

Compter les mots vérifie la longueur d'un article, pas précisément le contexte ni le coût d'une requête d'IA. Le même texte peut être découpé différemment et la requête dépasse souvent le dernier message.

Distinguez texte brut, requête complète et usage facturé. L'exemple local et la feuille de mesure n'inventent aucun compte exact pour un modèle non exécuté.

Séparer mots, caractères Unicode et jetons

Un mot peut devenir un jeton, plusieurs fragments ou des unités incluant espaces et ponctuation. Les approches par mots, caractères et sous-mots diffèrent. Langue, code, orthographe, espaces et vocabulaire influencent le découpage.

Le compte Unicode répond à une autre question. Un caractère peut nécessiter plusieurs unités de code ou octets, et un symbole visible plusieurs points de code. Aucune conversion universelle vers les jetons n'existe ; un ratio ne fait qu'approcher un échantillon précisé.

Choisir la mesure selon la tâche
TâcheMesure utileLimite
Vérifier la longueur d'un articleMots ou caractères UnicodeNe détermine pas les jetons du modèle
Mesurer du texte avec un tokenizerIdentifiants de jetons et réglages associésPeut omettre format de discussion et structure supplémentaire
Estimer une requête API structuréeComptage officiel ou format exactPeut différer de l'usage final
Rapprocher la facturationChamps d'usage réels et règles actuellesN'estime pas la requête d'un autre fournisseur

Compter un échantillon local avec le bon tokenizer

Pour le format Hugging Face, chargez le bon tokenizer.json puis encodez un fichier UTF-8. Notez modèle, révision du fichier, version du paquet et jetons spéciaux. L'exemple utilise tokenizers 0.23.2, sans remplissage, troncature ni ajout de jetons spéciaux.

Prenez le fichier dans la distribution officielle du modèle. Le code ne télécharge pas de modèle, n'envoie pas le texte et ne reproduit pas une API conversationnelle complète. Le résultat n'est pertinent que si tokenizer et réglages correspondent à la question.

# Example environment: tokenizers==0.23.2
from pathlib import Path
from importlib.metadata import version
from tokenizers import Tokenizer

# Use the matching tokenizer.json already saved locally.
tokenizer = Tokenizer.from_file("tokenizer.json")
tokenizer.no_padding()
tokenizer.no_truncation()
text = Path("sample.txt").read_text(encoding="utf-8")
encoded = tokenizer.encode(text, add_special_tokens=False)
print("tokenizers version:", version("tokenizers"))
print("raw-text tokens:", len(encoded.ids))
# Record tokenizer identity/revision separately.
# This is not a complete chat-request or billing count.

Inclure toute la requête dans le contexte

Une conversation peut ajouter instructions, historique, passages récupérés, outils et formatage. Les modèles de discussion insèrent des jetons de contrôle entre rôles et messages ; ne compter que le dernier paragraphe sous-estime l'entrée.

Utilisez le comptage officiel lorsqu'il existe et prend en charge vos entrées. Outils, images et documents peuvent limiter l'estimation ou nécessiter l'usage réel. Ne confiez pas secrets ou données sensibles à des compteurs inconnus : méthode locale et API distante impliquent des traitements différents.

Établir une comparaison reproductible

Choisissez messages courants, code, tableau et texte de chaque langue utilisée. Conservez les octets exacts pour ne pas changer sauts de ligne, ponctuation ou espaces entre essais.

Notez identifiant, révision, jetons spéciaux, compte brut et estimation complète disponible. Laissez les valeurs non mesurées plutôt que deviner. Les différences décrivent ces échantillons, pas la qualité linguistique des tokenizers.

Feuille à remplir après exécution du tokenizer indiqué
ÉchantillonTokenizer et révisionCompte du texte brutCompte ou estimation de requête complète
Message d'assistanceNoter l'identifiant exactMesurer localementMesurer avec le format de requête pris en charge
Extrait de codeNoter l'identifiant exactMesurer localementMesurer avec le format de requête pris en charge
Passage dans une autre langueNoter l'identifiant exactMesurer localementMesurer avec le format de requête pris en charge

Réserver la sortie avant d'ajouter l'entrée

Dans l'exemple hypothétique, un contexte combiné de 32,000 réserve 4,000 à la sortie et 2,000 à une marge. Il reste 26,000 pour l'entrée mesurée. Si instructions, historique et outils prennent 8,000, le contenu récupéré dispose de 18,000.

Ces chiffres ne sont pas les caractéristiques actuelles d'un modèle. Contexte, sortie, raisonnement et outils peuvent être définis autrement. Vérifiez le contrat actuel et saisissez vos mesures. Tenir dans le contexte ne rend pas chaque passage utile.

Hypothetical planning budget:
32,000 combined context
− 4,000 output reserve
− 2,000 planning buffer
= 26,000 input budget

26,000 − 8,000 instructions/history/tools
= 18,000 available for retrieved content

Comparer estimation, usage et coût

Après un petit test, conservez l'usage renvoyé et comparez-le à l'estimation de la même requête. Séparez entrée en cache, sortie, raisonnement et catégories documentées. Changer un ratio mots-jetons ne répare pas une définition d'outil oubliée.

Calculez le coût avec les comptes réels et les tarifs actuels fournis. Séparez entrée et sortie et gardez les unités, par exemple par million. Un budget reproductible dépend de mesures et tarifs déclarés, pas d'une conversion universelle de mots.

Questions fréquentes

Un jeton vaut-il toujours quatre caractères ?

Non. C'est au mieux une approximation pour certains textes et tokenizers. Langue, code, ponctuation, espaces et conception influencent le résultat.

Pourquoi mon compte local diffère-t-il de l'usage API ?

La requête ajoute format, instructions, historique, outils et autres entrées. Tokenizer et réglages peuvent aussi différer. Comparez la même requête complète et les définitions du fournisseur.

Le compteur de mots du site donne-t-il les jetons exacts ?

Non. Il mesure mots et caractères Unicode. Utilisez un tokenizer correspondant ou le comptage officiel puis les outils de coût et contexte avec ces mesures.

Sources et définitions

Méthode vérifiée: