Contagem de token
Entenda e estime o uso de fichas em modelos de texto, visão e áudio.
Os tons são a unidade fundamental de faturamento e gerenciamento de contexto para modelos de texto e visão. QwenCloud. Entender como os tokens são contados ajuda a estimar custos, ficar dentro dos limites de contexto, e otimizar seus alertas. Modelos de geração de áudio e imagem usam diferentes unidades de faturamento (segundos, personagens ou imagens) - este guia cobre esses também.
Tokens de texto
Modelos de texto timbram entrada e saída em unidades de sub-palavra. Uma regra dura: 1 token .4 caracteres em inglês ou 1 token .1.5 caracteres chineses . A contagem exata depende do tokenizer e vocabulário.
Leia o uso de fichas das respostas da API.
Cada resposta de geração de texto inclui uma usage objeto com a contagem exata de fichas:
{
"usage": {
"prompt_tokens": 34,
"completion_tokens": 89,
"total_tokens": 123
}
}
Ao usar [cache de contexto] (/developer-guides/run-and-scale/context-cache), detalhes adicionais estão disponíveis:
{
"usage": {
"prompt_tokens": 1520,
"completion_tokens": 85,
"total_tokens": 1605,
"prompt_tokens_details": {
"cached_tokens": 1480,
"cache_creation_input_tokens": 0
}
}
}
Ao usar [modo racional] (/developer-guides/text-generation/thinking), a resposta inclui símbolos de raciocínio:
{
"usage": {
"prompt_tokens": 50,
"completion_tokens": 300,
"total_tokens": 350,
"completion_tokens_details": {
"reasoning_tokens": 245
}
}
}
Raciocínios de fichas contam para completion_tokens e são faturados na taxa de saída. Eles podem aumentar significativamente o uso total de fichas para tarefas complexas de raciocínio.
Estimar fichas antes de enviar um pedido
Para estimar a conta antes de fazer uma chamada API, use o tokenizer diretamente. Qwen Modelos usam um tokenizador compatível com tiktoken:
# pip install tiktoken
import tiktoken
# Use the Qwen tokenizer
encoding = tiktoken.get_encoding("o200k_base")
tokens = encoding.encode("Your prompt text here")
print(f"Token count: {len(tokens)}")
Estimativa de token é útil para manter dentro de janelas de contexto e custos de orçamento. Para contar exatamente, sempre confie no usage campo na resposta da API.
Vision tokens
Modelos de visão (Qwen-VL Converte imagens e quadros de vídeo em fichas ao lado de texto. A contagem de fichas depende da resolução da imagem.
Fórmula de símbolo de imagem
image_tokens = ceil(height / 28) × ceil(width / 28) / 4 + 2
Onde:
- A imagem é redimensionada para caber dentro
max_pixels(padrão: 1003520 pixels) mantendo a proporção de aspecto, com dimensões arredondadas para o múltiplo mais próximo de 28 / 4A fusão de 2x2 pixels no codificador de visão+ 2acrescenta o<vision_bos>e<vision_eos>Tokens especiais
Uma imagem de 1024x1024 (1008/28) × (1008/28) / 4 + 2 = **326 fichas **.
Estimar fichas de imagem em Python
import math
def estimate_image_tokens(width, height, max_pixels=1003520, min_pixels=3136):
"""Estimate token count for an image in Qwen vision models."""
# Resize to fit within pixel budget
total_pixels = width * height
if total_pixels > max_pixels:
scale = math.sqrt(max_pixels / total_pixels)
width = int(width * scale)
height = int(height * scale)
# Round to nearest multiple of 28
width = max(28, round(width / 28) * 28)
height = max(28, round(height / 28) * 28)
# Calculate tokens
return (height // 28) * (width // 28) // 4 + 2
# Examples
print(estimate_image_tokens(1024, 1024)) # ~326 tokens
print(estimate_image_tokens(1920, 1080)) # ~326 tokens
print(estimate_image_tokens(4096, 4096)) # ~326 tokens (resized down)
Modo de alta resolução.
Activar vl_high_resolution_images para processar imagens com maior fidelidade (28x28 pixels por bloco de fichas em vez da taxa de efeito padrão). Isso aumenta a contagem de fichas - até 16.384 fichas por imagem - mas melhora o reconhecimento de detalhes para tarefas como OCR ou leitura de texto pequeno.
Video tokens
Entradas de vídeo são amostradas como quadros individuais, cada um tokenizado usando a mesma fórmula de imagem. A contagem total de fichas de vídeo é igual à soma de fichas em todos os quadros amostrados. A taxa de amostragem depende do modelo e duração do vídeo.
Unidades de faturamento de áudio
APIs de áudio não usam fichas. Em vez disso, eles cobram por duração ou número de personagens:
| API | Unidade de faturamento | Detalhes |
|---|---|---|
| Discurso-a-texto (ASS) | Segundos de áudio | Contado por segundo de áudio de entrada |
| Texto-para-fala (TTS) | Personagens | Contado por personagem de texto de entrada |
| Speech-to-speech | Segundos de áudio | Varias por modelo |
Respostas ASR e TTS não incluem uma usage.prompt_tokens Campo. Verifique o [Prece] (/developer-guides/getting-started/pricing) página para as taxas atuais por unidade.
A geração de imagens e vídeos faturando
APIs de geração de imagens e vídeos também não usam fichas.
| API | Unidade de faturamento | Detalhes |
|---|---|---|
| Geração de imagens | Por imagem | Cada imagem gerada é cobrada individualmente. Para a maioria dos modelos, isso é independente da resolução. qwen-image-3.0 série o preço de saída é nivelado por resolução e as imagens de entrada são faturadas separadamente |
| Geração de vídeo | Por segundo de vídeo | Contado pela duração e resolução do vídeo de saída. |
As respostas da API da geração de imagens incluem a contagem de imagens na usage Campo, não conta fichas. A maioria dos modelos retornam. image_count, e input_tokens / output_tokens Pode aparecer como 0. O qwen-image-3.0 Em vez disso, a série retorna. input_image_count, output_image_countE o input_image_type / output_image_type - Contando níveis.
Estimativa de custos
Para estimar o custo de uma chamada de API de texto/visão:
cost = (input_tokens × input_price_per_token) + (output_tokens × output_price_per_token)
Onde fichas em cache são cobradas a uma taxa reduzida (10% para cache explícito, 20% para cache implícito). Veja [Pricing] (/developer-guides/getting-started/pricing) para taxas por modelo e [Otimização de custo] (/developer-guides/run-and-scale/cost-optimization) para estratégias para reduzir os gastos.
Limites de janela de contexto
Cada modelo tem uma janela de contexto máxima que limita o total de fichas de entrada:
| Modelo | Max tokens de entrada. | Max tokens de saída |
|---|---|---|
| qwen3.8-max | 1M | 131K |
| qwen3.8-flash | 1M | 128K |
| qwen3.7-max | 1M | 64K |
| qwen3.7-plus | 1M | 64K |
| qwen3.5-flash | 1M | 64K |
Quando sua entrada se aproxima do limite de contexto, considere:
- Aparando história de conversa em [conversas multi-turnos] (/developer-guides/run-and-scale/multi-turn)
- Usando [cache de contexto] (/developer-guides/run-and-scale/context-cache(não reduz a contagem de fichas, mas reduz o custo e a latência)
- Resumindo o contexto antigo em uma mensagem condensada do sistema
Próximos passos
- [Pricing] (/developer-guides/getting-started/pricing Taxas de fichas por modelo e detalhes de faturamento
- [Otimização de custo] (/developer-guides/run-and-scale/cost-optimization- Reduzir o uso de fichas e gastos
- [Cache de contexto] (/developer-guides/run-and-scale/context-cacheCache repetiu prefixos de prompt para menor custo e latência
- [Compreensão da visão] (/developer-guides/multimodal/vision) — Cálculo detalhado de imagem e vídeo