Перейти к основному содержанию
LocoPal AiLocoPal Ai
Помощь и справочник

Руководство

Ограничения частоты и квоты

Лимиты параллельных задач, ограничения частоты запросов, квоты и ёмкость аккаунта, а также повторные попытки с задержкой

Показать Markdown

Ограничения частоты и квоты

Ограничения платформы делятся на несколько категорий, и проявляются они по-разному. Чтобы быстро реагировать, важно понимать, к какой категории относится ограничение.

Тип ограниченияПроявление при срабатыванииКак обрабатывать
Частота запросов (ограничение частоты)HTTP 429 «Слишком много запросов»Повторите с задержкой, не повторяйте параллельно
Параллельные асинхронные задачиHTTP 429, task_concurrency_exceededДождитесь завершения существующих задач, затем отправляйте
Квота KeyСообщение о недостатке баланса/квоты, задача не создаётсяПополните баланс, измените квоту Key или уменьшите запрос
Баланс аккаунтаСообщение о недостатке баланса для покрытия предварительной оценкиПополните кошелёк
Ёмкость материаловПроверка формата и размера при отправке материалаИсправьте файл или используйте image_url

Ограничение частоты запросов

Платформа ограничивает частоту запросов. Слишком частый опрос, слишком высокая параллельность или массовые повторные попытки за короткое время могут вызвать:

{ "error": { "code": "...", "message": "请求过于频繁" } }

HTTP-статус — 429.

Правильный подход:

  • после получения 429 сделайте паузу: подождите некоторое время перед следующим запросом, не отправляйте сразу;
  • не пытайтесь обойти ограничение параллельными запросами — это лишь увеличит время ожидания;
  • при опросе асинхронных задач используйте фиксированный разумный интервал (например, раз в несколько секунд), не опрашивайте без пауз.

Не повторяйте вслепую при кодах, отличных от 429:

Код статусаОбработка
429Сделайте паузу по указанию и повторите
Кратковременный 5xxСохраните RequestId и повторите один раз после паузы
400Проблема с параметрами — исправьте запрос и отправьте снова
401Key недействителен или отключён — проверьте ключ
403Нет прав на доступ к ресурсу или модели
404Ресурс не существует — проверьте ID

Параллельные асинхронные задачи

Асинхронные задачи, например видео, ограничены лимитом параллельных задач, который действует на уровне отдельного аккаунта и на уровне всей платформы. При достижении лимита возвращается HTTP 429 с кодом ошибки task_concurrency_exceeded, а в сообщении указывается «текущее N / лимит M».

В этом случае следует:

  1. сохранить ID существующих задач и не отбрасывать их;
  2. дождаться перехода выполняющихся задач в терминальное состояние (или запросить их текущий статус);
  3. отправлять повторно только после ожидания и по инициативе пользователя, не повторять подряд;
  4. не отправляйте одну и ту же задачу повторно, чтобы «занять» параллельный слот, — это создаст дублирующиеся задачи и повторные расходы.

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

Квота Key и баланс аккаунта

Квота и баланс — это два уровня ограничений:

УровеньОписание
Квота KeyЛимит использования и срок действия, заданные для Key в разделе «Ключи API» консоли
Баланс аккаунтаДоступный баланс, квота тарифа или баллы всего аккаунта LocoPal

Перед отправкой асинхронной задачи платформа проверяет, покрывает ли баланс предварительную оценку расхода. При недостатке возвращается читаемое сообщение и задача не создаётся, поэтому в этом случае расходы не возникают.

Как обрабатывать:

  • недостаточная квота Key → измените квоту или срок действия этого Key в разделе «Ключи API»;
  • недостаточный баланс аккаунта → пополните «Кошелёк» или используйте тариф;
  • слишком большая предварительная оценка → уменьшите разрешение, длительность или переключитесь на меньшую модель.

Рекомендуется на бэкенде заранее проверять баланс и показывать конечному пользователю понятное сообщение, а не передавать ему ошибку платформы напрямую.

Ограничения материалов

Интерфейс материалов проверяет загружаемые данные:

ОграничениеПроявлениеОбработка
Формат адресаimage_url 必须是可公开下载的 http(s) 地址…Используйте адрес http(s), доступный для прямой загрузки из публичной сети
Один тип за разimage_url 与 data_url 只能提交一个Оставьте только одно поле
Размер данных图片数据无效或超过 20MBСожмите изображение или используйте image_url
Тип группы素材分组不存在或不是虚拟素材分组Изображения можно отправлять только в группу virtual
Длина названияНазвание группы не может быть пустым и не должно превышать 64 символа; описание — не более 300 символовИсправьте название или описание

Незавершённая проверка материала — не ошибка: при запросе возвращается 200 со status = Processing; продолжайте опрашивать с тем же ID материала, не отправляйте повторно.

Рекомендации по опросу

Запросы асинхронных задач не создают расходов, но слишком частый опрос вызывает ограничение частоты.

Этап задачиРекомендуемый интервал
Только что отправлена (в очереди)Раз в несколько секунд
ГенерацияРаз в несколько секунд — до десяти-двух десятков секунд
Достигнуто терминальное состояниеПрекратите опрос

У опроса должен быть общий лимит времени. По достижении лимита прекратите запросы и верните пользователю ID задачи, чтобы он мог позже продолжить запросы по ID — не создавайте задачу заново.

Идемпотентность и повторные отправки

Платформа не объединяет одинаковые запросы автоматически. Даже при полностью одинаковых промпте, параметрах и референсных материалах каждая отправка создаёт новую задачу и новый результат, и каждая тарифицируется отдельно.

Поэтому:

  • используйте идемпотентные ключи на стороне бизнеса (номер заказа, бизнес-ID), чтобы повторные нажатия пользователя не приводили к повторной отправке;
  • сразу после отправки асинхронной задачи сохраняйте ID задачи в базе данных; при обрыве сети восстанавливайте состояние запросами, а не повторным созданием;
  • только при нажатии «Повторить напрямую» для одного и того же неудачного результата выполнение повторяется на месте — это также создаёт новую задачу и новые расходы.
Эта страница была полезной?

На этой странице