A contagem de tokens permite que você determine o número de tokens em uma mensagem antes de enviá-la para Claude, ajudando você a tomar decisões informadas sobre seus prompts e uso. Com a contagem de tokens, você pode
This feature is eligible for Zero Data Retention (ZDR). When your organization has a ZDR arrangement, data sent through this feature is not stored after the API response is returned.
O endpoint de contagem de tokens aceita a mesma lista estruturada de entradas para criar uma mensagem, incluindo suporte para prompts de sistema, ferramentas, imagens e PDFs. A resposta contém o número total de tokens de entrada.
A contagem de tokens deve ser considerada uma estimativa. Em alguns casos, o número real de tokens de entrada usados ao criar uma mensagem pode diferir por uma pequena quantidade.
As contagens de tokens podem incluir tokens adicionados automaticamente pela Anthropic para otimizações do sistema. Você não é cobrado por tokens adicionados pelo sistema. A cobrança reflete apenas seu conteúdo.
Todos os modelos ativos suportam contagem de tokens.
client = anthropic.Anthropic()
response = client.messages.count_tokens(
model="claude-opus-4-7",
system="You are a scientist",
messages=[{"role": "user", "content": "Hello, Claude"}],
)
print(response.json()){ "input_tokens": 14 }As contagens de tokens de ferramentas de servidor se aplicam apenas à primeira chamada de amostragem.
client = anthropic.Anthropic()
response = client.messages.count_tokens(
model="claude-opus-4-7",
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-4-7",
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 }Veja como a janela de contexto é calculada com pensamento estendido para mais detalhes
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 }A contagem de tokens suporta PDFs com as mesmas limitações que a API de Mensagens.
import base64
import anthropic
client = anthropic.Anthropic()
with open("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-4-7",
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 }A contagem de tokens é gratuita, mas sujeita aos limites de taxa de requisições por minuto com base em seu nível de uso. Se você precisar de limites mais altos, entre em contato com vendas através do Claude Console.
| Nível de uso | Requisições por minuto (RPM) |
|---|---|
| 1 | 100 |
| 2 | 2.000 |
| 3 | 4.000 |
| 4 | 8.000 |
A contagem de tokens e a criação de mensagens têm limites de taxa separados e independentes. O uso de um não conta contra os limites do outro.
Was this page helpful?