Tokens de IA e palavras: meça o pedido antes de estimar custos
Um token é uma unidade de um tokenizador específico, não um número fixo de palavras ou caracteres. Para texto exato, use o tokenizador e as definições correspondentes. Num pedido completo, inclua estrutura e ferramentas e compare com a utilização devolvida.
Neste guia
Contar palavras ajuda a verificar a extensão de um artigo, mas não determina com rigor contexto nem custo de um pedido de IA. O mesmo texto pode ser dividido de formas diferentes e o pedido inclui mais do que a última mensagem.
Separe texto simples, pedido completo e consumo faturado. O exemplo local e a folha de medição não inventam contagens exatas para um modelo que não foi executado.
Distinga palavras, caracteres Unicode e tokens
Uma palavra pode tornar-se um token, vários fragmentos ou unidades com pontuação e espaços. Existem métodos por palavras, caracteres e subpalavras. Idioma, código, escrita, espaços e vocabulário influenciam a divisão.
A contagem Unicode responde a outra questão. Um carácter pode exigir várias unidades de código ou bytes, e um símbolo visível vários pontos de código. Não existe conversão universal para tokens; uma proporção aproxima apenas uma amostra identificada.
| Tarefa | Medição útil | Limitação |
|---|---|---|
| Verificar extensão de artigo | Palavras ou caracteres Unicode | Não determina tokens do modelo |
| Medir texto num tokenizador | Identificadores de tokens e respetivas definições | Pode excluir formato de conversa e estrutura adicional |
| Estimar um pedido API estruturado | Contagem oficial ou formato exato | Pode diferir da utilização final |
| Conferir faturação | Campos reais de utilização e regras atuais | Não estima pedidos de outro fornecedor |
Conte uma amostra local com o tokenizador certo
No formato Hugging Face, carregue o tokenizer.json correto e codifique um ficheiro UTF-8. Registe modelo, revisão do tokenizador, versão do pacote e inclusão de tokens especiais. O exemplo usa tokenizers 0.23.2, sem preenchimento, truncagem nem tokens especiais adicionados.
Obtenha o ficheiro na distribuição oficial do modelo. O código não descarrega o modelo, envia texto ou reproduz uma API de conversa completa. O resultado só serve se tokenizador e definições corresponderem à pergunta medida.
# Example environment: tokenizers==0.23.2
from pathlib import Path
from importlib.metadata import version
from tokenizers import Tokenizer
# Use the matching tokenizer.json already saved locally.
tokenizer = Tokenizer.from_file("tokenizer.json")
tokenizer.no_padding()
tokenizer.no_truncation()
text = Path("sample.txt").read_text(encoding="utf-8")
encoded = tokenizer.encode(text, add_special_tokens=False)
print("tokenizers version:", version("tokenizers"))
print("raw-text tokens:", len(encoded.ids))
# Record tokenizer identity/revision separately.
# This is not a complete chat-request or billing count.Inclua todo o pedido ao planear contexto
Uma conversa pode acrescentar instruções, histórico, passagens recuperadas, ferramentas e formatação à última mensagem. Modelos de conversa inserem tokens de controlo entre papéis e mensagens; contar apenas o parágrafo final subestima a entrada.
Use a contagem oficial quando existir e suportar os tipos de entrada. Ferramentas, imagens e documentos podem ter limites de estimativa ou exigir utilização real. Não envie credenciais nem dados sensíveis para contadores desconhecidos: um processo local e uma API remota tratam os dados de formas diferentes.
Crie uma folha de comparação reproduzível
Escolha mensagens habituais, código, tabelas e passagens de cada idioma usado. Preserve os bytes exatos para não alterar quebras, pontuação e espaços entre execuções.
Registe identificador, revisão, tokens especiais, contagem simples e estimativa completa quando disponível. Deixe valores por medir em vez de adivinhar. Diferenças entre tokenizadores descrevem as amostras, não a qualidade linguística.
| Amostra | Tokenizador e revisão | Contagem de texto simples | Contagem ou estimativa completa |
|---|---|---|---|
| Mensagem de apoio | Registar identificador exato | Medir localmente | Medir com formato de pedido suportado |
| Trecho de código | Registar identificador exato | Medir localmente | Medir com formato de pedido suportado |
| Passagem noutro idioma | Registar identificador exato | Medir localmente | Medir com formato de pedido suportado |
Reserve saída antes de acrescentar entrada
No exemplo hipotético, um contexto combinado de 32,000 reserva 4,000 para saída e 2,000 de margem. Restam 26,000 para entrada medida. Se instruções, histórico e ferramentas ocupam 8,000, sobram 18,000 para conteúdo recuperado.
Não é uma especificação atual de um modelo. Contexto, saída, raciocínio e ferramentas podem ter definições diferentes. Confira as regras atuais e introduza valores reais no cálculo. Caber no limite não torna todas as passagens úteis.
Hypothetical planning budget:
32,000 combined context
− 4,000 output reserve
− 2,000 planning buffer
= 26,000 input budget
26,000 − 8,000 instructions/history/tools
= 18,000 available for retrieved contentCompare estimativa, utilização e custo
Após um teste pequeno, guarde a utilização devolvida e compare-a com a estimativa do mesmo pedido. Separe entrada em cache, saída, raciocínio e outras categorias documentadas. Uma ferramenta omitida não se corrige mudando a proporção palavras-tokens.
Calcule custos com contagens reais e preços atuais que fornecer. Separe entrada e saída e mantenha unidades, como preço por milhão. Um orçamento reproduzível depende de uso medido e tarifas declaradas, não de uma conversão universal de palavras.
Perguntas frequentes
Um token corresponde sempre a quatro caracteres?
Não. É apenas uma aproximação para alguns textos e tokenizadores. Idioma, código, pontuação, espaços e conceção alteram o resultado.
Porque difere a contagem local da utilização API?
O pedido pode incluir formatação, instruções, histórico, ferramentas e outros tipos de entrada. Tokenizador e definições também podem diferir. Compare o pedido completo e as regras do fornecedor.
O contador de palavras deste site mede tokens exatos?
Não. Mede palavras e caracteres Unicode. Use um tokenizador correspondente ou método oficial de contagem e depois calcule custo e contexto com esses dados.
Fontes e definições
- Hugging Face LLM Course: Tokenizers
- Claude Platform: Token counting
- Hugging Face tokenizers 0.23.2: published Python package and API examples
- Hugging Face Transformers: Chat templates
Método conferido: