Hoppa till huvudinnehåll
Claude Messages Count Tokens API kan räkna antalet inmatningstokens för ett meddelande utan att faktiskt skapa meddelandet, inklusive verktyg, bilder och dokument. Detta är mycket användbart när man behöver uppskatta kostnader eller kontrollera om inmatningen överskrider modellens kontextgränser. Detta dokument beskriver huvudsakligen användningsprocessen för Claude Messages Count Tokens API.

Ansökningsprocess

För att använda Claude Messages Count Tokens API kan du först gå till Claude Messages Count Tokens API sidan och klicka på “Acquire”-knappen för att få de nödvändiga autentiseringsuppgifterna. Om du inte är inloggad eller registrerad kommer du automatiskt att omdirigeras till inloggningssidan för att registrera dig och logga in. Efter att du har loggat in eller registrerat dig kommer du automatiskt att återvända till den aktuella sidan. Denna API är helt gratis att använda och förbrukar ingen kvot.

Grundläggande Användning

Begärningsvägen för Claude Messages Count Tokens API är /v1/messages/count_tokens, vilket är i linje med Anthropic officiella API. Vi behöver minst tillhandahålla två obligatoriska parametrar:
  • model: Välj den Claude-modell som ska användas, som claude-sonnet-4-5-20250929, claude-opus-4-20250514 etc.
  • messages: Inmatningsmeddelandearray, där varje meddelande innehåller role (roll) och content (innehåll).
Vanliga valfria parametrar:
  • system: Systemprompt, som räknas med i tokenantalet.
  • tools: Verktygsdefinition, som räknas med i tokenantalet.
  • thinking: Utökad tänkande konfiguration.

cURL Exempel

curl -X POST 'https://api.acedata.cloud/v1/messages/count_tokens' \
  -H 'accept: application/json' \
  -H 'authorization: Bearer {token}' \
  -H 'content-type: application/json' \
  -d '{
    "model": "claude-sonnet-4-5-20250929",
    "messages": [
      {
        "role": "user",
        "content": "Hello, Claude"
      }
    ]
  }'

Python Exempel

import httpx

url = "https://api.acedata.cloud/v1/messages/count_tokens"
headers = {
    "accept": "application/json",
    "authorization": "Bearer {token}",
    "content-type": "application/json",
}
payload = {
    "model": "claude-sonnet-4-5-20250929",
    "messages": [
        {
            "role": "user",
            "content": "Hello, Claude"
        }
    ],
}
response = httpx.post(url, headers=headers, json=payload)
print(response.json())
Exempel på returresultat:
{
  "input_tokens": 11
}

Användning av Anthropic SDK

Claude Messages Count Tokens API är helt kompatibel med Anthropic officiella SDK och kan direkt använda anthropic-biblioteket för att anropa.
from anthropic import Anthropic

client = Anthropic(
    api_key="{token}",
    base_url="https://api.acedata.cloud",
)

result = client.messages.count_tokens(
    model="claude-sonnet-4-5-20250929",
    messages=[
        {
            "role": "user",
            "content": "Hello, Claude"
        }
    ],
)
print(result.input_tokens)

Tokenräkning med Verktyg

Om din begäran innehåller verktygsdefinitioner kommer dessa verktyg också att räknas med i tokenantalet:
result = client.messages.count_tokens(
    model="claude-sonnet-4-5-20250929",
    messages=[
        {
            "role": "user",
            "content": "What is the weather in San Francisco?"
        }
    ],
    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"]
            }
        }
    ],
)
print(result.input_tokens)

Tokenräkning med Systemprompt

Systemprompten kommer också att räknas med i tokenantalet:
result = client.messages.count_tokens(
    model="claude-sonnet-4-5-20250929",
    system="You are a helpful assistant that speaks Chinese.",
    messages=[
        {
            "role": "user",
            "content": "Hello"
        }
    ],
)
print(result.input_tokens)

Viktiga Punkter

  • Denna API räknar endast antalet inmatningstokens och genererar ingen modellutdata.
  • Tokenräkningsresultatet kan användas för att uppskatta kostnaden för att anropa Claude Messages API.
  • Tokenisering kan variera mellan olika modeller, så använd samma model-parameter som vid faktisk anrop.
  • Denna API är helt gratis och förbrukar ingen kvot.