Restate для AI-агентов: как продолжать работу после сбоя
AI-агент может собрать данные, вызвать несколько сервисов, дождаться согласования и записать результат в CRM. Если процесс оборвался перед последним шагом, обычный повтор способен создать вторую заявку, повторно списать деньги или отправить клиенту два письма. Надёжность AI-агентов начинается с точного ответа на вопрос: какие действия уже завершены и с какого шага можно продолжить работу.
30 сентября 2026 года Restate объявила о раунде Series A на $20 млн. В сообщении компания связала свою инфраструктуру Durable Execution с долгими агентными сценариями. Для бизнеса новость ставит практический вопрос: как сохранить состояние задачи, пережить отказ сервиса и показать оператору историю действий.
Переживёт ли агент сбой?
Выберите безопасный следующий шаг после сбоя.
1. Тайм-аут CRM
CRM создала карточку, но агент получил тайм-аут. Что делать?
2. Ожидание согласования
Агент ждёт согласования договора после рестарта. Что делать?
3. Нет ответа от почтового API
Почтовый API не подтвердил отправку. Что делать?
Счёт: 0 из 3
Что произошло: новость Restate и её значение для бизнеса
Раунд возглавил Singular; среди участников Restate назвала Redpoint Ventures и Capital One Ventures. Компания развивает среду исполнения, которая записывает ход программы и помогает ей восстанавливаться после перезапуска. По словам Restate, агент может выполнять множество вызовов моделей и инструментов, делать паузы, ждать человека и повторять отдельные операции. Чем длиннее цепочка, тем больше действий придётся проверить после сбоя.
В документации Restate по AI-агентам описаны устойчивые вызовы моделей и инструментов, состояние сессий, маршрутизация задач, согласования, журналы исполнения и управление зависшими процессами. Это набор инфраструктурных возможностей. Качество ответа модели и правила доступа к данным проверяют отдельно. Владелец процесса должен измерить, сколько задач дошло до конца без дублей и потери контекста, а также сколько времени команда потратила на исключения.
Restate приводит пример Replit Agent, перенесённого на её среду исполнения. Это заявление поставщика о клиентском внедрении, а не универсальный результат для любой компании. Свои показатели надёжности придётся измерять на собственных задачах.
Почему длинный сценарий AI-агента ломается
Представим агента, который обрабатывает входящую заявку. Он классифицирует запрос, проверяет данные клиента, создаёт карточку, предлагает ответ менеджеру и после согласования отправляет письмо. На каждом переходе возможны сетевой тайм-аут, лимит API, перезапуск процесса или ошибка внешнего сервиса.
Особенно опасен разрыв между действием и ответом инструмента. CRM могла создать карточку, а соединение оборвалось до подтверждения. Агент видит ошибку и пытается создать карточку снова. Для безопасного продолжения нужны сохранённые результаты шагов, устойчивые идентификаторы операций и правила проверки состояния внешней системы.
Похожая проблема возникает при ожидании человека. Менеджер уже согласовал документ, но процесс перезапустился до записи ответа. При возобновлении агент должен найти решение по идентификатору задачи и версии документа. Иначе он может отправить согласованный файл на повторную проверку или продолжить работу с устаревшим текстом.
Управляемая схема включает:
- идентификатор задачи, который проходит через все вызовы;
- сохранение результата каждого значимого шага;
- идемпотентность действий с внешними последствиями, например создания счёта;
- ограничение числа повторов и отдельный путь для ошибки;
- точку, где человек утверждает рискованное действие;
- журнал, по которому можно восстановить последовательность.
Эти требования полезны при выборе любого инструмента. Подробно о ролях и контроле мы писали в материале «AI офис для бизнеса: как устроена система ролей, оркестратор и контроль». Перед пилотом зафиксируйте владельца каждого перехода и список действий, требующих подтверждения.
Как работает Durable Execution в агентном процессе
Идея Durable Execution состоит в том, что среда исполнения сохраняет ход работы. После сбоя агент продолжает цепочку с учётом уже завершённых шагов. В Restate разработчик оборачивает вызовы модели и инструментов в устойчивые операции; документация показывает такой приём через `ctx.run()`. Для сессий и совместного состояния платформа предлагает отдельные примитивы.
Это особенно важно внутри цикла агента. Если сохранять только начало и конец длинного сценария, авария между ними может заставить повторить всю цепочку. Сохранение отдельных операций помогает продолжить работу с нужного участка. При этом внешняя система должна поддерживать безопасный повтор: платёжный шлюз, CRM и почтовый сервис работают за пределами среды агента.
Разделите операции на две группы. Чтение данных можно повторить, если результат остаётся актуальным для задачи. Создание записи, списание и отправка сообщения имеют внешние последствия. Для них нужен ключ идемпотентности или проверка результата по уникальному идентификатору. Если сервис не поддерживает такой механизм, предусмотрите ручной разбор неопределённого результата. Сама запись шага в Restate не подтверждает, что удалённая система выполнила действие ровно один раз.
В карте процесса укажите для каждого внешнего действия способ проверки: запрос по ID заказа, поиск письма по идентификатору отправки или сверка статуса платежа. Запишите также ответственного за случай, когда сервис недоступен и подтвердить итог нельзя. Такой список помогает разработчику задать правило повтора, а руководителю — понять, какие операции потребуют ручного решения.
Например, агент подготовил проект договора, отправил его на юридическое согласование и ждёт ответа два дня. После рестарта он должен помнить документ, версию, ответственного и статус. Когда согласование пришло, процесс продолжается с утверждённой версии. При просрочке задача уходит человеку. История действий остаётся доступной для разбора.
Документация Restate описывает согласования с паузой и возобновлением, а также просмотр журнала исполнения и остановку зависших агентов. Перед пилотом проверьте эти механизмы на своём сценарии, особенно если он связан с заявками, деньгами или персональными данными.
Где технология даст пользу, а где добавит сложность
Первый кандидат — агент с длинной цепочкой действий и внешними последствиями. Например, обработка заказа, формирование коммерческого предложения, сверка документов, обновление нескольких систем или передача задачи между отделами. Здесь потеря состояния превращается в ручной разбор и риск дублирования.
Второй кандидат — сценарий с ожиданием человека. Согласование бюджета, текста договора или публичного ответа иногда длится часы. Процессу нужны срок ожидания, уведомление ответственного, повторное назначение и ясный статус для руководителя.
Для одношагового поиска по базе знаний отдельная среда устойчивого исполнения может оказаться лишней. Измерьте частоту сбоев, цену ошибки и сложность восстановления. Сравните эти затраты с внедрением и сопровождением инфраструктуры.
При оценке учитывайте и срок жизни задачи. Короткий запрос завершается за один сеанс; согласование договора может длиться несколько дней. Чем дольше процесс ждёт внешнего события, тем важнее договориться о сроке ожидания, ответственном за просрочку и способе закрыть задачу без потери истории.
Если AI-офис размещается на сервере клиента, заранее обсудите резервное копирование, доступ команды сопровождения, сеть и хранение журналов. Для выделенного контура можно рассмотреть сервер Beget; конкретную конфигурацию выбирают после оценки нагрузки и требований к данным.
Пилот AI-агента с восстановлением: пять шагов
1. Выберите один измеримый процесс
Хороший пилот — повторяемая задача, в которой можно посчитать объём, время обработки и число ручных исправлений. Зафиксируйте точку старта и критерий завершения. Для первой проверки не берите процесс, где агент сразу получает право совершать необратимые действия.
2. Составьте карту шагов и ошибок
Отметьте модельные вызовы, обращения к API, ожидание человека и записи в рабочие системы. Для каждого шага запишите результат, который нужно сохранить. После тайм-аута система должна проверить текущее состояние и выбрать правило продолжения. Отдельно отметьте операции, для которых повтор без проверки создаст второе письмо, карточку или платёж.
3. Ограничьте полномочия
Выдайте агенту доступ только к нужным данным и действиям. Отдельно определите операции с подтверждением человека: отправка клиенту, изменение суммы, удаление записи. Журнал должен связывать задачу, исполнителя, вызов инструмента и итог. Дополнительные принципы описаны в статье «Безопасность AI-агентов для бизнеса».
4. Проведите испытание сбоями
Остановите процесс после каждого значимого шага, имитируйте тайм-аут API и задержку согласования. Проверьте два варианта: операция во внешнем сервисе отсутствует; операция завершилась, а ответ потерялся. После возобновления сравните журнал агента с данными CRM, почты или платёжной системы. Карточка, платёж либо письмо должны соответствовать одному подтверждённому решению. Успешный запуск по обычному пути ещё не показывает, как процесс переживёт отказ.
5. Измерьте результат и закрепите владельца
Считайте долю задач, дошедших до конца, число дублей, время восстановления и объём ручного разбора. Сохраняйте причину каждой остановки: сбой модели, ошибка API, отсутствие ответа человека или нарушение правила доступа. Назначьте ответственного за исключения и просмотр журналов. Решение о расширении пилота принимайте по этим данным и цене сопровождения.
Что спросить у подрядчика перед внедрением
Попросите показать на вашем сценарии, как система отличает завершённый шаг от незавершённого. Уточните, где хранятся история и данные, как их резервируют и сколько времени сохраняют. Проверьте, можно ли остановить конкретную задачу, кто видит её журнал и как происходит повтор после ошибки внешнего API.
Попросите продемонстрировать дублирование события: один и тот же входящий запрос должен дать один ожидаемый результат. Затем проверьте работу согласования: кто получает уведомление, что происходит после просрочки и как фиксируется решение человека. Такой показ полезнее общего обещания «устойчивых агентов».
Уточните границу ответственности Restate и внешних систем. Если почтовый сервис принял письмо и вернул ошибку соединения, каким запросом команда узнает его настоящий статус? Какой идентификатор она передаст при повторе? Кто вправе вручную закрыть зависшую задачу? Попросите показать эти действия на тестовом стенде с журналом и записью в целевой системе.
Проверьте также путь обновления сценария. Долгая задача может ожидать согласования, пока разработчики выпускают новую версию кода. Команде нужно решить, продолжит ли она работу по старым правилам, как обработает изменённые поля и где увидит версию, с которой задача стартовала. Запишите это решение до пилота; иначе ошибка проявится лишь после первого обновления работающего процесса.
Restate — один из способов собрать этот слой. Выбор платформы зависит от архитектуры компании, компетенций команды и требований к размещению. Сначала определите правила процесса и метрики. Тогда инфраструктуру можно оценивать по делу.
Вывод
Новость Restate от 30 сентября 2026 года показывает рост интереса к устойчивому исполнению долгих программ, включая AI-агентов. Для бизнеса практический вывод прост: агенту нужны сохранённые шаги, безопасный повтор внешних действий, согласование человеком и история, доступная для проверки. Начните с одного процесса и испытайте сбои до расширения контура.
Если хочешь внедрить ИИ агентов в свой бизнес, но не знаешь с чего начать, пиши мне в телеграм t.me/berdoff, я проведу бесплатную консультацию, поделюсь своим опытом