Подсчет токенов позволяет вам определить количество токенов в сообщении перед отправкой его в Claude, помогая принимать обоснованные решения о ваших промптах и использовании. С помощью подсчета токенов вы можете:
Эндпоинт подсчета токенов принимает тот же структурированный список входных данных для создания сообщения, включая поддержку системных промптов, инструментов, изображений и PDF. Ответ содержит общее количество входных токенов.
Количество токенов следует считать оценкой. В некоторых случаях фактическое количество входных токенов, используемых при создании сообщения, может отличаться на небольшое количество.
Количество токенов может включать токены, добавленные автоматически Anthropic для системных оптимизаций. Вы не платите за системные токены. Биллинг отражает только ваш контент.
Все активные модели поддерживают подсчет токенов.
import anthropic
client = anthropic.Anthropic()
response = client.messages.count_tokens(
model="claude-sonnet-4-5",
system="You are a scientist",
messages=[{
"role": "user",
"content": "Hello, Claude"
}],
)
print(response.json()){ "input_tokens": 14 }Количество токенов серверных инструментов применяется только к первому вызову выборки.
{ "input_tokens": 403 }{ "input_tokens": 1551 }См. здесь для получения более подробной информации о том, как рассчитывается контекстное окно с расширенным мышлением
{ "input_tokens": 88 }Подсчет токенов поддерживает PDF с теми же ограничениями, что и Messages API.
{ "input_tokens": 2188 }Подсчет токенов бесплатен для использования, но подлежит ограничениям запросов в минуту на основе вашего уровня использования. Если вам нужны более высокие лимиты, обратитесь в отдел продаж через Claude Console.
| Уровень использования | Запросов в минуту (RPM) |
|---|---|
| 1 | 100 |
| 2 | 2,000 |
| 3 | 4,000 |
| 4 | 8,000 |
Подсчет токенов и создание сообщений имеют отдельные и независимые ограничения скорости -- использование одного не засчитывается в лимиты другого.
import anthropic
client = anthropic.Anthropic()
response = client.messages.count_tokens(
model="claude-sonnet-4-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())#!/bin/sh
IMAGE_URL="https://upload.wikimedia.org/wikipedia/commons/a/a7/Camponotus_flavomarginatus_ant.jpg"
IMAGE_MEDIA_TYPE="image/jpeg"
IMAGE_BASE64=$(curl "$IMAGE_URL" | base64)
curl https://api.anthropic.com/v1/messages/count_tokens \
--header "x-api-key: $ANTHROPIC_API_KEY" \
--header "anthropic-version: 2023-06-01" \
--header "content-type: application/json" \
--data \
'{
"model": "claude-sonnet-4-5",
"messages": [
{"role": "user", "content": [
{"type": "image", "source": {
"type": "base64",
"media_type": "'$IMAGE_MEDIA_TYPE'",
"data": "'$IMAGE_BASE64'"
}},
{"type": "text", "text": "Describe this image"}
]}
]
}'curl https://api.anthropic.com/v1/messages/count_tokens \
--header "x-api-key: $ANTHROPIC_API_KEY" \
--header "content-type: application/json" \
--header "anthropic-version: 2023-06-01" \
--data '{
"model": "claude-sonnet-4-5",
"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. Lets 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?"
}
]
}'curl https://api.anthropic.com/v1/messages/count_tokens \
--header "x-api-key: $ANTHROPIC_API_KEY" \
--header "content-type: application/json" \
--header "anthropic-version: 2023-06-01" \
--data '{
"model": "claude-sonnet-4-5",
"messages": [{
"role": "user",
"content": [
{
"type": "document",
"source": {
"type": "base64",
"media_type": "application/pdf",
"data": "'$(base64 -i document.pdf)'"
}
},
{
"type": "text",
"text": "Please summarize this document."
}
]
}]
}'