Разработка и DevOps / кейс 09
Carrot quest: AI-ассистент для обработки входящих лидов
Ассистент собирает обращения из нескольких каналов, уточняет задачу и формирует структурированную карточку лида. Нестандартные ответы и случаи с низкой уверенностью передаются сотруднику.
AI-ассистент для продаж опасен не тогда, когда отвечает медленно, а когда уверенно выходит за разрешенные границы. Он может ускорить сбор типового контекста, но цена, условия сделки и нестандартное обещание должны оставаться под контролем сотрудника. Поэтому в этом кейсе автоматизация строилась не вокруг автономного продавца, а вокруг управляемой квалификации, проверяемой базы знаний и явной передачи диалога человеку.
Результат для менеджера состоит в одной очереди обращений с источником, историей и структурированной карточкой лида. Результат для бизнеса состоит в сокращении ручного переноса данных без потери контроля над тем, что AI имеет право спросить, зафиксировать или отправить.
Контур безопасной автоматизации
- Задача: Собирать обращения с сайта и мессенджеров, задавать уточняющие вопросы и передавать менеджеру структурированную карточку лида.
- Направление: AI, SaaS, CRM, омниканальные коммуникации.
- Точная ответственность AIFlowPoint: Разработка единой очереди обращений, редактора сценариев и AI-модуля с извлечением лидов, базой знаний, CRM-интеграцией и передачей оператору
- Продолжительность: 6 месяцев.
- Команда: Product manager, conversation designer, frontend-разработчик, 2 backend-разработчика, ML/LLM-инженер, QA automation и DevOps. Всего 8 человек.
- Фокус: AI, CRM, Омниканальность.
Почему автономного продавца исключили
Обращения приходили из чата сайта, email и мессенджеров, а менеджеру приходилось вручную собирать контекст и переносить его в CRM. AI мог ускорить уточнение типовых вопросов, но не должен был самостоятельно менять цену, условия или отправлять нестандартные ответы.
Проблема состоит из двух частей. Каналы фрагментируют историю и увеличивают ручную работу. Модель, если не ограничить ее правилами, добавляет новый риск: может сформировать неподтвержденный ответ или продолжить диалог там, где нужен сотрудник. Поэтому цель не сводилась к генерации текста. Нужно было получить управляемый поток от входящего сообщения до карточки и владельца в CRM.
Ответственность AIFlowPoint и решения сотрудника
В объем работ входили единая очередь, редактор сценариев, AI-модуль извлечения данных, база знаний, CRM-интеграция и передача оператору. Автономное ведение сделки, самостоятельное изменение цены и замена менеджера в этот контур не входили: такие решения оставались под человеческим контролем. Разработка всего продукта Carrot quest, всех каналов и CRM-интеграций компании также не входила в роль AIFlowPoint.
Четыре правила ассистента
- Спроектировали ассистента как помощника, а не автономного продавца.
- Ограничили ответы утвержденной базой знаний и разрешенными сценариями.
- Оставили цену, изменение условий и нестандартные сообщения под контролем сотрудника.
- Маскировали чувствительные поля перед обращением к внешней модели.
Эти ограничения определяют продукт сильнее, чем выбор модели. Разрешенный сценарий задает, какие вопросы можно задать. База знаний ограничивает источник ответа. Низкая уверенность и нестандартный запрос переводят ответственность сотруднику. Маскирование отделяет полезный контекст от полей, которые не должны уходить во внешний AI-контур.
Путь от сообщения до карточки CRM
- Объединили чат сайта, email и мессенджеры в одну очередь.
- Разработали визуальный редактор сценариев.
- Добавили извлечение темы, компании, контакта, срочности и продукта.
- Настроили поиск дубликатов и связь с существующей карточкой CRM.
- Подключили базу знаний с указанием источника и календарь для выбора времени встречи.
- Добавили ручное согласование нестандартных сообщений и сценариев с низкой уверенностью.
- Подготовили evaluation-набор, журнал решений и контроль стоимости AI-вызовов.
Такой контур связывает операционную работу менеджера и контроль качества модели. Очередь показывает источник и историю, редактор фиксирует допустимый сценарий, извлечение заполняет карточку, дедупликация не размножает сделки, а журнал решений и evaluation-набор позволяют разбирать ошибки по категориям.
Как контролировали данные и решения модели
React дает оператору живую очередь и редактор сценариев. Node.js обслуживает постоянные соединения чатов, FastAPI изолирует AI-обработку и оценку ответов. PostgreSQL хранит карточки и аудит, Redis и RabbitMQ управляют фоновыми задачами, vector search находит релевантный фрагмент базы знаний. Structured output и Zod проверяют формат ответа модели до записи в CRM.
Входящий текст обрабатывается как недоверенный и не используется как системная инструкция. Перед обращением к внешней модели чувствительные поля маскируются, а исходный диалог остается в контуре заказчика на согласованный срок.
Технологический контур проекта: React, TypeScript, Node.js, Python, FastAPI, PostgreSQL, Redis, RabbitMQ, Vector search, LLM API, Structured output, Zod, CRM API, WebSocket, OpenTelemetry, Sentry, Pytest, Vitest и Playwright. Технологии поддерживают разделение online-очереди, AI-обработки, фоновых операций, аудита, проверки формата и пользовательских сценариев.
Когда диалог обязан перейти человеку
Первый риск связан с выходом модели за разрешенный сценарий. Нестандартный ответ не должен отправляться автоматически. Второй риск связан с уверенностью: диалог с низкой уверенностью передается сотруднику вместе с контекстом. Третий риск связан с качеством базы знаний: ответ должен иметь проверяемый источник. Четвертый риск связан с дублями: повторное обращение не создает несколько сделок в CRM. Пятый риск связан с входящим текстом и чувствительными данными: пользовательское сообщение не становится системной инструкцией, а поля маскируются до внешнего вызова.
Как проверяли качество до масштабирования
- Каждое обращение имеет источник, владельца, статус и историю.
- После разрешенных уточняющих вопросов карточка содержит обязательные для передачи менеджеру поля.
- Модель не отправляет нестандартный ответ без разрешения.
- Ответ из базы знаний содержит проверяемый источник.
- Низкая уверенность переводит диалог сотруднику.
- Дубликаты не создают несколько сделок в CRM.
- Качество проверяется на заранее размеченной выборке, ошибки разбираются по категориям.
Меньше рутины без потери коммерческого контроля
Менеджер получает обращения из чата, email и мессенджеров в одной очереди вместе с источником, историей и заполненной карточкой лида. Ассистент задает только разрешенные уточняющие вопросы, связывает дубликат с существующей записью и передает сотруднику диалог с низкой уверенностью или нестандартным запросом.
Измеримый результат: Время первичной квалификации лида сокращается минимум на 50%; точность обязательных полей карточки превышает 90%; не менее 95% сообщений с низкой уверенностью передаются сотруднику.
Эффект: Ассистент снял типовую нагрузку с менеджеров, но сохранил человеческий контроль над нестандартными ответами и условиями сделки.
Что осталось для безопасного развития ассистента
- Интерфейс оператора и редактор сценариев
- Интеграционный сервис
- AI-модуль с контролируемой передачей сотруднику
- Evaluation-набор
- Политика данных и дашборд качества
- Автотесты
- Инструкция безопасного развития
Передача оставляет клиенту не только рабочий AI-модуль. Команда получает интерфейс, сценарии, интеграционный слой, набор оценки, правила данных, наблюдаемость качества, автоматические проверки и инструкцию для следующего изменения.
Как проверяли качество квалификации и передачу сотруднику
Артефакты проекта: evaluation-набор, confusion matrix, CRM-аналитика, журнал решений модели и dashboard стоимости AI-вызовов. Вместе они показывают скорость квалификации, категории ошибок, качество полей, решения о передаче сотруднику и стоимость AI-вызовов.
Кейс релевантен B2B SaaS, сервисным компаниям и продуктам с несколькими входящими каналами, где типовую квалификацию можно структурировать, но коммерческие условия и нестандартная коммуникация должны оставаться у сотрудника. Особенно полезен такой подход, если CRM уже существует, а ручной перенос контекста тормозит ответ.
Если менеджеры собирают одну карточку из нескольких каналов, пришлите список обязательных полей и один типовой диалог. Разберем ограниченный сценарий, передачу диалога сотруднику, оценку качества и критерии безопасной записи в CRM.