Uma resposta 429 de uma API de IA pode significar quatro coisas diferentes: muitas requisições por minuto, muitos tokens por minuto, muitas conexões simultâneas ou saldo da conta esgotado. Todas as quatro retornam o mesmo código de status, portanto, a solução depende de diagnosticar qual limite você realmente atingiu, e não apenas tentar novamente com mais frequência. Este guia detalha os modos de falha, mostra quais evidências estão (e não estão) disponíveis sobre os limites atuais e fornece um padrão de repetição (retry) e fallback que se sustenta em produção.
Principais Pontos
- Um
429pode significar um teto de requisições, orçamento de tokens, limite de concorrência ou saldo da conta esgotado. Cada um precisa de uma solução diferente, e tentativas de repetição genéricas resolvem apenas um dos quatro casos. - Leia os cabeçalhos de limite de taxa em respostas bem-sucedidas, não apenas após erros, e faça o controle de fluxo (throttle) antes de se aproximar do teto.
- A contagem de tokens no lado do cliente é uma estimativa, não uma garantia. Incompatibilidades de tokenizador entre sua biblioteca e a contagem real do provedor podem deixar uma margem de segurança mais estreita do que você imagina.
- Tetos exatos de RPM/TPM por modelo e nível não são publicados nas evidências disponíveis para este artigo. Trate qualquer número que você vir em outro lugar como algo a ser verificado no painel da sua própria conta, não como uma constante fixa.
- Repetições resilientes precisam de backoff exponencial, jitter, um número máximo de tentativas e respeito ao cabeçalho
retry-after. Nunca repita operações não idempotentes cegamente.
Entendendo a Limitação de Taxa em APIs de IA: Os Quatro Modos de Falha
Limites de requisição
A maioria dos provedores conta requisições por minuto (RPM). Exceda-o e você receberá um 429 instantâneo, geralmente com um corpo vazio. Um usuário navegando rapidamente por resultados ou um cron job disparando sem controle de fluxo são gatilhos comuns.
Limites de tokens
Esta é a armadilha que as equipes mais subestimam. Os provedores frequentemente impõem tokens por minuto (TPM) separadamente do RPM, então você pode atingir um 429 mesmo estando confortavelmente abaixo do seu teto de requisições. Modelos de contexto grande pioram isso: de acordo com as evidências de preços ao vivo do TokenLab (observadas em 07/07/2026), Claude Opus 4.8 e GPT-5.5 suportam aproximadamente 1.000.000+ tokens de contexto. Uma chamada que carrega um documento grande, uma base de código completa ou um longo histórico de chat nessa janela pode consumir uma grande parte do seu orçamento de tokens por minuto em uma única requisição, embora seja apenas "uma" requisição. Este é um risco de planejamento de capacidade baseado no tamanho da janela de contexto, não em uma contagem de tokens medida por chamada, portanto, valide o uso real em relação aos seus próprios logs em vez de assumir um valor fixo.
Limites de concorrência
Os provedores podem tolerar seu volume médio por minuto até o momento em que você abre cinquenta streams de uma vez. Os limites de concorrência restringem requisições ou conexões simultâneas em andamento. Respostas em streaming mantêm as conexões abertas por mais tempo, o que consome os slots de concorrência mais rapidamente do que chamadas curtas e únicas. Agentes de codificação construídos sobre Claude Sonnet 5 ou Kimi K2.7 Code, e interfaces de voz transmitindo a partir do Gemini 3.5 Flash, são gatilhos comuns porque mantêm muitas conexões de longa duração abertas ao mesmo tempo.
Esgotamento de cota ou saldo
Isso parece idêntico a um limite de taxa no seu painel: as chamadas param de funcionar. Mas a solução é diferente. Se sua conta ficar sem créditos pré-pagos ou atingir um limite rígido de gastos diários, a API retorna um erro que se assemelha a um limite de taxa. O backoff não faz nada aqui. Você precisa recarregar o saldo ou aumentar o limite de gastos.
Snapshot das Fontes
| Ponto de dados | Fonte | Observado em |
|---|---|---|
| Janelas de contexto do modelo e preços por token | Evidências de preços/modelos ao vivo do TokenLab | 07/07/2026 |
| Nomenclatura SSOT do modelo (Claude Sonnet 5, GPT-5.5, Gemini 3.5 Flash, etc.) | SSOT de modelos do TokenLab | 07/07/2026, expira em 14/07/2026 |
| Limites oficiais de nível RPM/TPM do provedor | Não disponível neste conjunto de evidências | Não verificado, verifique o painel da conta do provedor |
| Comportamento de normalização de cabeçalho do gateway TokenLab | Não disponível neste conjunto de evidências | Verifique na documentação da API do TokenLab antes de confiar em um esquema de cabeçalho único |
Janelas de Contexto e Preços dos Modelos Atuais (Evidências ao vivo do TokenLab)
Estes números vêm diretamente do snapshot de preços ao vivo do TokenLab. Eles não são limites de RPM ou TPM; eles mostram por que uma única chamada em um modelo de contexto grande pode consumir desproporcionalmente um orçamento de tokens.
| Modelo | Provedor | Janela de contexto | Entrada $/MTok | Saída $/MTok | Fonte | Observado |
|---|---|---|---|---|---|---|
| Claude Sonnet 5 | Anthropic | 1.000.000 | $2.00 | $10.00 | Evidências de preços ao vivo do TokenLab | 07/07/2026 |
| Claude Opus 4.8 | Anthropic | 1.000.000 | $5.00 | $25.00 | Evidências de preços ao vivo do TokenLab | 07/07/2026 |
| Claude Fable 5 | Anthropic | 1.000.000 | $10.00 | $50.00 | Evidências de preços ao vivo do TokenLab | 07/07/2026 |
| GPT-5.5 | OpenAI | 1.050.000 | $5.00 | $30.00 | Evidências de preços ao vivo do TokenLab | 07/07/2026 |
| GPT-5.5 Batch/Flex | OpenAI | 1.050.000 | $2.50 | $15.00 | Evidências de preços ao vivo do TokenLab | 07/07/2026 |
| Gemini 3.5 Flash | 1.048.576 | $1.50 | $9.00 | Evidências de preços ao vivo do TokenLab | 07/07/2026 | |
| GLM-5.2 | Z.ai | 1.048.576 | $0.93 | $3.00 | Evidências de preços ao vivo do TokenLab | 07/07/2026 |
| Kimi K2.7 Code | Moonshot AI | 262.144 | $0.74 | $3.50 | Evidências de preços ao vivo do TokenLab | 07/07/2026 |
| DeepSeek V4 Pro | DeepSeek | 1.048.576 | $0.44 | $0.87 | Evidências de preços ao vivo do TokenLab | 07/07/2026 |
| DeepSeek V4 Flash | DeepSeek | 1.048.576 | $0.09 | $0.18 | Evidências de preços ao vivo do TokenLab | 07/07/2026 |
| Qwen3.7 Plus | Alibaba | 1.000.000 | $0.32 | $1.28 | Evidências de preços ao vivo do TokenLab | 07/07/2026 |
| MiniMax M3 | MiniMax | 1.048.576 | $0.30 | $1.20 | Evidências de preços ao vivo do TokenLab | 07/07/2026 |
Nota sobre o SSOT de modelos: estes nomes refletem o SSOT de modelos do TokenLab observado em 07/07/2026, expirando em 14/07/2026. A nomenclatura e a disponibilidade mudam frequentemente. Antes de codificar uma string de modelo no seu código de produção, confirme se ela ainda é resolvida no diretório de modelos do TokenLab ou no ranking de modelos.
Corrija falhas de limite de taxa sem criar lógica de repetição do zero
Tudo acima é diagnóstico. O trabalho de remediação, decidir para qual modelo fazer fallback, rastrear a concorrência por usuário e manter uma visão atualizada de quais famílias de modelos estão saudáveis, é exatamente o que a camada de roteamento do TokenLab foi construída para absorver. Em vez de criar manualmente uma matriz de fallback entre cinco provedores, você aponta as requisições para o TokenLab e deixa o gateway selecionar entre o catálogo de modelos atual com base na disponibilidade e nas suas regras de fallback.
Uma ressalva honesta: o TokenLab fica na frente de vários provedores upstream, e cada upstream retorna seu próprio conjunto de cabeçalhos, formato de erro e semântica de repetição. Se o gateway normaliza totalmente cada cabeçalho de limite de taxa em um esquema consistente, ou se passa alguns cabeçalhos upstream inalterados, não está confirmado nas evidências disponíveis para este artigo. Verifique o comportamento atual dos cabeçalhos na documentação da API do TokenLab antes de escrever uma lógica de análise que assuma um esquema unificado único em todos os modelos. Construa seu analisador de cabeçalho defensivamente, verificando a presença de cada campo em vez de assumir que ele existe.
Lendo cabeçalhos de limite de taxa
Os provedores retornam informações de limite de taxa nos cabeçalhos de resposta, embora os nomes exatos variem conforme o provedor. Um padrão comum é assim:
x-ratelimit-limit-requests: 500
x-ratelimit-remaining-requests: 499
x-ratelimit-reset-requests: 12s
retry-after: 0
Leia-os em respostas bem-sucedidas, não apenas após um 429. Mantenha uma contagem contínua do orçamento restante e diminua a velocidade quando cair abaixo de um limite de segurança, normalmente 10-20% de margem, embora o número certo dependa da volatilidade do seu tráfego e não seja algo que este conjunto de evidências possa especificar para você.
Lógica de repetição com tratamento de erro explícito
Um auxiliar de repetição precisa lidar com mais do que apenas o caso 429. Ele deve distinguir erros transitórios (429, 503, timeouts) de erros do cliente (4xx que não sejam 429) que nunca terão sucesso em uma repetição, e deve respeitar o retry-after quando presente.
async function callWithRetry(fn, maxRetries = 4) {
for (let attempt = 0; attempt <= maxRetries; attempt++) {
try {
return await fn();
} catch (err) {
const status = err.status;
// Erros do cliente que não sejam 429 não terão sucesso na repetição
if (status && status >= 400 && status < 500 && status !== 429) {
throw err;
}
// Desistir após o máximo de tentativas, independentemente do tipo de erro
if (attempt === maxRetries) throw err;
// 429: respeitar retry-after se presente, caso contrário, backoff com jitter
if (status === 429) {
const retryAfter = parseRetryAfterHeader(err);
const delay = retryAfter
? retryAfter * 1000
: Math.pow(2, attempt) * 1000 + Math.random() * 1000;
await sleep(delay);
continue;
}
// 503 ou timeout de rede: backoff e repetir, logar para observabilidade
if (status === 503 || err.code === 'ETIMEDOUT' || err.code === 'ECONNRESET') {
await sleep(Math.pow(2, attempt) * 1000 + Math.random() * 1000);
continue;
}
// 5xx desconhecido: repetir com backoff, limitar tentativas rigorosamente
if (status && status >= 500) {
await sleep(Math.pow(2, attempt) * 1000 + Math.random() * 1000);
continue;
}
throw err;
}
}
}
Nunca envolva operações não idempotentes, como uma cobrança de pagamento ou uma gravação com efeitos colaterais, em um loop de repetição ingênuo. Confirme a idempotência ou use uma chave de idempotência antes de repetir essas chamadas.
Precisão da estimativa de tokens: Por que as contagens locais divergem das contagens do provedor
As bibliotecas de contagem de tokens do lado do cliente aproximam o tokenizador que um determinado modelo realmente usa. O tiktoken corresponde de perto à família da OpenAI, mas não há garantia de que corresponda exatamente aos tokenizadores da Anthropic, Google ou de pesos abertos. As diferenças aparecem em torno de tokens especiais, caracteres multibyte e formatação de prompt do sistema, e elas se acumulam em conversas longas.
Passos práticos para reduzir a divergência:
- Leia o uso real de tokens retornado no corpo da resposta (a maioria dos provedores inclui contagens de tokens de prompt e conclusão) e use isso para calibrar seu estimador local ao longo do tempo.
- Mantenha uma margem de segurança, não um limite rígido. Se o limite de TPM do seu provedor estiver próximo do seu uso estimado, atrase ou divida a requisição em vez de enviá-la exatamente no limite.
- Se seus prompts forem grandes ou repetitivos entre chamadas, veja a cobertura do TokenLab sobre comportamento de tokenização e estratégias de divisão de prompt para formas concretas de reduzir tokens por requisição antes mesmo de atingir um teto. Reduzir tokens por chamada é frequentemente uma solução mais barata do que negociar um nível superior.
Modelagem de tráfego e Fallback de modelo
Backoff exponencial com jitter. Dobre o tempo de espera após cada repetição e adicione jitter aleatório para que clientes simultâneos não repitam em sincronia.
Modelagem de tráfego por usuário ou tarefa. Limite chamadas simultâneas por usuário (por exemplo, 3 simultâneas, rajada de 5 requisições por segundo) para que um usuário pesado não possa esgotar seu limite de toda a conta e degradar todos os outros.
Estimativa de orçamento de tokens antes do envio. Conte os tokens no lado do cliente e, se uma requisição o levar acima do seu orçamento de TPM rastreado, atrase ou divida-a em vez de enviar e esperar.
Fallback de modelo como rede de segurança. Quando um modelo primário retorna um 429, roteie para um alternativo com limites separados e capacidade comparável. Uma tarefa de codificação pode fazer failover do Claude Sonnet 5 para o DeepSeek V4 Pro ou Kimi K2.7 Code. Uma carga de trabalho de alto volume e baixo custo pode fazer failover entre DeepSeek V4 Flash, Gemini 3.5 Flash e Qwen3.7 Plus, todos os quais estão no nível de roteamento de baixo custo do catálogo de modelos atual.
Checklist de tratamento de limite de taxa
| Categoria | O que verificar | Ação imediata | Solução de longo prazo |
|---|---|---|---|
| Limites de requisição | Valores de cabeçalho RPM, frequência de rajada | Controle de fluxo de requisições do cliente, adicione um limitador de taxa local | Níveis por usuário, enfileiramento no lado do servidor |
| Limites de tokens | Orçamento TPM por modelo, tokens médios por chamada, uso reportado na resposta | Pré-contagem de tokens, dividir prompts grandes, atrasar chamadas perto do teto | Batching com orçamento de tokens, rotear trabalho de alto volume para modelos de menor custo |
| Limites de concorrência | Máximo de streams ou conexões simultâneas | Limitar requisições simultâneas por cliente, fechar streams ociosos | Pool de conexões, lançamentos de stream escalonados |
| Cota / saldo | Saldo da conta, limites de gastos diários | Recarregar créditos, ajustar limites de gastos | Alertas de saldo baixo, recarga automática pré-paga |
Faixas de limite típicas: O que podemos e não podemos confirmar
Buscas secundárias por este tópico geralmente querem uma tabela de números "típicos" de RPM/TPM. Não vamos inventar uma. Os limites publicados por nível mudam frequentemente, variam de acordo com o histórico da conta e o nível de uso, e não fazem parte das evidências disponíveis para este artigo.
| Pergunta | Status | Passo de verificação |
|---|---|---|
| Qual é um limite de RPM "típico" para um modelo de fronteira? | Não confirmado neste conjunto de evidências | Verifique o painel da conta do seu provedor ou os cabeçalhos de resposta de limite de taxa diretamente |
| Qual é um limite de TPM "típico" para um modelo de 1M de contexto? | Não confirmado neste conjunto de evidências | Registre o uso real dos cabeçalhos de resposta ao longo de uma semana de tráfego para construir sua própria linha de base |
| O nível de uso altera esses números? | Plausível com base no comportamento geral do provedor, não testado aqui | Confirme os limites de nível atuais no console do seu provedor |
| Os limites agregados do TokenLab correspondem exatamente aos limites do provedor upstream? | Não confirmado neste conjunto de evidências | Verifique na documentação da API do TokenLab antes do planejamento de capacidade |
Limitações
- Nenhum número oficial de RPM/TPM estava disponível para GPT-5.5, Claude Opus 4.8, Gemini 3.5 Flash ou qualquer outro modelo referenciado aqui. Cada número nas tabelas de preços acima é o tamanho da janela de contexto e o custo por token, não um limite de taxa.
- Se o gateway do TokenLab unifica totalmente os cabeçalhos de limite de taxa em todos os provedores upstream, ou se passa alguns inalterados, não está confirmado neste conjunto de evidências. Trate a análise de cabeçalho como específica do provedor até verificar o comportamento atual do gateway na documentação.
- Os nomes dos modelos neste artigo refletem o SSOT de modelos do TokenLab observado em 07/07/2026, expirando em 14/07/2026. Confirme a disponibilidade atual no diretório de modelos antes de enviar código que codifica uma string de modelo.
- A precisão da estimativa de tokens versus a contagem do lado do provedor não foi testada neste conjunto de evidências. Calibre seu próprio estimador em relação ao uso reportado na resposta em vez de confiar em um deslocamento fixo.
FAQ
Por que meu aplicativo recebe erros 429 mesmo que a contagem de requisições esteja abaixo do limite? Verifique primeiro o orçamento de tokens por minuto (TPM). Um único prompt grande pode esgotar a permissão de tokens enquanto a contagem de requisições permanece baixa. Verifique também a concorrência: conexões de streaming abertas podem bloquear novas requisições mesmo quando RPM e TPM parecem estar bem.
Devo repetir imediatamente quando recebo um 429?
Não. Aguarde o período especificado em retry-after ou use backoff exponencial com jitter se esse cabeçalho estiver ausente. Repetições imediatas arriscam um efeito de "manada" (thundering-herd) e podem estender sua janela de bloqueio.
Como sei se minha contagem local de tokens corresponderá ao que o provedor realmente me cobra? Você não sabe, exatamente. Os tokenizadores do lado do cliente são aproximações. Leia o uso de tokens retornado em cada corpo de resposta e use-o para calibrar seu estimador ao longo do tempo, e mantenha uma margem de segurança em vez de enviar requisições exatamente no seu teto estimado.
O TokenLab expõe um conjunto unificado de cabeçalhos de limite de taxa em todos os modelos? Não confirmado nas evidências disponíveis aqui. Diferentes provedores upstream retornam diferentes formatos de cabeçalho, e quanto de normalização o TokenLab aplica é algo a ser verificado na documentação atual da API, em vez de assumir.
Como posso evitar limites de taxa sem atualizar meu plano? Combine orçamento de tokens, limites locais de concorrência e fallback de modelo. Estime tokens antes de enviar, divida prompts longos e roteie para um modelo alternativo, por exemplo, do Claude Sonnet 5 para o DeepSeek V4 Pro, quando seu limite primário for atingido.
Comece agora
Limites de taxa são um fato ao construir sobre APIs de IA, mas não precisam causar interrupções. O gateway do TokenLab dá a você acesso ao catálogo de modelos atual e a dados de preços e throughput ao vivo para que você possa contornar os limites em vez de adivinhá-los. Se você também estiver avaliando compensações de agregadores, a comparação com o OpenRouter cobre o comportamento de fallback e a sobrecarga operacional com mais profundidade. Obtenha sua chave de API em tokenlab.sh e construa a lógica de repetição e fallback uma vez, não por provedor.
Fontes
Preço observado em 2026-07-07
- TokenLab model directoryObservado em 2026-07-07



