Skip to Content
DocsGuiasLimites de taxa

Limites de taxa

Os limites de taxa do OfoxAI garantem a estabilidade da plataforma. Entenda as regras de limitação e otimize sua estratégia de chamadas.

Limites padrão

O OfoxAI cobra por uso. Todos os usuários compartilham limites de taxa unificados:

LimiteCota
RPM (requisições/minuto)100 (agregado por equipe)
TPM (tokens/minuto)Ilimitado

Agregação em nível de equipe: o RPM é calculado de forma acumulada para toda a organização (equipe). Várias API Keys da mesma equipe compartilham uma única cota, impedindo desde a raiz que o empilhamento de múltiplas Keys ultrapasse os limites dos provedores upstream. Se você precisar de uma cota de RPM maior, entre em contato com [email protected] para solicitar um ajuste.

Rate Limit Header

Cada resposta da API inclui informações sobre o limite de taxa:

x-ratelimit-limit-requests: 100 x-ratelimit-remaining-requests: 95 x-ratelimit-reset-requests: 12s
HeaderDescrição
x-ratelimit-limit-requestsLimite de RPM
x-ratelimit-remaining-requestsRequisições restantes
x-ratelimit-reset-requestsTempo para reset do limite

Tratamento do erro 429

Quando o limite de taxa é atingido, a API retorna 429 Too Many Requests:

from openai import RateLimitError import time try: response = client.chat.completions.create(...) except RateLimitError as e: retry_after = float(e.response.headers.get("retry-after", 1)) print(f"Limite de taxa atingido, aguardando {retry_after}s...") time.sleep(retry_after)

Estratégias de otimização

1. Usar Prompt Caching

Para system prompts repetidos, o cache pode reduzir o consumo de tokens:

response = client.chat.completions.create( model="openai/gpt-4o", messages=[ # System prompts longos são automaticamente cacheados {"role": "system", "content": "Você é um profissional... (texto longo omitido)"}, {"role": "user", "content": "Pergunta do usuário"} ] )

Veja mais em Cache de prompt.

2. Processamento em lote

Combine múltiplas requisições curtas em uma só:

# ❌ Não recomendado: Requisição separada para cada pergunta for question in questions: client.chat.completions.create(messages=[{"role": "user", "content": question}]) # ✅ Recomendado: Combinar em uma única requisição combined = "\n".join(f"{i+1}. {q}" for i, q in enumerate(questions)) client.chat.completions.create( messages=[{"role": "user", "content": f"Responda às seguintes perguntas em ordem:\n{combined}"}] )

3. Escolher o modelo adequado

Para modelos recomendados, consulte o Mercado de Modelos .

4. Controlar max_tokens

Defina um limite max_tokens adequado para evitar consumo desnecessário de tokens:

response = client.chat.completions.create( model="openai/gpt-4o", messages=[{"role": "user", "content": "Resuma em uma frase"}], max_tokens=100 # Limitar tamanho da saída )

5. Usar fallback de modelo

Quando o modelo principal atinge o limite, trocar automaticamente para alternativas:

response = client.chat.completions.create( model="openai/gpt-4o", messages=[...], extra_body={ "provider": { "fallback": ["anthropic/claude-sonnet-4.6", "google/gemini-3.1-flash-lite-preview"] } } )

Veja mais em Failover.

Last updated on