O que são tokens?
Tokens são os componentes básicos do texto processado pelos modelos da OpenAI. Eles podem ser tão curtos quanto um único caractere ou tão longos quanto uma palavra inteira, dependendo do idioma e do contexto. Espaços, pontuação e partes de palavras contribuem para a contagem de tokens. É assim que a API segmenta internamente seu texto antes de gerar uma resposta.
Regras práticas úteis para o inglês:
1 token ≈ 4 caracteres
1 token ≈ ¾ de uma palavra
100 tokens ≈ 75 palavras
1–2 frases ≈ 30 tokens
1 parágrafo ≈ 100 tokens
~1.500 palavras ≈ 2.048 tokens
A tokenização varia conforme o modelo e a codificação. Use a ferramenta Tokenizer ou tiktoken.encoding_for_model(model) para obter a contagem exata do modelo desejado.
Exemplos
Veja algumas amostras de textos reais com suas contagens aproximadas de tokens:
A frase de Wayne Gretzky "Você erra 100% dos arremessos que não faz" = 11 tokens
A Carta da OpenAI = 476 tokens
A Declaração de Independência dos EUA = 1.695 tokens
Como as contagens de tokens são calculadas
Quando você envia um texto à API:
O texto é dividido em tokens.
O modelo processa esses tokens.
A resposta é gerada como uma sequência de tokens e depois convertida novamente em texto.
O uso de tokens é monitorado em várias categorias:
Tokens de entrada – tokens da sua solicitação.
Tokens de saída – tokens gerados na resposta.
Tokens em cache – tokens reutilizados do histórico da conversa (geralmente cobrados por uma tarifa reduzida).
Tokens de raciocínio – em alguns modelos avançados, "etapas de pensamento" extras são incluídas internamente antes da geração da saída final.
Essas contagens aparecem nos metadados da resposta da API e são usadas para cobrança e monitoramento do uso.
Para explorar melhor a tokenização, use nossa ferramenta interativa Tokenizer, que permite calcular o número de tokens e ver como o texto é dividido em tokens.
Como alternativa, para tokenizar texto por meio de programação, use o Tiktoken, um tokenizador BPE rápido usado especificamente para modelos da OpenAI.
Limites de tokens
Cada modelo tem um limite máximo combinado de tokens (entrada + saída). Os modelos atuais de alta capacidade comportam até centenas de milhares de tokens no contexto, embora os limites práticos possam variar conforme a versão do modelo e seu nível de uso.
Se você exceder o limite, poderá:
Encurtar ou reformular prompts.
Dividir textos grandes em partes menores.
Resumir ou pré-processar as entradas antes do envio.
Preços por token
O uso da API é cobrado por token, com valores que variam conforme o modelo e se os tokens são de entrada, saída ou cache. Consulte a página de preços da OpenAI para ver as tarifas atuais. Alguns modelos de raciocínio podem usar mais tokens internamente, mas buscam aumentar a eficiência reduzindo o número de tokens necessários por tarefa concluída.
Os tokens não são padronizados entre modelos ou provedores de IA. Modelos diferentes podem processar ou gerar o mesmo texto usando quantidades distintas de tokens. Por isso, um preço anunciado menor por milhão de tokens não significa necessariamente um custo total menor.
A extensão visível da resposta também não conta toda a história. Alguns modelos usam tokens de raciocínio internamente antes de produzir uma resposta. Portanto, uma resposta visível mais longa não significa necessariamente que o modelo usou mais tokens no total.
Ao comparar modelos, considere o número total de tokens necessários e o custo por resultado bem-sucedido. Os benchmarks podem ser um ponto de partida útil, mas testar os modelos em seus próprios casos de uso é a melhor maneira de entender o custo e o desempenho reais.
Como os tokens funcionam
A API trata as palavras de acordo com o contexto delas nos dados do corpus. Os modelos recebem o prompt, convertem a entrada em uma lista de tokens, processam o prompt e convertem os tokens previstos de volta nas palavras que vemos na resposta.
Duas palavras que parecem idênticas para nós podem ser convertidas em tokens diferentes, dependendo de como estão estruturadas no texto. Veja como a API gera valores de token para a palavra "red" com base no contexto dela no texto:
No primeiro exemplo acima, o token "2266" para " red" inclui um espaço à direita (observação: esses IDs de token são exemplos usados para fins de demonstração).
O token "2296" para " Red" (com um espaço à esquerda e começando com letra maiúscula) é diferente do token "2266" para " red", com letra minúscula.
Quando "Red" é usado no início de uma frase, o token gerado não inclui um espaço à esquerda. O token "7738" é diferente dos dois exemplos anteriores da palavra.
Observações:
Quanto mais provável ou frequente for um token, menor será o número atribuído a ele:
O token gerado para o ponto final é o mesmo ("13") nas três frases. Isso ocorre porque, considerando o contexto, o ponto final é usado de maneira bastante semelhante em todo o corpus.
O token gerado para "red" varia conforme sua posição na frase:
Minúscula no meio de uma frase: " red" – (token: "2266")
Maiúscula no meio de uma frase: " Red" – (token: "2297")
Maiúscula no início de uma frase: "Red" – (token: "7738")
