Ошибка 429: что делать, если gemini-2.5-flash-lite не отвечает
Код 429 означает, что сработало ограничение скорости: число запросов или токенов за единицу времени превысило квоту вашего тарифа.
429 Too Many Requests — это ответ об ограничении скорости, а не ошибка. Сам запрос корректен, но превышена допустимая скорость или параллельность для вашего тарифа. Достаточно повторить запрос с задержкой в пределах окна из заголовков ответа; менять тело запроса не нужно.
gemini-2.5-flash-lite предоставляется компанией Google. Всё на этой странице — причины, решения и измеренные данные — собрано по реальной работе этой модели на уровне шлюза.
В этом шлюзе самая частая причина — Слишком много параллельных запросов. Рекомендуемое первое действие: Ограничьте параллельность и добавьте экспоненциальную задержку.
Возможные причины
- Слишком много параллельных запросов
- Квота текущего тарифа исчерпана
- Повтор без задержки после отказа
Как исправить
- Ограничьте параллельность и добавьте экспоненциальную задержку
- Переключитесь на тариф с большей квотой
- Кэшируйте повторяющиеся запросы
Повтор с экспоненциальной задержкой
Ниже — пример повтора, когда gemini-2.5-flash-lite возвращает 429: до 5 попыток, ожидание растёт и добавляется случайный джиттер, чтобы параллельные запросы не повторялись одновременно. Base URL и API key читаются из переменных окружения — не хардкодьте их.
import os, time, random
import requests
BASE = os.getenv("OPENAI_BASE_URL") # e.g. https://<your-gateway>/v1
KEY = os.getenv("OPENAI_API_KEY")
MODEL = 'gemini-2.5-flash-lite'
def chat(messages, retries=5):
"""Retry with exponential backoff + jitter."""
for i in range(retries):
try:
r = requests.post(
BASE + "/chat/completions",
headers={"Authorization": "Bearer " + KEY},
json={"model": MODEL, "messages": messages, "stream": True},
timeout=60,
)
if r.status_code == 429 or r.status_code >= 500:
time.sleep(min(2 ** i + random.uniform(0, 1), 30))
continue
r.raise_for_status()
return r.json()
except requests.exceptions.Timeout:
time.sleep(min(2 ** i + random.uniform(0, 1), 30))
raise RuntimeError("gave up after " + str(retries) + " retries")
print(chat([{"role": "user", "content": "hello"}]))Ключевые данные этой модели
| TPS | 443.14 |
|---|---|
| Средняя задержка | 1298 мс |
| Успешных запросов | 100% |
| API-эндпоинт | https://api.airai.cc/v1 |
| Совместимо с OpenAI | OpenAI-compatible |
| Производитель | |
|---|---|
| Контекст | 1M |
| Возможности | Reasoning, Tools, Files, Vision, Audio |
| Форматы API | openai, openai-response, openai-response-compact, anthropic, gemini, openai-alpha-search |
| Формула биллинга | p * 0.1 + cr * 0.01 + ai * 0.3 + c * 0.4 |
Частые вопросы
Как использовать заголовок Retry-After в ответе?
Повтор — самый эффективный первый шаг. Измеренная доля успеха — 100%, поэтому первый повтор обычно даёт наибольшую отдачу. При тарифе p * 0.1 + cr * 0.01 + ai * 0.3 + c * 0.4 неудачные запросы не идут в использование. Установите лимит повторов 3–5 и добавьте jitter. Для повторяемых ошибок используйте экспоненциальную задержку, для остальных возвращайте ошибку сразу.
Что логировать, когда 429 повторяется часто?
Сгруппируйте ошибки по времени и узлу: закономерность обычно видна сразу. Измеренная доля успеха — 100%, большинство отказов выглядят как 429. Модель предоставляется Google, поэтому статус upstream определяется объявлениями вендора. Сначала воспроизведите это в тестовом окружении с тем же телом запроса.
Когда gemini-2.5-flash-lite возвращает 429, что вероятнее: шлюз или upstream?
Эта ошибка не связана с возможностями модели, это уровень шлюза. Как правило это кратковременный сбой, который проходит сам. Теги возможностей модели: Reasoning, Tools, Files, Vision, Audio. Если ошибка длится несколько минут, обратитесь в поддержку платформы и уточните статус upstream. Сначала решите, что это: уровень аккаунта или уровень модели — это полностью меняет обработку.
Длинный контекст повышает вероятность 429?
Нужно менять параметры запроса, один повтор не поможет. Это проблема конфигурации клиента, на сервере менять ничего не нужно. Окно контекста 1M задаёт максимальный ввод за запрос; всё, что больше, отклоняется сразу. Для ошибок параметров сразу возвращайте ошибку, не тратя повторы.
Другие ошибки этой модели
- gemini-2.5-flash-lite: ошибка timeout — причины и решение
- gemini-2.5-flash-lite: ошибка 500 — причины и решение
- gemini-2.5-flash-lite: ошибка 502 — причины и решение
- gemini-2.5-flash-lite: ошибка 503 — причины и решение
- gemini-2.5-flash-lite: ошибка 504 — причины и решение
- gemini-2.5-flash-lite: ошибка 401 — причины и решение
- gemini-2.5-flash-lite: ошибка 403 — причины и решение
- gemini-2.5-flash-lite: ошибка 400 — причины и решение
Другие модели с той же ошибкой
- gpt-5
- claude-opus-5
- gemini-2.5-pro
- deepseek-v4-pro
- grok-4.3
- llama-3.3-70b-instruct
- qvq-max
- qwq-32b
- glm-5
- MiniMax-M3
- kimi-k3
- hy3
- doubao-seed-evolving
- mimo-v2.5
- gpt-4o
- claude-opus-4-6
Данные обновлены: 2026-10-10 18:35