> ## 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.

# Ratenlimits

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>;
  }
};

Ratenlimits steuern, wie häufig Benutzer innerhalb bestimmter Zeiträume Anfragen an unsere LLM-API stellen können. Das Verständnis und die Einhaltung dieser Limits sind für eine optimale API-Nutzung unerlässlich.

<Tip>
  Neu bei der API? Unter [API-Schlüssel](/docs/de/guides/llm-api-keys) erfahren Sie, wie Sie zunächst einen Schlüssel erstellen und sich damit authentifizieren.
</Tip>

## 1. Ratenlimits verstehen

### Was sind Ratenlimits?

Ratenlimits beschränken die Anzahl der API-Anfragen, die innerhalb definierter Zeiträume gestellt werden können. Sie helfen dabei:

* Missbrauch und Fehlverwendung der API zu verhindern;
* Eine faire Verteilung der Ressourcen unter den Benutzern sicherzustellen;
* Eine konsistente API-Leistung und Zuverlässigkeit aufrechtzuerhalten;
* Die Stabilität unserer Dienste zu schützen.

### Standard-Ratenlimits

Jedes Konto hat ein Standard-Ratenlimit für Modellaufrufe, gemessen in RPM (Anfragen pro Modell pro Minute) und TPM (Tokens pro Modell pro Minute). Ratenlimits variieren je nach Kontostufe, wie in den folgenden Tabellen dargestellt.

<table class="table table-big">
  <thead>
    <tr>
      <th class="min-w-10">Stufe</th>
      <th>Wie erreichen</th>
    </tr>
  </thead>

  <tbody>
    <tr>
      <td>T1</td>
      <td>Monatliche Aufladungen haben in keinem der letzten 3 Kalendermonate \$50 überschritten.</td>
    </tr>

    <tr>
      <td>T2</td>
      <td>Monatliche Aufladungen lagen bei mindestens \$50, haben jedoch in keinem der letzten 3 Kalendermonate \$500 überschritten.</td>
    </tr>

    <tr>
      <td>T3</td>
      <td>Monatliche Aufladungen lagen bei mindestens \$500, haben jedoch in keinem der letzten 3 Kalendermonate \$3,000 überschritten.</td>
    </tr>

    <tr>
      <td>T4</td>
      <td>Monatliche Aufladungen lagen bei mindestens \$3,000, haben jedoch in keinem der letzten 3 Kalendermonate \$10,000 überschritten.</td>
    </tr>

    <tr>
      <td>T5</td>
      <td>Monatliche Aufladungen lagen in mindestens einem der letzten 3 Kalendermonate bei mindestens \$10,000.</td>
    </tr>
  </tbody>
</table>

<Tip>Die letzten 3 Kalendermonate beziehen sich auf den aktuellen Monat und die zwei Monate davor.</Tip>

Standard-Ratenlimit nach Stufe (RPM / TPM):

<DynamicRPMList />

## 2. Umgang mit Ratenlimits

### Wie überwacht man Ratenlimits?

Wenn Sie das Ratenlimit überschreiten, gibt die API Folgendes zurück:

* HTTP-Statuscode: 429 (Too Many Requests);
* Eine Meldung über das Überschreiten des Ratenlimits im Antworttext.

### Bewährte Vorgehensweisen

Um zu vermeiden, dass Sie Ratenlimits erreichen:

1. Implementieren Sie Anfragedrosselung in Ihrer Anwendung;
2. Fügen Sie exponentielles Backoff für Wiederholungsversuche hinzu;
3. Überwachen Sie Ihre API-Nutzungsmuster.

### Wenn Sie Ratenlimits erreichen

Wenn Sie einen 429-Fehler erhalten, können Sie:

1. **Später erneut versuchen**: Warten Sie einen kurzen Zeitraum, bevor Sie Ihre Anfrage erneut versuchen;
2. **Anfragen optimieren**: Reduzieren Sie die Anfragehäufigkeit;
3. **Ratenlimits erhöhen**: Für höhere Ratenlimits können Sie:
   * <a href="https://discord.gg/YyPRAzwp7P" target="_blank">Uns über Discord kontaktieren</a>
   * oder <a href="https://meet.brevo.com/novita-ai/contact-sales" target="_blank">Einen Termin mit unserem Vertriebsteam buchen</a>

***

**Wenn Sie Fragen haben, [kontaktieren Sie uns bitte auf Discord](https://discord.gg/YyPRAzwp7P).**
