Zum Hauptinhalt springen
Claude Messages Count Tokens API kann die Anzahl der Eingabe-Token einer Nachricht berechnen, ohne tatsächlich Nachrichten zu erstellen, einschließlich der Token-Zählung von Werkzeugen, Bildern und Dokumenten. Dies ist besonders nützlich, wenn man die Kosten abschätzen oder überprüfen möchte, ob die Eingabe die Kontextgrenze des Modells überschreitet. Dieses Dokument beschreibt hauptsächlich den Ablauf zur Nutzung der Claude Messages Count Tokens API.

Antragsprozess

Um die Claude Messages Count Tokens API zu nutzen, kann man zunächst die Seite Claude Messages Count Tokens API besuchen und auf die Schaltfläche „Acquire“ klicken, um die benötigten Anmeldeinformationen zu erhalten. Wenn Sie noch nicht angemeldet oder registriert sind, werden Sie automatisch zur Anmeldeseite weitergeleitet, um sich zu registrieren und anzumelden. Nach der Anmeldung werden Sie automatisch zur aktuellen Seite zurückgeleitet. Diese API ist vollständig kostenlos und verbraucht kein Kontingent.

Grundlegende Nutzung

Der Anfragepfad der Claude Messages Count Tokens API lautet /v1/messages/count_tokens und bleibt mit der offiziellen Anthropic API konsistent. Wir müssen mindestens zwei erforderliche Parameter bereitstellen:
  • model: Wählen Sie das zu verwendende Claude-Modell, wie claude-sonnet-4-5-20250929, claude-opus-4-20250514 usw.
  • messages: Eingabemeldungsarray, jede Nachricht enthält role (Rolle) und content (Inhalt).
Häufig verwendete optionale Parameter:
  • system: Systemaufforderung, die in die Token-Zahl einfließt.
  • tools: Werkzeugdefinition, die in die Token-Zahl einfließt.
  • thinking: Erweiterte Denk-Konfiguration.

cURL Beispiel

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 Beispiel

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())
Beispiel für das Rückgabeergebnis:
{
  "input_tokens": 11
}

Verwendung des Anthropic SDK

Die Claude Messages Count Tokens API ist vollständig kompatibel mit dem offiziellen Anthropic SDK und kann direkt mit der anthropic-Bibliothek aufgerufen werden.
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)

Token-Zählung mit Werkzeugen

Wenn Ihre Anfrage Werkzeugdefinitionen enthält, werden diese Werkzeuge ebenfalls in die Token-Zahl einbezogen:
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)

Token-Zählung mit Systemaufforderungen

Systemaufforderungen fließen ebenfalls in die Token-Zahl ein:
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)

Hinweise

  • Diese API berechnet nur die Anzahl der Eingabe-Token und erzeugt keine Modell-Ausgaben.
  • Die Token-Zählergebnisse können zur Kostenschätzung für die Nutzung der Claude Messages API verwendet werden.
  • Die Tokenisierung kann je nach Modell unterschiedlich sein, verwenden Sie den gleichen model-Parameter wie bei der tatsächlichen Verwendung.
  • Diese API ist vollständig kostenlos und verbraucht kein Kontingent.