AI Agents with LangChain & Autonomous Workflows · Урок

Ограничение частоты и управление квотами API

Защищайте рабочие агенты от ограничений частоты поставщика и неконтролируемых расходов, ограничивая скорость запросов, повторяя их с увеличивающейся задержкой и управляя квотами для отдельных пользователей.

Урок 4 из 413 шагов

«Ограничение частоты и управление квотами API» — бесплатный урок AI Agents with LangChain & Autonomous Workflows на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения AI Agents with LangChain & Autonomous Workflows, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс AI Agents with LangChain & Autonomous Workflows содержит 4 уроков всего.

Части этого урока еще не переведены и отображаются на английском.

The Limits You Face

LLM providers cap usage in two ways:

  • Requests per minute (RPM)
  • Tokens per minute (TPM)

Exceed them and calls return 429 Too Many Requests, breaking your agents under load.

Why Throttle Proactively

Waiting for 429s and retrying is wasteful. Proactive rate limiting spaces out requests so you stay under the cap, smoothing traffic and avoiding errors entirely.

Client-Side Rate Limiter

LangChain can throttle model calls with a built-in rate limiter that releases a fixed number of requests per second.

from langchain_core.rate_limiters import InMemoryRateLimiter

limiter = InMemoryRateLimiter(
    requests_per_second=2,
    max_bucket_size=5
)

Attaching It to the Model

Pass the limiter to the chat model. Every call now waits its turn automatically.

llm = ChatOpenAI(
    model='gpt-4o-mini',
    rate_limiter=limiter
)

Retry with Exponential Backoff

Some 429s and transient errors are unavoidable. Retry with growing delays so you do not hammer the provider.

llm_with_retry = llm.with_retry(
    stop_after_attempt=5
)

Respecting Retry-After

Providers often return a Retry-After header telling you how long to wait. Honoring it is more polite and effective than a fixed delay.

wait = int(response.headers.get('Retry-After', '1'))

Per-User Quotas

Beyond provider limits, you set your own per-user quotas to control cost and fairness. Track usage in a store like Redis and reject or queue once a user exceeds their allowance.

used = redis.incr(f'quota:{user_id}')
if used > DAILY_LIMIT:
    raise QuotaExceeded()

Token Bucket Algorithm

The common pattern is a token bucket: tokens refill at a steady rate, each request consumes one, and an empty bucket means wait. It allows short bursts while enforcing an average rate.

Queuing Under Load

When demand spikes past your limits, queue requests instead of dropping them. A background worker drains the queue at a safe rate, keeping the system stable.

Spreading Across Keys

For high throughput you can rotate across multiple API keys or providers, distributing load so no single key hits its cap. Track each key's usage independently.

Monitoring Limits

Track 429 rates and how close you run to caps. Rising 429s signal you need a higher tier, better throttling, or more keys before users notice failures.

Quick Check

Test your rate-limiting knowledge.

Recap

You learned to manage limits and quotas in production:

  • Providers cap RPM and TPM; 429s break agents
  • Use an InMemoryRateLimiter to throttle proactively
  • Add retry with backoff and honor Retry-After
  • Enforce per-user quotas with a token bucket
  • Queue, rotate keys, and monitor 429 rates

Good limit management keeps scaled agents reliable and affordable.

Можно начать бесплатно

Изучай AI Agents with LangChain & Autonomous Workflows с ИИ-репетитором — бесплатно

Пиши и запускай код прямо в браузере, получай мгновенную помощь от ИИ-репетитора 24/7 и продолжи учиться на сайте или в приложении.

Курсы
12
Уроки
50

Часто задаваемые вопросы

Урок «Ограничение частоты и управление квотами API» бесплатный?

Да — полный текст урока «Ограничение частоты и управление квотами API» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс AI Agents with LangChain & Autonomous Workflows, подпишись на CoddyKit PRO. Курс AI Agents with LangChain & Autonomous Workflows содержит 4 уроков всего.

Чему я научусь в уроке «Ограничение частоты и управление квотами API»?

Защищайте рабочие агенты от ограничений частоты поставщика и неконтролируемых расходов, ограничивая скорость запросов, повторяя их с увеличивающейся задержкой и управляя квотами для отдельных пользов… Ты практикуешь AI Agents with LangChain & Autonomous Workflows с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать AI Agents with LangChain & Autonomous Workflows?

Предыдущий опыт не требуется. AI Agents with LangChain & Autonomous Workflows на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.

Сколько времени занимает урок «Ограничение частоты и управление квотами API»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке AI Agents with LangChain & Autonomous Workflows?

Да. Каждый урок AI Agents with LangChain & Autonomous Workflows включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Развертывание агентов на облачных платформах
  2. Управление состоянием и сеансами агентов
  3. Масштабирование архитектур агентов
  4. Ограничение частоты и управление квотами API
← Назад к AI Agents with LangChain & Autonomous Workflows