к кейсам
business-services AIMVP

AI-агент «Пресейл-менеджер» для подготовки КП

Мультисервисный AI-ассистент для пресейл-команд: анализирует клиента, готовит коммерческие предложения и презентации на базе RAG и веб-исследования, с генерацией файлов DOCX/PDF.

Клиент

CorpSoft24

Задача

Автоматизировать анализ клиента и подготовку коммерческих предложений через AI-агента с RAG-поиском по внутренним материалам и веб-ресёрчем по клиенту и конкурентам.

О проекте

Клиент CorpSoft24 обратился с задачей автоматизировать работу пресейл-менеджеров: быстро анализировать клиента (бизнес, потребности, конкурентов) и готовить коммерческие предложения и презентации, опираясь на корпоративную базу прошлых КП и шаблонов, а не с нуля.

Монорепозиторий на Bun workspaces с асинхронной архитектурой: frontend обращается только к backend API на Hono, который не выполняет никакой AI-логики — он валидирует запрос и кладёт задачу в очередь Redis (BullMQ). Вся тяжёлая работа выполняется в отдельном горизонтально масштабируемом сервисе ai-agent-worker. Инфраструктура — 7 Docker-контейнеров: PostgreSQL, Redis, Qdrant, MinIO, backend API, воркер, frontend на Nginx.

Технологии

  • TypeScript
  • Bun
  • Hono
  • React
  • PostgreSQL
  • Redis
  • BullMQ
  • Qdrant
  • MinIO
  • OpenAI API
  • Docker

Что разработано

  • Асинхронный конвейер обработки сообщений: сохранение сообщения → создание AgentTask → постановка в очередь → мгновенный ответ 202 с task_id
  • AI Agent Worker на BullMQ: маршрутизация по типу задачи (chat_message_processing, artifact_generation, rag_document_ingestion), concurrency 4, ретраи с exponential backoff
  • RAG-пайплайн: извлечение текста из txt/md/docx/xlsx/pdf, чанкинг с overlap, батч-эмбеддинг, upsert в Qdrant
  • Веб-ресёрч по клиенту и конкурентам для режима «Анализ клиента» через отдельного провайдера
  • Генерация файлов: DOCX через библиотеку docx, PDF через pdfkit с явным поиском кириллического TTF-шрифта
  • Общий markdown-парсер ответа LLM в промежуточные блоки, которые оба генератора файлов интерпретируют по-своему
  • Автоматический детектор запроса на файл (regex по русским глаголам «сохрани», «выгрузи», «сформируй файл»)
  • Модульная сборка system-промпта: база → режим → язык → уточняющие вопросы → RAG-контекст → веб-контекст → история
  • Схема данных на Drizzle ORM: users, chats, messages, agent_tasks, artifacts, documents, document_chunks
  • Presigned URL с TTL 7 дней и переписыванием внутреннего docker-хоста на публичный эндпоинт
  • Полное тестовое покрытие: unit-тесты по всем модулям + e2e smoke-скрипт против поднятого docker-стека

Ключевые фичи

  • Полностью асинхронная архитектура на очередях: отправка сообщения — мгновенный ответ, реальная LLM-обработка идёт в отдельном масштабируемом воркере
  • Graceful degradation без API-ключа: LLM-задачи предсказуемо завершаются failed, RAG продолжает работать на детерминированных офлайн-эмбеддингах
  • Pluggable-архитектура через интерфейсы SearchProvider и WebResearchProvider — переключение реализации одной переменной окружения
  • Честный mock вместо галлюцинаций: провайдер веб-ресёрча по умолчанию возвращает пустой результат, а не выдуманные данные о клиенте
  • Кириллица в PDF из коробки — иначе документ выходил бы «крякозябрами» на встроенном шрифте pdfkit
  • Горизонтальное масштабирование воркера без изменений в коде (docker compose up --scale ai-agent-worker=N)
  • Явная граница MVP зафиксирована в коде: неподдерживаемые провайдеры содержат явные заглушки с комментарием «вне MVP»
  • Ограниченные ретраи с сохранением причины ошибки — полный жизненный цикл статусов задачи created → queued → processing → completed/failed

Решение задачи

Ключевая инженерная проблема — сделать LLM-ответ, который может занимать секунды и иногда падать, частью синхронного по ощущениям чат-интерфейса, не блокируя HTTP-запрос и не теряя данные при сбое. Решение — полностью асинхронная схема на Redis/BullMQ с поллингом статуса задачи на фронтенде.

Вторая часть задачи — сделать ответы агента полезными и не выдуманными. Решение — комбинация RAG по внутренним документам и опционального веб-ресёрча, спроектированных как заменяемые провайдеры за общим интерфейсом. Честные mock-провайдеры и graceful-деградация без API-ключа превращают демо-стенд в систему, проверяемую end-to-end даже без реальных LLM-затрат.

Метрики

7 контейнеров независимо масштабируемая асинхронная инфраструктура
DOCX + PDF готовое коммерческое предложение или презентация одним запросом
202 Accepted мгновенный ответ backend без ожидания LLM в HTTP-запросе

Результаты

Готовое КП вместо ручной сборки

Автогенерация коммерческого предложения и презентации в DOCX/PDF из диалога с агентом

Асинхронная обработка без таймаутов

Очередь на BullMQ и горизонтально масштабируемый воркер для LLM- и RAG-запросов

Заказать похожий проект

Оставьте заявку — обсудим задачу и предложим решение под ваш бизнес.

Оставить заявку

Другие кейсы

Зеленопарк (ТЦ)

МобайлВеб

Зеленопарк ТЦ приложение

Мобильное приложение для посетителей ТЦ Зеленопарк: навигация по ТЦ, акции арендаторов, события и бонусные механики.

TriMoTi

МобайлВеб

Мобильное приложение TriMoTi для аудиогидов в музеях

Мобильное приложение TriMoTi для прослушивания аудиогидов в небольших музеях по стране: маршруты, офлайн-доступ и удобный плеер для посетителей.

GoEvent

ВебMVP

Промо-система розыгрыша автомобилей в ТЦ

Платформа для проведения розыгрыша автомобилей в ТЦ по всей России (чеки, регистрация, выбор победителей).

Cyberly

ВебМобайл

Социальная сеть для киборгов (людей с ампутациями)

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

Культура гостеприимства (20+ ресторанов)

AIHR

ИИ аттестация сотрудников и оценка кандидатов

Система для сети ресторанов: автоматическое аудиоинтервью для аттестации текущих сотрудников и ИИ-оценка soft skills кандидатов для HR.

Ист Трейд

AIАвтоматизация

ИИ генерация этикеток с проверкой по ТР ТС

Автоматическая генерация этикеток для импортных продуктов с переводом и валидацией по регламентам Таможенного Союза.

ВДНХ

АвтоматизацияИнтеграции

Автоматический поиск документов из 1С:ДО

Система автоматического поиска и извлечения документов из системы 1С:Документооборот.

Samadashvili Winery

ВебIT-продукт

E-commerce платформа для винодельни Samadashvili

Двухконтурная Medusa-платформа для винодельни: брендовый Next.js storefront, каталог вин, корзина, checkout, Bank of Georgia, туры и кастомная админка.

ООО Умный Век

АвтоматизацияCRM

CRM-платформа для компании Umvek

Кастомная CRM-система для B2B-поставщика AV-оборудования: управление сделками, воронки продаж, финансовая аналитика, KPI и мотивация сотрудников.

Вкусно и Точка

Чат-ботАвтоматизация

Бот для розыгрышей Вкусно и Точка в MAX

Монорепо-платформа для маркетингового бота в мессенджере MAX: массовые рассылки по аудитории, розыгрыши с проверкой подписки, онбординг пользователей и веб-панель администратора.

Юридический сервис для бухгалтеров и юристов (NDA)

AIАвтоматизация

Конструктор юридических документов с AI-проверкой

Платформа автогенерации договоров и государственных форм (включая полную форму Р13014 ФНС) с AI-чатом, который проверяет документы на соответствие нормативным требованиям.

UnoCode (внутренний продукт)

Кейс

Платформа управления проектами и командой – UnoProject

Операционная платформа для IT-студий: проекты, заказы, задачи, команда и документы в одном пространстве с ролевым доступом и прозрачностью для заказчика.

CorpSoft24

AIMVP

AI-ассистент продуктового менеджера

MVP-платформа, где AI-агент уровня senior PM/CPO обрабатывает продуктовые задачи в чате асинхронно через очередь, использует RAG по документам и выгружает результат в Markdown/DOCX.

Оператор торгового центра

ВебIT-продукт

Платформа интерактивных карт торговых центров TC-navigator

Единая система управления планом этажей, виджетом для сайта, сенсорными киосками и рекламой на инфоэкранах.

UnoCode (внутренний продукт)

AIHR

AI-платформа оценки персонала Qualy

SaaS-платформа для AI-оценки персонала на основе аудио- и текстовых ответов с мультитенантностью для компаний с сетевой структурой.

HR- и рекрутинговые команды работодателей (B2B)

AIHR

AI-платформа оценки кандидатов UnoHR

Автоматический скоринг откликов и поиска резюме с HeadHunter: ранжирование кандидатов, лимиты тарифа и единый вход для HR-команд.

CorpSoft24

AICRM

AI-советник по развитию существующих клиентов

Чат-советник на базе LLM, который анализирует корпоративные данные о клиенте и даёт факты и рекомендации по upsell/удержанию с уровнем уверенности, либо честно признаёт нехватку контекста.

ETC Trade (Ист Трейд)

AIЧат-бот

AI-чат-бот для B2B- и B2C-клиентов ETC Trade

AI-чат-бот для мультиканальной поддержки B2B- и B2C-клиентов: консультации по ассортименту, доставке и условиям, квалификация лидов и передача в Bitrix24.

Turnix

ВебГеймдев

Платформа для организации киберспортивных матчей

Платформа для автоматизации проведения киберспортивных турниров (сетка, лобби, проверка результатов).

Детская школа танцев

АвтоматизацияВеб

Система планирования расписания и зарплат для школы танцев

ERP-система для детской школы танцев: планирование расписания групп, расчет зарплат преподавателей с учетом KPI и посещаемости.

123-buh

AICRM

ИИ сканер чатов и авто-задачи в Битрикс

Система в реальном времени сканирует все чаты с клиентами, выделяет задачи из потока сообщений, создает их в Битрикс24 ответственному бухгалтеру и формирует EOD-отчет.

Тримет

AIЧат-бот

ИИ-чат-бот для Авито и сайта (металлопрокат)

Чат-бот для оптово-производственной компании по металлу, знающий весь ассортимент и умеющий оформлять заявки прямо в чате Авито и на сайте.

ООО Белтимпэкс

AIАвтоматизация

Распознавание заказов из файлов клиентов

Программа для автоматического распознавания позиций заказа из любых файлов (Excel, PDF, фото) с поиском по базе номенклатуры и отправкой готового заказа в 1С.

Arhat Inks (Узбекистан)

AICRM

VIP AI-менеджер для производителя красок

ИИ-агент для работы с текущими и VIP-клиентами: распознавание узбекской речи, проверка дебиторки, формирование заказов и рекомендации ассортимента.

Белтимпэкс

AIЧат-бот

Чат-бот с остатками из 1С

ИИ чат-бот для клиентов оптовой компании, который в реальном времени показывает наличие приводных ремней и их цену из базы 1С.

ООО Умный Век

ДесктопMVP

СпортТабло (Десктопная программа)

Десктопное приложение-табло для детских спортивных соревнований в школах, отображающее счет, таймер и состав команд на проекторе/экране.