Voltar ao blog

Otimização de custosAnálise

Quantos tokens uma requisição de API usa? Medido em 3 tarefas

Números reais de uso do DeepSeek-V4-Flash: uma pergunta curta, um resumo de parágrafo e e-mail para JSON, com o custo de 1.000 requisições e um script para seus próprios prompts.

Por CheapTokens TeamPublicado em Atualizado em 6 min de leitura

Card mostrando o campo usage de uma resposta de API: prompt_tokens 23, completion_tokens 87, total_tokens 110
Nesta página
  1. Uma pergunta rápida
  2. Um resumo, e os tokens que você não lê
  3. Um e-mail entra, JSON limpo sai
  4. As três lado a lado
  5. Teste com seus próprios prompts
  6. Por onde começar

Pergunte quanto custa uma requisição a uma API de IA e você normalmente vai ouvir "depende". Depende, mas você não consegue planejar um orçamento com base nisso. Então pegamos três tarefas do dia a dia, enviamos para o DeepSeek-V4-Flash pela API da CheapTokens em 23 de outubro de 2026 e anotamos o que o campo usage dizia a cada vez.

A versão curta: uma pergunta rápida deu 110 tokens, um resumo de parágrafo deu 396, e transformar um e-mail em JSON deu 299. Abaixo está como cada requisição ficou, o que voltou e quanto custa.

Uma pergunta rápida#

Começamos com algo que as pessoas perguntam a assistentes de chat o tempo todo: a diferença entre git merge e git rebase, em duas ou três frases.

Animação: uma pergunta sobre git merge e git rebase vai para o DeepSeek-V4-Flash, aparece uma resposta de três frases, depois a linha de uso: 23 tokens de prompt, 87 tokens de conclusão, 110 no total
A requisição e a resposta reais, 23 de outubro de 2026

A pergunta consumiu 23 tokens, a resposta 87. Essa é a primeira coisa que vale notar: a resposta é quase quatro vezes mais longa que a pergunta, e a saída é o lado que custa mais, no MiniMax-M2.7 agora é $0.15 por 1M de tokens de saída contra $0.05 de entrada. Com esses preços, uma requisição como essa custa $0.000014. Mil delas, $0.0142.

Aqui está essa requisição exata, caso você queira ver os números na sua própria tela:

bash
curl https://api.cheaptokens.dev/v1/chat/completions \
  -H "Authorization: Bearer $CHEAPTOKENS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "MiniMaxAI/MiniMax-M2.7",
    "messages": [
      {"role": "user", "content": "What is the difference between git merge and git rebase? Answer in two or three sentences."}
    ],
    "max_tokens": 2048,
    "temperature": 0.2
  }'

As contagens ficam no bloco usage no final da resposta: prompt_tokens é o que você enviou, completion_tokens é o que o modelo escreveu, total_tokens é os dois juntos.

Um resumo, e os tokens que você não lê#

Segunda tarefa: reduzir um relatório de incidente curto a duas frases. Equipes rodam esse tipo de coisa por um modelo o dia inteiro: tickets, relatórios, threads de e-mail longas. Aqui está o prompt:

text
Summarize this incident report in two sentences.

On Tuesday between 14:05 and 14:50 UTC the checkout API returned errors for about 6% of requests. The cause was a configuration change deployed at 13:58 that lowered the database connection pool from 50 to 5 connections per instance. Under normal load nobody noticed, but when the afternoon traffic peak arrived, requests queued for a free connection and timed out after 30 seconds. The on-call engineer saw the growing p99 latency at 14:12, found the change in the deploy log at 14:31 and rolled it back at 14:44. To prevent a repeat, the pool size is now validated in CI against a minimum value, and an alert fires when more than 20 requests wait for a connection for two minutes.

E a resposta:

Na terça-feira, uma mudança de configuração que reduziu o pool de conexões do banco de dados de 50 para 5 causou erros na API de checkout em cerca de 6% das requisições durante o pico da tarde, até ser revertida às 14:44. Para evitar recorrência, o tamanho do pool agora é validado no CI e um alerta é disparado quando os tempos de espera por conexão ultrapassam os limites.

Duas frases, 331 caracteres e 146 tokens de saída. Pareceu muito para tão pouco texto, e a resposta explicou por quê: usage tinha mais um campo, reasoning_tokens: 76. Antes de responder, o modelo gastou 76 tokens pensando. Eles fazem parte dos 146 (250 de entrada + 146 de saída = 396 no total), então cerca de metade da saída foi para raciocínio que não faz parte do texto da resposta, e é cobrado como qualquer outro token de saída.

Bom saber ao planejar um orçamento: em tarefas em que o modelo para para pensar, a saída pode ser bem maior que o texto que você recebe. Mil resumos como esse custam $0.0344.

Um e-mail entra, JSON limpo sai#

Terceira tarefa: uma confirmação de pedido que precisa virar um registro de banco de dados.

Animação: um e-mail de pedido à esquerda, e à direita o JSON que o DeepSeek-V4-Flash extraiu dele: id do pedido, itens, preços, frete, total, transportadora, número de rastreio e data de entrega; uso: 199 tokens de prompt e 100 de conclusão
O e-mail que enviamos e o JSON que voltou, formatado para leitura

O modelo retornou exatamente as chaves que pedimos e nada em volta delas, nenhum "Aqui está seu JSON". O total bate com o e-mail, e a data de entrega voltou como 2026-11-03, já no formato que pedimos. 199 tokens de entrada, 100 de saída.

O que chama atenção é a densidade: 100 tokens para 276 caracteres de JSON, enquanto a resposta sobre git consumiu 87 tokens para 421 caracteres de texto simples. Aspas, chaves e vírgulas também são tokens, então saída estruturada custa mais por caractere que prosa. Mil e-mails como esse: $0.025.

As três lado a lado#

Tarefa Tokens de entrada Tokens de saída 1.000 requisições
Pergunta rápida 23 87 $0.0142
Resumo 250 146 $0.0344
E-mail para JSON 199 100 $0.025

Os custos são calculados a partir dessas contagens de tokens com o preço atual do MiniMax-M2.7, então continuam corretos quando os preços mudam.

Para onde vai o dinheiro em 1.000 requisições: entrada vs saída
  • Resumo: saída$0.0219
  • E-mail para JSON: saída$0.015
  • Pergunta rápida: saída$0.0131
  • Resumo: entrada$0.0125
  • E-mail para JSON: entrada$0.01
  • Pergunta rápida: entrada$0.0012

A saída vence em todas as tarefas, até no resumo, em que enviamos mais do que recebemos de volta. Então a alavanca mais fácil na sua conta é o tamanho da resposta: "em duas ou três frases" ou "retorne apenas JSON" fazem trabalho de verdade.

Para dar escala: um bot de suporte que responde 2.000 perguntas rápidas por dia, cada uma como a primeira, gasta cerca de $0.852 por mês no MiniMax-M2.7. Um chat real reenvia seu histórico a cada turno, então a entrada cresce a cada mensagem, mas para perguntas avulsas essa é a conta inteira.

Teste com seus próprios prompts#

Seus prompts vão dar números diferentes, e leva um minuto para descobrir. Este script envia cada prompt, ignora respostas que foram cortadas e imprime os tokens e o custo de 1.000 requisições:

python
import os
from openai import OpenAI

client = OpenAI(base_url="https://api.cheaptokens.dev/v1", api_key=os.environ["CHEAPTOKENS_API_KEY"])

MODEL = "MiniMaxAI/MiniMax-M2.7"
PRICE_IN, PRICE_OUT = 1.00, 4.00  # USD per 1M tokens: example values, use the current ones from the price list

PROMPTS = [
    "What is the difference between git merge and git rebase? Answer in two or three sentences.",
    # add your own prompts here
]

for prompt in PROMPTS:
    r = client.chat.completions.create(
        model=MODEL,
        messages=[{"role": "user", "content": prompt}],
        max_tokens=2048,
        temperature=0.2,
    )
    if r.choices[0].finish_reason != "stop":
        print("cut off at max_tokens, raise the limit:", prompt[:40])
        continue
    tin, tout = r.usage.prompt_tokens, r.usage.completion_tokens
    per_1000 = (tin * PRICE_IN + tout * PRICE_OUT) * 1000 / 1_000_000
    print(f"{tin} in, {tout} out, 1,000 requests = ${per_1000:.4f} | {prompt[:40]}")

Coloque os preços atuais em PRICE_IN e PRICE_OUT: para o MiniMax-M2.7 são $0.05 por 1M de tokens de entrada e $0.15 por 1M de tokens de saída. O primeiro prompt é o do nosso teste; as contagens de tokens variam um pouco entre modelos, então espere números na mesma faixa de 23 de entrada e 87 de saída. Você vai precisar do pacote openai (pip install openai) e da sua chave em CHEAPTOKENS_API_KEY.

Se algum número parecer estranho: finish_reason: length significa que a resposta atingiu max_tokens (por que as respostas param no meio da frase); um reasoning_tokens grande explica uma saída maior que o texto; e a fórmula completa dos preços de entrada e saída está em tokens de entrada vs saída.

Por onde começar#

No total, com entrada e saída contadas juntas, o MiniMax-M2.7 na CheapTokens é mais barato que o preço de referência do OpenRouter para as três tarefas acima. Ele tem contexto de 180K, respostas de até 8.192 tokens e um preço único a qualquer hora. Recarregue seu saldo, crie uma chave e envie a requisição curl do topo desta página: a documentação cobre a chave e a URL base, a página do DeepSeek tem o catálogo de modelos, e preços tem a lista de preços atualizada.