Tool overview
Qu'est-ce que Compteur de Tokens LLM ?
Compteur de Tokens LLM est un outil qui vous aide à compter les tokens avec carte de limites colorée.
Pourquoi utiliser Compteur de Tokens LLM ?
Il améliore la lisibilité et accélère votre flux lorsque vous devez compter les tokens avec carte de limites colorée, sans envoi de données vers un serveur.
Fonctionnalités clés
Confidentialité côté client, résultats instantanés et copie en un clic pour compteur de Tokens LLM. Compter les tokens avec carte de limites colorée
Mode d'emploi
Suivez ces étapes pour obtenir des résultats précis avec l'outil ci-dessus.
- Collez le texte exact envoyé au modèle : prompt système, message utilisateur, JSON d'outils ou bloc RAG concaténé.
- Comparez les trois cartes d'encodage — o200k_base pour GPT-4o, cl100k_base pour GPT-4 / approximation Claude, p50k_base pour Codex legacy.
- Ouvrez la carte des limites de jetons et survolez les spans pour voir les Token IDs ; changez l'encodage de la carte selon le modèle.
- Cliquez Minify JSON pour les schémas et payloads d'outils, ou Strip Spaces pour la prose remplie, puis recomptez.
- Saisissez le volume mensuel estimé pour projeter le coût d'entrée GPT-4o, GPT-4o mini et Claude 3.5 Sonnet.
- Copiez les métriques multi-encodage dans votre doc de conception, ticket ou PR pour un budget partagé.
- Itérez : retirez d'abord le few-shot ou la section de schéma la plus coûteuse, recomptez, et gardez 10–20 % de marge pour les wrappers chat.
- Pour les stacks d'agents, allez dans AI Agent Builder pour assembler tools + MCP + prompt et revérifier le budget combiné.
Compteur de jetons LLM — guide complet et cas d'usage
Guide autoritatif : encodages, budgétisation pas à pas, cas réels, correctifs de dépassement, carte des limites et notes de prix — utilisable avec le cockpit ci-dessus.
Guide du compteur de jetons LLM — commencez ici
Cette page est le guide canonique pour compter les jetons LLM dans le navigateur avec DevUtilities. Utilisez le Prompt Budget Cockpit interactif ci-dessus pendant la lecture, ou sautez à un sujet ci-dessous. Tout s'exécute côté client via js-tiktoken — les prompts ne quittent jamais votre machine.
Ce que fait le Prompt Budget Cockpit
Le LLM Token Counter (Prompt Budget Cockpit) tokenise le texte avec les mêmes tables BPE qu'OpenAI livre dans tiktoken. Il compare trois encodages côte à côte, visualise les limites de jetons, estime le coût d'entrée pour GPT-4o, GPT-4o mini et Claude 3.5 Sonnet, et vous aide à réduire les prompts avant qu'ils n'atteignent une API de production.
Ce que vous obtenez
- Comptes concurrents pour o200k_base (GPT-4o), cl100k_base (approximation GPT-4 / Claude) et p50k_base (Codex historique)
- Carte des limites de jetons colorée avec Token IDs au survol
- Actions Minify JSON et Strip Spaces pour alléger le prompt
- Extrapolations de coût par requête et mensuelles à partir de tarifs d'entrée publiés statiques
- Métriques multi-encodage copiables pour docs de conception et revues de budget
Utilisez cet outil lorsque
- Vous devez savoir si un system prompt + tools + message utilisateur tient dans une fenêtre de contexte
- Vous comparez des budgets de jetons GPT-4o vs style Claude avant de choisir un modèle
- Vous voulez un compte local et privé sans appeler les APIs OpenAI ou Anthropic
- Vous réduisez des chunks RAG, des exemples few-shot ou des schémas JSON qui gonflent le coût
N'attendez pas
- Une facturation Claude octet pour octet — Anthropic utilise un autre tokeniseur de production ; cl100k_base est une approximation utile en anglais
- La surcharge d'enveloppe de chat (balises de rôle, enveloppes d'outils) que les APIs ajoutent autour du texte brut
- Des prix de marché en direct — le panneau de coût utilise des tarifs publiés statiques qui peuvent dériver
o200k vs cl100k vs p50k — choisir le bon encodage
Les Token IDs sont spécifiques à l'encodage. La même phrase anglaise peut produire des longueurs et des IDs différents sous o200k_base vs cl100k_base. Budgétez toujours avec l'encodage réellement utilisé par votre modèle cible.
Encodages comparés dans cet espace de travail
| Encodage | Modèles typiques | Quand l'utiliser ici |
|---|---|---|
| o200k_base | GPT-4o, GPT-4o mini | Par défaut pour le chat OpenAI moderne et les cartes de coût de la famille GPT-4o |
| cl100k_base | GPT-4, GPT-4 Turbo, GPT-3.5 Turbo ; approximation Claude | Budgets de chat OpenAI historiques et estimations Claude anglaises approximatives |
| p50k_base | Codex historique / anciens modèles de completion | Comparaisons historiques et pipelines de completion plus anciens |
Changez l'encodage de la Token Boundary Map indépendamment des cartes de comparaison lorsque vous devez inspecter les fusions pour une famille de modèles précise.
Pas à pas : compter, optimiser et copier un budget
Suivez ce parcours la première fois que vous ouvrez le cockpit. Ensuite, la plupart des sessions sont coller → comparer → optimiser → copier.
- Collez le payload de prompt complet qui vous intéresse : message système, tour utilisateur, JSON d'outils ou un bloc de contexte RAG concaténé.
- Lisez les trois cartes de comparaison. Notez quel encodage est le plus élevé — c'est votre budget conservateur si vous devez encore choisir un modèle.
- Ouvrez la Token Boundary Map et survolez les spans qui semblent étonnamment longs (URLs, emoji, JSON indenté) pour voir des Token IDs concrets.
- Si l'entrée est dense en JSON, cliquez Minify JSON. Si c'est de la prose avec doubles espaces ou retours à la ligne rembourrés, cliquez Strip Spaces.
- Saisissez votre volume mensuel estimé d'appels pour projeter la dépense d'entrée GPT-4o, GPT-4o mini et Claude 3.5 Sonnet.
- Copiez le résumé des métriques dans un doc de conception, un ticket ou une description de PR pour que l'équipe partage un seul chiffre.
À quoi ressemble un « bon » résultat
- System + tools + tour utilisateur moyen laissent de la marge pour la réponse du modèle dans la fenêtre de contexte choisie
- Les schémas JSON sont minifiés dans les prompts de production même si les humains éditent des copies joliment formatées
- Les extrapolations de coût utilisent l'encodage qui correspond au modèle facturé
Cas d'usage : arrêter le dépassement du prompt système
Problème : un prompt d'agent support se tronque en milieu de conversation après l'ajout de politiques, de règles de ton et de trois exemples few-shot.
Comment cet outil le résout
- Collez le system prompt actuel seul et notez le compte o200k_base (ou cl100k_base).
- Ajoutez chaque exemple few-shot un par un et notez le delta — supprimez d'abord l'exemple le moins utile.
- Collez un message utilisateur représentatif et le JSON d'outils envoyé à chaque appel ; additionnez les pièces face à la fenêtre de contexte de votre modèle.
- Utilisez Strip Spaces sur la prose et Minify JSON sur les schémas, puis recomptez pour quantifier les économies.
- Copiez le budget final dans le runbook de l'agent pour que les futures éditions de prompt restent sous le même plafond.
Résultat : vous savez exactement quelle section a fait exploser le budget et combien de jetons chaque optimisation a récupérés — avant une autre troncature en production.
Cas d'usage : réduire les jetons des schémas d'outils OpenAI
Problème : les schémas de function-calling OpenAI sont rédigés avec indentation pour la lisibilité, puis collés dans des requêtes live. La dépense en jetons grimpe alors que le schéma logique n'a pas changé.
Comment cet outil le résout
- Collez le tableau tools ou l'objet parameters joliment formaté dans le panneau d'entrée.
- Notez le compte de jetons sur l'encodage utilisé par votre modèle d'API (souvent o200k_base pour GPT-4o).
- Cliquez Minify JSON et comparez le nouveau compte — la différence est une pure taxe d'espaces blancs.
- Inspectez la boundary map : les clés répétées et les longues listes enum dominent souvent ; raccourcissez les descriptions avant de couper des champs.
- Expédiez le schéma minifié dans les appels API ; gardez la copie jolie uniquement dans le contrôle de version ou l'éditeur Agent Builder.
Résultat : un coût d'entrée plus bas sur chaque appel avec outils sans changer le comportement des outils.
Cas d'usage : prévoir le coût mensuel d'entrée LLM
Problème : la finance demande une estimation mensuelle de dépense LLM avant le lancement d'une fonctionnalité qui appellera le modèle des milliers de fois.
Comment cet outil le résout
- Construisez un payload moyen réaliste (system + tools + texte utilisateur typique) et collez-le ici.
- Confirmez la carte de comparaison pour l'encodage qui correspond à votre modèle de production.
- Réglez Estimated monthly volume sur votre nombre d'appels projeté.
- Lisez les colonnes mensuelles GPT-4o, GPT-4o mini et Claude 3.5 Sonnet pour comparer les fournisseurs sur le même payload.
- Documentez que les tarifs sont des prix d'entrée publiés statiques — rafraîchissez l'estimation quand les fournisseurs changent leurs pages de prix.
Résultat : une prévision défendable et spécifique au payload au lieu d'une vague conjecture « les jetons sont bon marché ».
Cas d'usage : dimensionner les chunks RAG avec un budget dur
Problème : un pipeline RAG récupère cinq chunks par requête. Certains sont surtout des espaces ou des en-têtes boilerplate, et le modèle rate encore la réponse parce que le texte utile a été tronqué.
Comment cet outil le résout
- Collez chaque chunk candidat séparément et notez les comptes sous l'encodage de votre modèle de retrieval.
- Préférez des chunks plus denses : Strip Spaces, retirez les en-têtes de navigation répétés et supprimez les paragraphes quasi-dupliqués.
- Concaténez l'ensemble top-k que vous prévoyez d'envoyer et vérifiez que le total laisse encore de la place pour la question et la réponse.
- Utilisez la boundary map pour repérer les séquences coûteuses pour le tokeniseur (URLs longues, tableaux, emoji) qui paraissent courtes aux humains.
- Fixez un budget dur de jetons par requête dans votre retriever à partir des totaux mesurés avec cet outil.
Résultat : la retrieval emballe plus de signal par jeton et échoue moins souvent à cause d'une troncature silencieuse de contexte.
Correctif : context_length_exceeded et troncature silencieuse
Symptômes : API 400 context_length_exceeded, completions tronquées, ou agents qui « oublient » les instructions précoces en milieu de session.
Pourquoi cela arrive
Le system prompt, les tools, l'historique et le tour utilisateur combinés dépassent la fenêtre de contexte du modèle. Le JSON joliment formaté et les longs banques few-shot sont des coupables silencieux fréquents.
Diagnostiquer
Collez le payload exact envoyé par votre client (ou reconstruisez-le). Comparez le total de jetons à la fenêtre de contexte listée pour votre modèle. Identifiez les plus grandes sections en les comptant isolément.
Correctifs
- Minify JSON les schémas d'outils et retirez l'excès d'espaces blancs de la prose.
- Déplacez les politiques rarement utilisées vers une retrieval à la demande au lieu du system prompt toujours actif.
- Plafonnez l'historique de chat (résumez ou supprimez les tours les plus anciens) avant chaque appel.
- Passez à un modèle à plus grand contexte seulement après mesure — ne devinez pas.
Recomptez après chaque changement. Une coupe de 10 % d'espaces sur un blob d'outils de 8k jetons récupère souvent plus de marge que la suppression d'un court paragraphe de politique.
Correctif : les comptes locaux divergent de l'usage API
Symptômes : les comptes locaux semblent corrects, mais les tableaux de bord d'usage OpenAI divergent — ou Claude facture différemment de votre feuille de calcul.
Pourquoi cela arrive
Vous avez budgété avec le mauvais encodage, ou vous avez comparé du texte brut à une API qui enveloppe les messages avec des enveloppes de rôle et d'outils.
Diagnostiquer
Confirmez le tokeniseur documenté du modèle. Pour la famille GPT-4o utilisez o200k_base ; pour GPT-4 / 3.5 utilisez cl100k_base. Traitez les chiffres Claude ici uniquement comme des approximations.
Correctifs
- Basculez le focus de comparaison et la boundary map vers l'encodage correspondant.
- Comptez les messages sérialisés que votre SDK envoie réellement, pas seulement le brouillon de prompt lisible.
- Ajoutez un petit tampon de surcharge (souvent de quelques dizaines à quelques centaines de jetons) pour le formatage de chat lors de la planification de limites dures.
- Pour la facturation Anthropic, validez les prompts critiques avec le compteur d'Anthropic avant de figer des SLAs.
Correctif : JSON indenté et lignes vides gonflent les jetons
Symptômes : le compte de jetons chute dramatiquement après Minify JSON ou Strip Spaces sans changement sémantique du prompt.
Pourquoi cela arrive
Les encodages BPE facturent les retours à la ligne d'indentation, les espaces d'alignement et les lignes vides répétées. Les humains les ignorent ; les tokeniseurs non.
Diagnostiquer
Collez le payload joli, notez le compte, lancez Minify JSON / Strip Spaces et comparez. De grands deltas signifient que les espaces blancs étaient un moteur de coût principal.
Correctifs
- Stockez le JSON joli éditable par les humains dans git ; minifiez au moment de la requête.
- Évitez de rembourrer des diagrammes ASCII ou d'énormes logs indentés dans les system prompts.
- Effondrez les séparateurs de section à plusieurs lignes vides dans les longs documents de politique.
La boundary map rend les jetons d'espaces visibles comme des spans colorés séparés — utile pour enseigner à l'équipe pourquoi minifier compte.
Lire la carte des limites de jetons
La Token Boundary Map peint chaque fusion BPE comme un span coloré. Les couleurs cyclent uniquement pour la séparation visuelle — elles n'encodent pas de catégories de jetons.
Comment la lire
- Survolez un span pour révéler son Token ID numérique pour l'encodage de carte sélectionné
- De longs spans ininterrompus sur des URLs ou du base64 signifient souvent des chunks coûteux d'un ou de peu de jetons à raccourcir
- Les emoji et le texte CJK peuvent utiliser plus de jetons que la prose latine de même longueur visuelle
- Changez l'encodage de la carte en comparant comment GPT-4o vs GPT-4 segmenteraient la même chaîne
Fonctionnement de l'estimateur de coût
Les cartes de coût multiplient les comptes locaux de jetons par des tarifs d'entrée publiés statiques : GPT-4o $5 / 1M, GPT-4o mini $0.15 / 1M, Claude 3.5 Sonnet $3 / 1M. Le volume mensuel met à l'échelle le coût par requête.
Mises en garde
- Les jetons de sortie ne sont pas inclus — ajoutez des estimations de completion séparément pour le TCO complet
- Les remises d'input en cache ou par lots ne sont pas modélisées
- Les prix catalogue des fournisseurs changent ; traitez les chiffres comme des aides à la planification, pas des factures
Bonnes pratiques de budget de jetons
- Budgétez avec l'encodage qui correspond à la production, puis gardez une marge de sécurité de 10–20 % pour les wrappers de chat et les retries
- Comptez la forme complète de la requête (system + tools + historique + utilisateur), pas seulement le system prompt
- Minifiez le JSON consommé par les machines ; gardez des copies jolies pour les humains
- Relancez les comptes dès que vous ajoutez des exemples few-shot, des configs MCP ou de longs appendices de politique
- Utilisez des projections de volume mensuel dans les revues de conception pour que le coût soit visible avant le lancement
- Préférez le comptage local pour les prompts propriétaires — cet outil n'uploade jamais votre texte
Référence tokeniseur et jetons spéciaux
Les couleurs de limite correspondent aux encodages byte-pair de tiktoken. Les jetons spéciaux comme <|endoftext|> sont comptés lorsqu'ils sont présents comme texte littéral.
Référence tokeniseur et jetons spéciaux
| Type de champ | Payload d'exemple | Règle structurelle |
|---|---|---|
| cl100k_base | GPT-4, GPT-4 Turbo, Claude 3 | Encodage de chat OpenAI par défaut ; ~4 caractères par jeton pour la prose anglaise ; fusionne les espaces blancs au-delà des limites de mots. |
| o200k_base | GPT-4o, GPT-4o mini | Encodage à vocabulaire élargi pour les modèles omni ; les Token IDs diffèrent de cl100k_base pour des chaînes identiques. |
| <|endoftext|> | <|endoftext|> | Jeton de contrôle réservé marquant les limites de document dans les corpus d'entraînement GPT ; compte comme un seul jeton lorsqu'il est littéral. |
| Unicode emoji | 🚀 | Souvent 1–3 jetons selon l'encodage ; les graphèmes multi-points de code peuvent se diviser en plusieurs fusions BPE. |
| JSON whitespace | {\n "key": "value"\n} | Les retours à la ligne et espaces d'indentation consomment des jetons — minifiez les payloads JSON avant de compter l'usage de contexte. |
Foire aux questions
Réponses aux problèmes courants et questions de confidentialité.
Outils associés
Découvrez d'autres utilitaires associés qui complètent cet outil.
Documentation officielle et références
Spécifications et documentation de plateforme pour cet utilitaire.