cicora.ai
Спецификация APIПакетное выполнение

Пакетное выполнение

Обрабатывайте независимые операции контролируемыми группами, когда сценарий допускает асинхронную выдачу.

Справочник интеграции: выбирайте параметры и доступные возможности из API-настроек аккаунта и каталога модели для своего окружения.

Ограничьте параллельность

Используйте ограниченную очередь на стороне клиента и отправляйте каждую работу через обычный совместимый запрос. Так можно контролировать нагрузку без предположения о серверном batch-endpoint.

Пакетный режим сервиса — отдельный договор API: используйте его путь и тело только после публикации в настройках аккаунта или спецификации.

Client-controlled bounded parallelism
typescript
async function runWithLimit(items, limit, work) {
  const results = [];
  for (let offset = 0; offset < items.length; offset += limit) {
    const group = items.slice(offset, offset + limit);
    results.push(...await Promise.all(group.map(work)));
  }
  return results;
}

Контроль очереди

  • Делайте внутренний id задания детерминированным и уникальным в рамках запуска.
  • Разбивайте слишком большой набор на управляемые группы.
  • Отделяйте ошибки отдельных элементов от сбоя всей очереди.

Сбор результата

Сопоставляйте результат с внутренним id и сохраняйте статус каждой работы.

Не повторяйте автоматически все задания: повторяйте только временные сбои после проверки идемпотентности.