Ограничение частоты и управление квотами API
Защищайте рабочие агенты от ограничений частоты поставщика и неконтролируемых расходов, ограничивая скорость запросов, повторяя их с увеличивающейся задержкой и управляя квотами для отдельных пользователей.
«Ограничение частоты и управление квотами 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
InMemoryRateLimiterto 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 — локальная установка не требуется.
Все уроки этого курса
- Развертывание агентов на облачных платформах
- Управление состоянием и сеансами агентов
- Масштабирование архитектур агентов
- Ограничение частоты и управление квотами API