> For the complete documentation index, see [llms.txt](https://saptiva.gitbook.io/saptiva-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://saptiva.gitbook.io/saptiva-docs/basicos/limites-de-uso-rate-limits.md).

# Límites de Uso (Rate Limits)

Los **Rate Limits** o **límites de uso** son restricciones que **Saptiva** impone para controlar la cantidad de solicitudes que un usuario o cliente puede realizar a la **API** en un periodo determinado.\
Estos límites garantizan un servicio estable, seguro y justo para todos los usuarios.

***

### 🧩 ¿Por qué existen los límites de uso?

Los límites de uso son una práctica estándar en las APIs y cumplen con varios propósitos importantes:

* 🔒 **Protección contra abusos o uso indebido:** Evitan que actores malintencionados saturen el sistema con solicitudes excesivas.
* ⚖️ **Acceso equitativo:** Garantizan que todos los usuarios tengan una experiencia fluida evitando que unos pocos monopolicen los recursos.
* ⚙️ **Estabilidad del sistema:** Ayudan a mantener una carga equilibrada en la infraestructura, preservando el rendimiento general del servicio.

***

### ⚙️ ¿Cómo funcionan los límites de uso?

Los límites se miden en diferentes unidades dependiendo del tipo de solicitud:

| Tipo de límite                | Descripción                     |
| ----------------------------- | ------------------------------- |
| **RPM** (Requests Per Minute) | Solicitudes por minuto.         |
| **RPD** (Requests Per Day)    | Solicitudes por día.            |
| **TPM** (Tokens Per Minute)   | Tokens procesados por minuto.   |
| **TPD** (Tokens Per Day)      | Tokens procesados por día.      |
| **IPM** (Images Per Minute)   | Imágenes procesadas por minuto. |

Un usuario puede alcanzar el límite si excede cualquiera de estos valores.\
Por ejemplo, si tu límite es de **60 RPM** y realizas 60 solicitudes en un minuto, deberás esperar al siguiente ciclo para continuar, incluso si no alcanzaste tu límite de tokens.

***

### 🧮 Límites por plan

A continuación, se muestran los límites establecidos por tipo de plan en **Saptiva**:

| Plan                 | Imágenes por minuto (IPM) | Solicitudes por minuto (RPM) | Solicitudes por día (RPD) | Tokens por minuto (TPM) | Tokens por día (TPD) |
| -------------------- | ------------------------- | ---------------------------- | ------------------------- | ----------------------- | -------------------- |
| **Free**             | 6 / 60s                   | 60 / 60s                     | 20,000 / día              | 60,000 / 60s            | 20,000,000 / día     |
| **Developer (Paid)** | 7 / 60s                   | 4,000 / 60s                  | 250,000 / día             | 2,000,000 / 60s         | 250,000,000 / día    |
| **Enterprise**       | Ilimitado                 | Ilimitado                    | Ilimitado                 | Ilimitado               | Ilimitado            |

#### 📖 Ejemplo de limitación en plan Free:

<figure><img src="https://109074694-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F1Xeu6KDnv2A0dUxoQDDU%2Fuploads%2F81BEm5PuDtjwfxXyn95L%2FScreenshot%20from%202025-10-14%2012-17-55.png?alt=media&amp;token=d23783c5-04bc-4238-8d2e-19c2584098a2" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
Nota

💡 Los valores representan el límite máximo permitido en la ventana de tiempo especificada.
{% endhint %}

***

### ⏱️ Encabezado `retry-after`

El encabezado **`retry-after`** se incluye en las respuestas **HTTP** cuando el cliente ha alcanzado un límite de uso o ha realizado demasiadas solicitudes en un periodo corto de tiempo.\
Este valor indica **cuántos segundos** debe esperar antes de volver a intentar la solicitud.

#### 📖 Ejemplo

<table><thead><tr><th width="246">Campo</th><th>Valor</th><th>Descripción</th></tr></thead><tbody><tr><td><code>retry-after</code></td><td><code>50</code></td><td>Indica que el cliente debe esperar <strong>50 segundos</strong> antes de enviar una nueva solicitud.</td></tr></tbody></table>

#### 💡 Cuándo aparece este encabezado?

El encabezado `retry-after` se muestra cuando la **API** devuelve el código de estado **HTTP 429 (Too Many Requests)**, lo que significa que se ha superado alguno de los **Rate Limits** (como RPM, TPM o IPM).\
Durante este periodo, las solicitudes adicionales serán rechazadas hasta que el tiempo indicado haya transcurrido.

***

### 📈 Consideraciones importantes

* Los límites se aplican a nivel de **organización y proyecto**, no por usuario individual.
* Los límites pueden variar según el **modelo** utilizado.
* Algunos modelos **comparten límites** de uso entre sí.

***

### ⚙️ Ajuste de `max_tokens` para optimizar los límites de uso

Cuando realizas solicitudes a la **API** de **Saptiva**, el sistema calcula tu **límite de uso** (rate limit) considerando el número total de tokens en tu solicitud (según el conteo de caracteres).

Si defines un `max_tokens` demasiado alto, **tu solicitud consumirá más cuota de uso.**

#### 💡 Recomendación

Para evitar consumir más tokens de los necesarios:

1. **Estima el tamaño real de la respuesta** que esperas de la API.
2. **Ajusta el parámetro `max_tokens`** a un valor cercano a esa estimación.

Por ejemplo:

```json
{
  "model": "Saptiva Ops",
  "messages": [{"role": "user", "content": "Resume este texto en 100 palabras"}],
  "max_tokens": 150  # Valor ajustado al tamaño esperado de la respuesta
}
```

#### 📊 Beneficios de ajustar correctamente `max_tokens`

* Reduces el consumo innecesario de cuota de tokens.
* Evitas alcanzar los límites de uso antes de tiempo.
* Mejoras el rendimiento y la eficiencia de tus solicitudes.
* Mantienes tus costos bajo control, especialmente en planes **Free** o **Developer**.
