ИИ-агент получает событие, собирает нужный контекст, выбирает разрешённое действие и вызывает рабочий инструмент: API, поиск по базе, создание документа или уведомление менеджера. Языковая модель становится частью агента после подключения данных, прав, проверок и журнала действий. В наших проектах такой контур отвечал в Avito с проверкой остатка, искал свободное время в YCLIENTS и собирал черновик коммерческого предложения из тендерного ТЗ. В этих контурах цена, запись и отправка клиенту проходили через кодовые правила, а сомнительные случаи уходили человеку.
Из чего состоит агент
У обычного диалога с моделью есть текст на входе и текст на выходе. У агента между ними появляется рабочий цикл:
событие
→ контекст из разрешённых источников
→ выбор действия
→ вызов инструмента
→ проверка результата
→ ответ, запись в систему или передача человекуСобытием может быть новое сообщение, загруженный PDF, изменение записи в CRM или оплаченный заказ. Контекстом служат карточка товара, расписание, история обращения, корпоративный справочник. Инструменты обычно представляют собой небольшие функции с понятным контрактом: check_stock, find_slots, create_record, build_quote.
Модель решает, какой инструмент нужен и какие аргументы подготовить. Код проверяет допустимость операции, права, формат и результат. Такое разделение полезно: языковая модель хорошо понимает свободный текст, но не должна придумывать остаток, цену или успешную запись.
Как это выглядело в наших проектах
В DOLOROSA покупатель пишет по конкретному объявлению Avito. Канал загружает контекст объявления, связывает его с карточкой в МойСкладе и отдельно проверяет наличие. Цену для разговора берёт Avito, потому что она могла отличаться от учётной. Если менеджер уже ответил, агент замолкает.
В EST.EPIL агент подбирает услугу и филиал, запрашивает сотрудников, даты и свободное время через YCLIENTS. Создание записи выполняется отдельным API-вызовом. История клиента требует другого уровня доступа, поэтому техническому пользователю нужны права конкретного филиала.
В пилоте REGION SNAB входом служил PDF, Excel или изображение с техническим заданием. Система извлекала позиции, искала товар во внутренних источниках, отделяла точное совпадение от аналога и собирала Excel/PDF. Строки без надёжного источника помечались для проверки менеджером.
Где заканчивается модель и начинается автоматизация
Фраза «у нас есть промт» ещё не означает, что система готова к работе. В DOLOROSA модель могла красиво описать отсутствующий дефект или назвать цену из неверного источника. Исправление появилось не в виде ещё одного общего запрета. Перед отправкой код стал проверять цену, наличие и подтверждение каждого чувствительного факта.
Рабочий агент обычно имеет:
- узкий набор разрешённых инструментов;
- минимальные права к внешним системам;
- состояние, которое переживает перезапуск;
- защиту от повторной записи;
- журнал вызовов без лишних персональных данных;
- понятную эскалацию человеку.
Какие задачи подходят
Хороший кандидат имеет повторяемое событие и проверяемый результат. Например, проверить наличие, подобрать свободный слот, классифицировать строку ТЗ, заполнить документ или создать задачу менеджеру.
Плохой первый кандидат сформулирован как «пусть ИИ сам ведёт весь отдел». В такой задаче нет границ, контрольной выборки и одного результата, который можно принять или отклонить.
Начинать стоит с одного маршрута. Берём реальные входные данные, фиксируем правильный результат и отдельно выписываем исключения. После этого становится видно, где достаточно обычной автоматизации, где нужна модель и где решение остаётся у сотрудника.
Как проверить, что это агент, а не демонстрация
Попросите показать один полный проход. Откуда пришло событие? Какие данные система получила? Какой инструмент вызвала? Что записала обратно? Что произойдёт при таймауте, дубле или недостатке прав? Где сотрудник увидит ошибку?
Если ответы сводятся к красивому сообщению в тестовом чате, это прототип интерфейса. Рабочая автоматизация подтверждается API-вызовом, состоянием в целевой системе, журналом и повторяемым тестом.
Для первого разбора нам нужны один реальный вход, система, в которой живут данные, и критерий правильного результата. По одному полному проходу уже видно, где агент помогает, а где пока работает только демонстрация.