Очередь, ожидание и ошибки генерации

Обновлено

Запуск генерации не даёт результат мгновенно — сначала Строфи резервирует кредиты и ставит задачу в общую очередь. Что происходит дальше, пока задача ждёт или уже выполняется, и что делать, если что-то пошло не так — по шагам ниже.

Что происходит сразу после запуска генерации

Строфи сразу удерживает нужное количество кредитов из вашего баланса — резервирует их, но пока не списывает окончательно. Это гарантирует, что кредитов хватит к моменту, когда генерация дойдёт до результата.

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

Кредиты списываются окончательно только в момент, когда генерация завершается успешно. Если задача не доходит до этого момента — из-за отмены или ошибки, — зарезервированные кредиты автоматически возвращаются на баланс.

Кто продвигается в очереди быстрее

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

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

Как узнать, сколько ждать

В настройках проекта, в разделе «Эксперименты», есть переключатель «Индикация прогресса» — по умолчанию он выключен, включить нужно вручную. После включения на блоке во время генерации появляется таймер обратного отсчёта до ожидаемого времени завершения для выбранной модели.

Если генерация не уложилась в это время, таймер сменяется сообщением, что осталось подождать ещё немного. Если она длится вдвое дольше обычного — сообщением, что процесс почти завершён. Без включённой подсказки на блоке во время генерации виден обычный индикатор загрузки, без таймера.

Когда генерацию ещё можно отменить

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

Список задач в очереди появляется, если навести курсор на счётчик кредитов в шапке проекта. Рядом с каждой задачей, которая ещё ждёт своей очереди, есть кнопка «Отмена». У задачи, которая уже выполняется, такой кнопки нет — вместо неё показан индикатор, что генерация идёт.

При отмене задачи из очереди зарезервированные кредиты сразу возвращаются на баланс.

Что означает ошибка генерации

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

Второй — техническая ошибка: сервис генерации оказался перегружен, соединение прервалось, генерация не уложилась в отведённое время или произошёл сбой на стороне Строфи. Здесь повторный запуск часто помогает.

В обоих случаях кредиты за неудачную генерацию не списываются — резерв возвращается на баланс.

Часть сбоев Строфи устраняет сама и до блока их не доводит: платформа успевает повторить попытку, и вы видите только конечный результат. Единого правила, сколько будет таких попыток, нет — это зависит от сервиса генерации и от того, на каком этапе произошёл сбой. Важно другое: если ошибка всё-таки показана на блоке, она окончательная — автоматических попыток больше не будет, и решение за вами.

Что будет, если удалить блок во время генерации

Если удаляемый блок ещё стоит в очереди и не начал генерироваться, Строфи предупредит об этом, а после подтверждения отменит задачу и вернёт зарезервированные кредиты на баланс.

Если генерация по этому блоку уже выполняется, предупреждение будет другим: удаление всё равно остановит генерацию, но кредиты не вернутся — запрос уже оплачен сервису генерации.