Calcolatore limiti 429 & concorrenza worker per LLM

Calcola RPM, Input TPM (ITPM) e Output TPM (OTPM) richiesti su 60 modelli attivi del 2026, individua i colli di bottiglia di quota prima del lancio e copia configurazioni di backoff con full jitter.

Esecuzione locale nel browser — 0 byte caricati
Workbench di dimensionamento quote e concorrenza in produzione
SICURO (84% bucket di picco: ITPM)
RPM richiesti
240
Input TPM richiesti
840.000
Output TPM richiesti
144.000
Concorrenza max sicura dei worker
16
Profondità di coda consigliata
48

Utilizzo della quota e diagnosi dei colli di bottiglia

Richieste al minuto (RPM) 240 / 2000 (12%)
Token di input al minuto (ITPM) 840.000 / 1.000.000 (84%)
Token di output al minuto (OTPM) 144.000 / 200.000 (72%)
Configurazione di backoff esponenziale con full jitter
// Full-jitter exponential backoff + Retry-After guard (google/gemini-4-hydrogen)
export async function callWithRateLimitGuard<T>(
  fn: () => Promise<Response>,
  maxRetries = 5,
  baseDelayMs = 500,
  maxDelayMs = 30_000
): Promise<T> {
  for (let attempt = 0; attempt <= maxRetries; attempt++) {
    const res = await fn();
    if (res.status !== 429 && res.status < 500) {
      return (await res.json()) as T;
    }
    if (attempt === maxRetries) {
      throw new Error(`LLM quota exhausted (HTTP ${res.status}) after ${maxRetries} retries`);
    }
    const retryAfterSec = Number(res.headers.get('retry-after'));
    const ceiling = Math.min(maxDelayMs, baseDelayMs * 2 ** attempt);
    const sleepMs = Number.isFinite(retryAfterSec) && retryAfterSec > 0
      ? retryAfterSec * 1000
      : Math.floor(Math.random() * ceiling);
    await new Promise((r) => setTimeout(r, sleepMs));
  }
  throw new Error('Unreachable');
}

Come nascono i blocchi 429 sulle quote LLM

I gateway API per LLM applicano tre soglie simultanee di token bucket: RPM (richieste al minuto), ITPM (token di input al minuto, inclusi i blocchi RAG) e OTPM (token generati al minuto). Superare anche un solo bucket restituisce HTTP 429 anche quando gli altri due sono sotto il 20%. Abbina il calcolo delle quote alla Spesa API a 30 giorni e verifica le date di ritiro su LLMEOL.

Regole di accodamento & retry per la produzione

Domande frequenti

Perché ricevo errori HTTP 429 anche se il numero di richieste è molto sotto il limite RPM?

Prompt RAG estesi e cronologie multi-turno saturano i bucket Input TPM (ITPM) o Output TPM (OTPM) molto prima di raggiungere il tetto di richieste al minuto (RPM).

Il Prompt Caching aumenta il mio limite effettivo di Input TPM?

Il Prompt Caching riduce la fatturazione di input del 90%–95% e diversi provider escludono i prefissi in cache dalla quota ITPM; simula il risparmio esatto nel Calcolatore costi LLM.

Perché usare backoff esponenziale con full jitter invece di pause fisse?

Intervalli fissi fanno ripartire insieme i worker limitati nello stesso secondo; il full jitter distribuisce uniformemente i tentativi nei client TypeScript e Python.