> ## Documentation Index
> Fetch the complete documentation index at: https://novita.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Limites de débit

export const DynamicRPMList = () => {
  if (typeof document === "undefined") {
    return null;
  } else {
    let attempts = 0;
    const maxAttempts = 50;
    const formatAmount = num => {
      if (typeof num === "number") {
        return num.toLocaleString();
      }
      return num || "-";
    };
    const interval = setInterval(() => {
      const clientComponent = document.getElementById("dynamic-rpm-list");
      if (clientComponent && window.novitaRemoteData.llmModels.status === 'loaded') {
        const modelList = window.novitaRemoteData.llmModels.data.filter(model => {
          return Boolean(model.rpm);
        });
        const allModels = modelList.map(model => {
          const t1 = (model.quota_items || []).find(item => item.tier === "T1") || ({});
          const t2 = (model.quota_items || []).find(item => item.tier === "T2") || ({});
          const t3 = (model.quota_items || []).find(item => item.tier === "T3") || ({});
          const t4 = (model.quota_items || []).find(item => item.tier === "T4") || ({});
          const t5 = (model.quota_items || []).find(item => item.tier === "T5") || ({});
          return `
            <tr>
              <td rowspan="2" style="vertical-align: middle; max-width: 230px">${model.id}</td>
              <td>RPM</td>
              <td>${formatAmount(t1.rpm)}</td>
              <td>${formatAmount(t2.rpm)}</td>
              <td>${formatAmount(t3.rpm)}</td>
              <td>${formatAmount(t4.rpm)}</td>
              <td>${formatAmount(t5.rpm)}</td>
            </tr>
            <tr>
              <td>TPM</td>
              <td>${formatAmount(t1.tpm)}</td>
              <td>${formatAmount(t2.tpm)}</td>
              <td>${formatAmount(t3.tpm)}</td>
              <td>${formatAmount(t4.tpm)}</td>
              <td>${formatAmount(t5.tpm)}</td>
            </tr>
          `;
        }).join('');
        clientComponent.innerHTML = `
          <table class="table table-big">
            <thead>
              <tr>
                <th>Model</th>
                <th></th>
                <th>T1</th>
                <th>T2</th>
                <th>T3</th>
                <th>T4</th>
                <th>T5</th>
              </tr>
            </thead>
            <tbody>
              ${allModels}
            </tbody>
          </table>
        `;
        clearInterval(interval);
      }
      attempts++;
      if (attempts >= maxAttempts) {
        clearInterval(interval);
      }
    }, 200);
    return <div id="dynamic-rpm-list"></div>;
  }
};

Les limites de débit contrôlent la fréquence à laquelle les utilisateurs peuvent envoyer des requêtes à notre API LLM sur des périodes données. Comprendre ces limites et les respecter est essentiel pour une utilisation optimale de l’API.

<Tip>
  Vous débutez avec l’API ? Consultez [Clés API](/docs/fr/guides/llm-api-keys) pour savoir comment créer une clé et vous authentifier avec celle-ci.
</Tip>

## 1. Comprendre les limites de débit

### Que sont les limites de débit ?

Les limites de débit restreignent le nombre de requêtes API pouvant être effectuées pendant des périodes définies. Elles permettent de :

* Prévenir les abus et les utilisations inappropriées de l’API ;
* Garantir une répartition équitable des ressources entre les utilisateurs ;
* Maintenir des performances et une fiabilité constantes de l’API ;
* Protéger la stabilité de nos services.

### Limites de débit par défaut

Chaque compte dispose d’une limite de débit par défaut pour les appels de modèles, mesurée en RPM (requêtes par modèle par minute) et en TPM (tokens par modèle par minute). Les limites de débit varient selon le niveau du compte, comme indiqué dans les tableaux ci-dessous.

<table class="table table-big">
  <thead>
    <tr>
      <th class="min-w-10">Niveau</th>
      <th>Comment l’atteindre</th>
    </tr>
  </thead>

  <tbody>
    <tr>
      <td>T1</td>
      <td>Les recharges mensuelles n’ont pas dépassé \$50 au cours de chacun des 3 derniers mois calendaires.</td>
    </tr>

    <tr>
      <td>T2</td>
      <td>Les recharges mensuelles ont été d’au moins \$50, sans dépasser \$500 au cours de chacun des 3 derniers mois calendaires.</td>
    </tr>

    <tr>
      <td>T3</td>
      <td>Les recharges mensuelles ont été d’au moins \$500, sans dépasser \$3,000 au cours de chacun des 3 derniers mois calendaires.</td>
    </tr>

    <tr>
      <td>T4</td>
      <td>Les recharges mensuelles ont été d’au moins \$3,000, sans dépasser \$10,000 au cours de chacun des 3 derniers mois calendaires.</td>
    </tr>

    <tr>
      <td>T5</td>
      <td>Les recharges mensuelles ont été d’au moins \$10,000 pendant au moins l’un des 3 derniers mois calendaires.</td>
    </tr>
  </tbody>
</table>

<Tip>Les 3 derniers mois calendaires désignent le mois en cours et les deux mois qui le précèdent.</Tip>

Limite de débit par défaut par niveau (RPM / TPM) :

<DynamicRPMList />

## 2. Gérer les limites de débit

### Comment surveiller les limites de débit ?

Lorsque vous dépassez la limite de débit, l’API renvoie :

* Code de statut HTTP : 429 (Too Many Requests) ;
* Un message indiquant le dépassement de la limite de débit dans le corps de la réponse.

### Bonnes pratiques

Pour éviter d’atteindre les limites de débit :

1. Implémentez une limitation du débit des requêtes dans votre application ;
2. Ajoutez un backoff exponentiel pour les nouvelles tentatives ;
3. Surveillez les schémas d’utilisation de votre API.

### Lorsque vous atteignez les limites de débit

Si vous recevez une erreur 429, vous pouvez :

1. **Réessayer plus tard** : attendez un court instant avant de réessayer votre requête ;
2. **Optimiser les requêtes** : réduisez la fréquence des requêtes ;
3. **Augmenter les limites de débit** : pour obtenir des limites de débit plus élevées, vous pouvez :
   * <a href="https://discord.gg/YyPRAzwp7P" target="_blank">Nous contacter via Discord</a>
   * ou <a href="https://meet.brevo.com/novita-ai/contact-sales" target="_blank">Planifier un appel avec notre équipe commerciale</a>

***

**Si vous avez des questions, [contactez-nous sur Discord](https://discord.gg/YyPRAzwp7P).**
