Le comptage de tokens vous permet de déterminer le nombre de tokens dans un message avant de l'envoyer à Claude. Cela vous aide à prendre des décisions éclairées concernant vos prompts et votre utilisation. Avec le comptage de tokens, vous pouvez :
Le point de terminaison de comptage de tokens accepte la même liste structurée d'entrées que pour la création d'un message, y compris la prise en charge des invites système, des outils, des images et des PDF. La réponse contient le nombre total de tokens d'entrée.
Tous les modèles actifs prennent en charge le comptage de tokens, y compris Claude Opus 5 et Claude Sonnet 5.
client = anthropic.Anthropic()
response = client.messages.count_tokens(
model="claude-opus-5",
system="You are a scientist",
messages=[{"role": "user", "content": "Hello, Claude"}],
)
print(response.json()){ "input_tokens": 14 }client = anthropic.Anthropic()
response = client.messages.count_tokens(
model="claude-opus-5",
tools=[
{
"name": "get_weather",
"description": "Get the current weather in a given location",
"input_schema": {
"type": "object",
"properties": {
"location": {
"type": "string",
"description": "The city and state, e.g. San Francisco, CA",
}
},
"required": ["location"],
},
}
],
messages=[{"role": "user", "content": "What's the weather like in San Francisco?"}],
)
print(response.json()){ "input_tokens": 403 }import base64
import httpx
image_url = "https://upload.wikimedia.org/wikipedia/commons/a/a7/Camponotus_flavomarginatus_ant.jpg"
image_media_type = "image/jpeg"
image_data = base64.standard_b64encode(httpx.get(image_url).content).decode("utf-8")
client = anthropic.Anthropic()
response = client.messages.count_tokens(
model="claude-opus-5",
messages=[
{
"role": "user",
"content": [
{
"type": "image",
"source": {
"type": "base64",
"media_type": image_media_type,
"data": image_data,
},
},
{"type": "text", "text": "Describe this image"},
],
}
],
)
print(response.json()){ "input_tokens": 1551 }client = anthropic.Anthropic()
response = client.messages.count_tokens(
model="claude-sonnet-4-6",
thinking={"type": "enabled", "budget_tokens": 16000},
messages=[
{
"role": "user",
"content": "Are there an infinite number of prime numbers such that n mod 4 == 3?",
},
{
"role": "assistant",
"content": [
{
"type": "thinking",
"thinking": "This is a nice number theory question. Let's think about it step by step...",
"signature": "EuYBCkQYAiJAgCs1le6/Pol5Z4/JMomVOouGrWdhYNsH3ukzUECbB6iWrSQtsQuRHJID6lWV...",
},
{
"type": "text",
"text": "Yes, there are infinitely many prime numbers p such that p mod 4 = 3...",
},
],
},
{"role": "user", "content": "Can you write a formal proof?"},
],
)
print(response.json()){ "input_tokens": 88 }import base64
import anthropic
client = anthropic.Anthropic()
with open("/path/to/document.pdf", "rb") as pdf_file:
pdf_base64 = base64.standard_b64encode(pdf_file.read()).decode("utf-8")
response = client.messages.count_tokens(
model="claude-opus-5",
messages=[
{
"role": "user",
"content": [
{
"type": "document",
"source": {
"type": "base64",
"media_type": "application/pdf",
"data": pdf_base64,
},
},
{"type": "text", "text": "Please summarize this document."},
],
}
],
)
print(response.json()){ "input_tokens": 2188 }Claude Fable 5 et Claude Mythos 5 utilisent le tokenizer introduit avec Claude Opus 4.7, qui produit environ 30 pour cent de tokens en plus que les modèles antérieurs à Claude Opus 4.7 pour le même texte. L'augmentation exacte dépend du contenu et de la forme de la charge de travail. Le point de terminaison de comptage de tokens renvoie le comptage selon le tokenizer du model que vous transmettez ; pour mesurer la différence pour votre charge de travail, comptez donc la même requête deux fois : une fois avec votre modèle actuel et une fois avec model: "claude-fable-5" (ou "claude-mythos-5"), puis comparez les deux valeurs input_tokens.
Le comptage de tokens est gratuit mais soumis à des limites de débit en requêtes par minute basées sur votre niveau d'utilisation. Si vous avez besoin de limites plus élevées, utilisez Request rate limit increase sur la page Limits.
| Niveau d'utilisation | Requêtes par minute (RPM) |
|---|---|
| Start | 2 000 |
| Build | 4 000 |
| Scale | 8 000 |
Consultez la référence API complète du point de terminaison de comptage de tokens.
Utilisez les comptages de tokens pour maintenir les prompts dans la fenêtre de contexte d'un modèle.
Vérifiez les comptages de tokens avant d'envoyer une requête pour rester dans votre niveau d'utilisation.
Réduisez les coûts et la latence sur les prompts répétés en mettant en cache les préfixes de prompt.
Was this page helpful?