Référence API

Limites de débit et nouvelles tentatives

#Fonctionnement des limites

Plafonds RPM et RPD par clé. En cas de 429, la passerelle envoie Retry-After ; les limites en amont sont protégées par des disjoncteurs, pour qu'un canal défaillant ne surcharge pas l'ensemble.

Les limites s'appliquent par clé : répartir vos projets sur plusieurs clés isole leurs limitations. Les plafonds par clé se modifient dans Console → Clés API.

#Bien réessayer

Respectez Retry-After s'il est présent, sinon utilisez un backoff exponentiel avec jitter. Limitez le nombre total de tentatives — mieux vaut signaler à votre appelant un modèle totalement indisponible que de réessayer indéfiniment.

backoff.py
import time, requests

def call_with_backoff(url, headers, body, tries=5):
    for i in range(tries):
        r = requests.post(url, headers=headers, json=body)
        if r.status_code != 429:
            return r
        # Respect Retry-After (seconds); fall back to 2**i backoff.
        wait = int(r.headers.get("Retry-After", 2 ** i))
        time.sleep(wait)
    r.raise_for_status()

Toujours bloqué ?

Envoyez-nous l'ID de requête ou le message d'erreur, et nous examinerons le problème.