Passer au contenu principal
OrcaRouter limite le taux au niveau espace de travail, pas par clé API. Toutes les clés appartenant au même espace de travail puisent dans le même seau. Quand la limite est dépassée, vous obtenez une réponse HTTP 429 Too Many Requests avec un en-tête Retry-After.

Pourquoi limité par espace de travail

Les espaces de travail sont la façon dont OrcaRouter regroupe les clés, membres et facturation appartenant à une seule équipe ou individu. Les limites partagées au sein d’un espace de travail rendent le trafic prévisible à mesure que votre équipe grandit : ajouter une nouvelle clé (ou un nouveau membre) ne multiplie pas votre budget partagé. Si vous avez besoin d’un plafond plus élevé, mettez à niveau le plan de l’espace de travail. OrcaRouter n’expose pas de limites de taux par modèle aux appelants — la passerelle se comporte comme un fournisseur logique unique du point de vue de votre application, en cohérence avec l’opacité fournisseur. La limitation interne vers les fournisseurs en amont se produit de manière transparente et ne fait pas partie du contrat public.

Réponse

Une requête limitée retourne toujours :
HTTP/1.1 429 Too Many Requests
Retry-After: <seconds>
Certains chemins de limitation de taux incluent aussi un corps JSON expliquant la limite atteinte ; d’autres (le seau d’espace de travail sur le chemin le plus rapide) ne retournent que le code de statut et les en-têtes. Ne dépendez pas de la forme du corps — vérifiez le code de statut 429 et lisez Retry-After. Quand un corps est présent, il suit l’enveloppe compatible OpenAI avec error.type défini à orcarouter_api_error. Le error.message peut être localisé (actuellement chinois) — voir Erreurs pour la structure d’enveloppe. Retry-After est en secondes. C’est la durée de la fenêtre de limitation de taux (conservateur — il est sûr d’attendre exactement ce temps) ; la prochaine fenêtre aura le budget complet. Réessayer immédiatement sans attendre échouera à nouveau.

Comportement client recommandé

  1. Sur 429, lisez Retry-After.
  2. Attendez ce nombre de secondes.
  3. Réessayez la même requête.
  4. Si un second 429 survient, augmentez l’attente par 2× (backoff exponentiel) jusqu’à 60 secondes.
  5. Si vous voyez 429 à répétition, envisagez de répartir le trafic sur plusieurs modèles avec extra_body.models — voir Repli de modèles.
Les SDK Python et TypeScript d’OpenAI gèrent automatiquement Retry-After par défaut. Vous n’avez pas besoin de code personnalisé sauf si vous avez désactivé les nouvelles tentatives.

Réactif, pas prédictif

OrcaRouter ne retourne pas les en-têtes X-RateLimit-Remaining / X-RateLimit-Reset, donc vous ne pouvez pas vérifier préventivement combien de budget reste. Traitez 429 comme le signal — reculez quand vous le voyez, puis reprenez.