Кейс
Почему кнопка Stop в AI-инструменте не останавливает работу и что это стоит
Кнопка Stop в AI-инструменте часто останавливает только видимую часть работы, а задачи в очереди и запоздавшие результаты продолжают оплачиваться. Мы разобрались, почему так вышло в инструменте, который сделали для клиента, и что должна делать настоящая остановка.
Главное
- Кнопка Stop хороша настолько, насколько далеко она достаёт.
- Запись момента отмены позволяет отличить запоздавшую работу от той, которую кто-то запросил позже.
- Автоматический режим может запустить следующий шаг после остановки, поэтому выключайте его до отмены.
- Запрос, уже отправленный в платный AI-сервис, может быть оплачен, даже если его результат выбрасывается.
- Готовые части должны переживать отмену, чтобы рендер можно было начать с того места, где он остановился.
Теперь у клиента одна кнопка Cancel, и нажатие на неё останавливает рекламу везде, где над ней идёт работа. Изменение заработало примерно через день на проектирование, сборку и проверку, и оно убрало проблему, когда кнопка Stop в AI-инструменте оставляла остальную работу идти. До этого нажатие Stop останавливало только ту часть работы, которую видели люди, пользующиеся инструментом.
Что значит «кнопка Stop в AI-инструменте всё ещё работает» для вашего счёта
Реклама, сделанная с помощью AI, — это не одна задача, а много, и каждый шаг, который продолжается после Stop, тратится на результат, который никому не нужен.
Видеореклама разбивается на части: рисуются картинки, переделываются отдельные строки сценария, меняется голос и идёт финальный рендер, который всё собирает. Каждая часть обращается к платному AI-сервису, который оплачивается по факту использования, поэтому остановка, дошедшая только до одной части, оставляет остальные работать и тратить деньги.
Она ещё и забирает мощности у той рекламы, которая нужна. А запоздавший результат может записаться в отменённую рекламу и вернуть к жизни решение, которое уже было принято.
Почему так происходит у компаний, которые пользуются AI-инструментами
Stop обычно рассчитан на один вид работы, а реклама — это много видов работы во многих местах одновременно.
Инструмент, который делает картинки, голос и видео, редко делает всё это в одном месте. Он передаёт каждую часть другой своей части или внешнему сервису, и у каждой своя очередь и свой способ сообщать о результате. Кнопка на экране часто обращается только к одной из них.
Две бреши делают хуже. Нигде не фиксируется момент остановки, поэтому работу, которая уже ждёт или приходит с опозданием, нельзя распознать как ненужную. А автоматический режим, настройка, которая сама запускает следующий шаг, может сделать именно это после Stop.
Что нашли наши инженеры, когда проследили это
Наши инженеры начали с того, что перечислили всё, что может идти одновременно для одной рекламы, и нашли больше десятка видов работы.
Они находятся в разных местах: сама платформа, движок, который планирует и делает клипы, аккаунты, которые создают AI-видеоклипы, и отдельные машины, которые рендерят финальное видео. Прослеживание работы одной рекламы по всем им объяснило то, что видели люди, пользующиеся инструментом.
Задача, уже ждущая в очереди, могла запуститься через минуту после остановки. Машина, которая была недоступна, могла позже закончить рендер и прислать его. Запоздавший результат мог снова пометить рекламу как работающую. А поскольку кто-то мог нажать Start через секунду после Stop, системе приходилось отличать работу, запрошенную до остановки, от работы, запрошенной после неё.
Этим дело не кончилось. Первая версия прошла шесть кругов проверки, и каждый круг находил более узкий случай, когда два события в один и тот же момент всё ещё могли проскочить.
Что мы изменили
Теперь у клиента одна кнопка Cancel, и нажатие на неё останавливает рекламу везде, где над ней идёт работа.
Её можно нажать для одной рекламы или для нескольких сразу. Нажатие сначала выключает автоматический режим, записывает точный момент отмены, затем помечает как неудавшиеся все шаги, идущие для этой рекламы, и сразу сообщает каждой задействованной части, чтобы она отбросила работу по этой рекламе, начатую до этого момента.
Три детали делают основную работу:
- Задачи, которые ещё ждут в очереди с момента до отмены, отбрасываются без запуска.
- Результаты, которые приходят с опозданием, выбрасываются, а не записываются в рекламу.
- Машинам, которые были недоступны, через несколько минут сообщают ещё раз, чтобы вернувшаяся машина не закончила тихо старую задачу.
После этого ничего по этой рекламе не запускается само. Она ждёт, пока кто-то снова не нажмёт Start, Render или автоматический режим. Всё уже сделанное сохраняется, поэтому рендер можно начать заново с того, что есть, а не с нуля.
Подтверждение честно говорит одно: запрос, уже отправленный в AI-сервис, всё равно завершится и может быть оплачен, но то, что вернётся, не используется.
Как обстоят дела сейчас
Изменение работает в инструменте, которым пользуется клиент. Одно нажатие останавливает рекламу везде, где над ней идёт работа, ничего не перезапускается само, и расходы прекращаются вместе с этим, кроме вызовов, которые уже в пути.
Короткое руководство для тех, кто пользуется инструментом, объясняет, как это работает.
Что вы можете проверить сами
- Нажмите Stop в своём AI-инструменте и некоторое время после этого смотрите на страницу расходов. Если цифра продолжает расти, что-то ещё работает.
- Спросите поставщика, что происходит с задачей, которая уже ждёт в очереди, когда вы нажимаете Stop. «Она отбрасывается» и «она всё равно выполняется» — очень разные ответы.
- Поищите автоматический или запланированный режим и посмотрите, может ли он запустить следующий шаг после остановки. Выключайте его до отмены, а не после.
- Спросите, может ли запоздавший результат перезаписать решение, которое кто-то принял после того, как попросил об остановке.
- Спросите, что происходит с запросом, который уже отправлен в платный AI-сервис, ведь именно эту часть никакая кнопка не вернёт.
Что делать дальше
Если вы платите за работу AI по факту использования, полезный вопрос о любом инструменте — не есть ли у него кнопка Stop, а до чего эта кнопка достаёт. Задайте его про сам инструмент, про того, кто его вам настроил, и про всех, чьи люди пользуются тем же аккаунтом. А потом запишите ответ, потому что это как раз то, что все считают само собой разумеющимся, пока страница расходов не скажет обратное.
Сделать так, чтобы Stop действительно останавливал, во всех частях инструмента, который передаёт работу другим частям и платным сервисам, — как раз такая задача, которую наши инженеры выполняют для клиентов.
Частые вопросы
Почему мой AI-инструмент продолжает списывать деньги после нажатия Stop?
Потому что Stop часто доходит только до той части инструмента, которая показывает ход работы. Остальная работа может ждать в очереди или уже быть отправлена в платный AI-сервис, и эти части могут продолжаться и оплачиваться. Быстрее всего увидеть, происходит ли это, — смотреть на страницу расходов после остановки.
Что происходит с задачей, которая уже ждёт в очереди, когда я отменяю?
Попросите поставщика сказать это прямо, потому что всё зависит от инструмента. Задача в очереди может всё равно запуститься, когда подойдёт её очередь, если инструмент не был сделан так, чтобы отбрасывать работу, поставленную в очередь до отмены. Если ответ неясен, считайте задачу ещё идущей, пока страница расходов не перестанет меняться.
Может ли автоматический режим перезапустить работу, которую я отменил?
Автоматический или запланированный режим может сам запустить следующий шаг и не знает, что кто-то нажал Stop мгновением раньше. Выключите его до отмены и спросите, делает ли это остановка за вас. Если нет, работа может перезапуститься без чьего-либо запроса.
Можно ли вернуть деньги за запрос к AI, который уже был отправлен?
Как только запрос дошёл до платного AI-сервиса, он завершается и может быть оплачен; никакая кнопка не вернёт его. Инструмент может отказаться от результата, так что то, что вернётся, не используется, но сам вызов остаётся. Спросите поставщика, перекладывает ли он эту оплату на вас.
Потеряю ли я уже сделанные части рекламы, если отменю?
Инструмент, сделанный с учётом отмены, должен сохранять каждую готовую часть. Тогда можно снова нажать Render и начать с того, что есть, а не с нуля. Попросите поставщика подтвердить, что отмена не удаляет завершённую работу.