Limites de requisições
Como funciona a limitação de requisições, o que um 429 significa aqui e como criar um cliente que não o provoque.
Os limites garantem uma distribuição justa da capacidade compartilhada dos provedores upstream. Eles se aplicam por conta, não por chave, portanto adicionar chaves não aumenta seu limite máximo.
O que é limitado
| Dimensão | Comportamento |
|---|---|
| Requisições simultâneas | Requisições em andamento por conta. A causa mais comum de um 429. |
| Requisições por minuto | Taxa sustentada de chamadas. |
| Tokens por minuto | Vazão combinada de entrada e saída. |
Os planos ilimitados aplicam limites de uso justo em vez de um saldo de créditos — eles eliminam a cobrança por token, não o limite de simultaneidade.
Lidar corretamente com 429
- Aumente exponencialmente o intervalo entre tentativas, com variação aleatória — 1s, 2s, 4s, 8s, cada um acrescido ou reduzido de uma fração aleatória.
- Limite a simultaneidade no cliente com um semáforo, em vez de disparar tudo e tentar novamente as requisições rejeitadas.
- Coloque o trabalho em lote em uma fila em vez de paralelizá-lo ao máximo; a vazão é limitada pelos tokens por minuto, não pela quantidade de sockets que você abre.
- Trate
529de forma diferente de429— isso diz respeito à capacidade do provedor upstream, não a você, e geralmente se resolve em segundos.
import asyncio
sem = asyncio.Semaphore(8) class=class="s">"c"># ceiling on concurrency, tune to your plan
async def ask(client, body):
async with sem:
return await client.post(class="s">"/v1/messages", json=body)
Ferramentas agênticas como Claude Code disparam muitas operações em paralelo por design. Se você encontrar erros 429 durante o uso intenso de agentes, reduza o paralelismo da ferramenta antes de mudar para um plano superior.
Reduzir a pressão em vez de tentar novamente
- Encaminhe tarefas de baixo custo para
claude-haiku-4-5— modelos menores terminam mais rápido e ocupam uma vaga por menos tempo. - Ative o cache de prompts: prefixos em cache reduzem os tokens de entrada e, portanto, a pressão sobre o limite de tokens por minuto.
- Reduza o histórico da conversa; consulte Gerenciamento de contexto.
- Agrupe o trabalho offline em lotes para períodos fora do horário de pico.