Passer au contenu principal
Claude Messages Count Tokens API peut calculer le nombre de tokens d’une message d’entrée sans réellement créer de message, y compris le comptage des tokens pour des outils, images et documents. Cela est très utile pour estimer les coûts ou vérifier si l’entrée dépasse les limites de contexte du modèle. Ce document présente principalement le processus d’utilisation de Claude Messages Count Tokens API.

Processus de demande

Pour utiliser Claude Messages Count Tokens API, vous pouvez d’abord vous rendre sur la page Claude Messages Count Tokens API et cliquer sur le bouton « Acquire » pour obtenir les informations d’identification nécessaires à la demande. Si vous n’êtes pas encore connecté ou inscrit, vous serez automatiquement redirigé vers la page de connexion vous invitant à vous inscrire et à vous connecter. Après vous être connecté ou inscrit, vous serez automatiquement renvoyé à la page actuelle. Cette API est entièrement gratuite, sans consommation de quota.

Utilisation de base

Le chemin de requête de Claude Messages Count Tokens API est /v1/messages/count_tokens, en accord avec l’API officielle d’Anthropic. Nous devons fournir au moins deux paramètres obligatoires :
  • model : choisissez le modèle Claude à utiliser, comme claude-sonnet-4-5-20250929, claude-opus-4-20250514, etc.
  • messages : tableau de messages d’entrée, chaque message contenant role (rôle) et content (contenu).
Paramètres optionnels courants :
  • system : message système, qui sera compté dans le nombre de tokens.
  • tools : définition des outils, qui sera comptée dans le nombre de tokens.
  • thinking : configuration de réflexion étendue.

Exemple cURL

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"
      }
    ]
  }'

Exemple Python

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())
Exemple de résultat retourné :
{
  "input_tokens": 11
}

Utilisation du SDK Anthropic

Claude Messages Count Tokens API est entièrement compatible avec le SDK officiel d’Anthropic, vous pouvez directement utiliser la bibliothèque anthropic pour l’appeler.
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)

Comptage des tokens incluant des outils

Si votre demande inclut des définitions d’outils, ces outils seront également comptés dans le nombre de tokens :
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)

Comptage des tokens incluant des messages système

Les messages système seront également comptés dans le nombre de tokens :
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)

Remarques

  • Cette API ne calcule que le nombre de tokens d’entrée, sans générer de sortie du modèle.
  • Les résultats du comptage des tokens peuvent être utilisés pour estimer le coût d’appel de l’API Claude Messages.
  • La façon de tokeniser peut varier selon les modèles, veuillez utiliser le même paramètre model que celui utilisé lors de l’appel réel.
  • Cette API est entièrement gratuite, sans consommation de quota.