Pular para o conteúdo
Cadastre-se grátis
Uso de modelos

O que é max_tokens? O que acontece se eu não defini-lo?

Entenda max_tokens, max_completion_tokens e max_output_tokens e saiba como definir o limite de tokens de saída nas chamadas de modelo. Para seu projeto.

Resposta curta

max_tokens limita quantos tokens o modelo pode gerar em uma resposta. APIs e modelos diferentes usam nomes de campos, requisitos e comportamentos padrão distintos.

Para obter uma saída estável, defina um limite explícito em respostas longas, geração de código e tarefas de documentação. Em chamadas Claude / compatíveis com Anthropic, geralmente é necessário enviar max_tokens explicitamente.

Conceitos principais

ConceitoSignificado
Tokens de entradaSuas mensagens, contexto, conteúdo de arquivos, resultados de ferramentas e outras entradas
Tokens de saídaResposta visível gerada pelo modelo
Tokens de raciocínioTokens ocultos usados internamente por alguns modelos de raciocínio
Janela de contextoLimite compartilhado pela entrada, saída e alguns tokens internos
Limite de saídaMáximo de saída visível gerada em uma resposta

Se o limite for pequeno demais, a resposta poderá ser cortada. Se for muito grande, o modelo não gerará necessariamente todos esses tokens, mas tarefas com saídas longas podem custar mais.

Nomes de parâmetros diferentes

ParâmetroUso comum
max_tokensClaude / Anthropic Messages API e algumas configurações de Chat Completions
max_completion_tokensAlguns modelos de raciocínio da OpenAI via Chat Completions
max_output_tokensCampo comum de limite na OpenAI Responses API

Se você usa o Codex CLI ou outra ferramenta baseada na Responses API, use o campo aceito pela ferramenta ou pelo provedor. Não fixe o mesmo nome de parâmetro para todos os modelos.

O que acontece se você não definir o limite

O comportamento varia conforme o provedor e a API:

CenárioResultado possível
API Claude / compatível com AnthropicPode exigir um valor explícito de max_tokens
Chat Completions compatível com OpenAIPode usar o comportamento padrão do modelo
OpenAI Responses APIPode usar max_output_tokens ou o padrão da ferramenta
Outros modelosPodem ter limites padrão próprios

O mesmo código pode produzir respostas de tamanhos diferentes após a troca de modelo. Para evitar surpresas em produção, defina um limite explícito.

Faixas recomendadas

TarefaFaixa sugerida
Perguntas gerais1024 - 4096
Explicação de código / pequenas edições4096 - 8192
Textos longos / programação complexa8192 ou mais, conforme o limite do modelo
Tarefas em loteUse um limite menor para evitar respostas inesperadamente longas

Consulte o limite real na model plaza e na documentação upstream. Os limites de saída podem mudar entre versões.

O que fazer quando a saída é cortada

Se a resposta contiver finish_reason: "length", o modelo provavelmente atingiu o limite de saída.

Verifique nesta ordem:

  1. Aumente o campo de limite aceito pela API atual.
  2. Confirme que usou o nome de parâmetro correto.
  3. Torne o prompt mais específico para reduzir conteúdo desnecessário.
  4. Use um modelo com uma janela de saída maior.
  5. Divida a tarefa em várias etapas.

Erros comuns

  • Achar que um valor maior de max_tokens sempre faz o modelo escrever mais.
  • Tentar novamente após um corte sem conferir finish_reason.
  • Usar um nome de campo antigo com um modelo de raciocínio.
  • Ignorar tokens ocultos de raciocínio ao estimar contexto e custo.
  • Ignorar o limite máximo de saída do próprio modelo.

Sobre a BetterToken

A BetterToken registra o uso por API Key e solicitação de modelo. Use o painel para acompanhar o consumo de tokens entre modelos e tarefas.

O campo de limite ainda é determinado pelo formato da API e pelo modelo. Ao configurá-lo, verifique em conjunto o modelo, a Base URL, o formato da API e o nome do parâmetro.

Documentos relacionados