Задача
Разработать Telegram-бота, который автоматизирует процесс расчета предварительной сметы на ремонт. Основная функция: понять запрос клиента, написанный свободным текстом, и собрать из него наименования работ с объемами.
Как это должно работать
1. Анализ сообщения
Клиент пишет боту (например: "Снять старые обои 40 квадратов, поклеить новые и положить ламинат"). Бот должен трансформировать этот запрос в структурированные пары: "название работы + объем".
2. Интеллектуальный поиск по базе
Важное требование: бот должен сопоставлять запрос клиента с услугами из прайс-листа именно по смыслу (семантический поиск), а не просто по одинаковым словам. Это значит, что на просьбу "убрать обои" бот сам находит услугу "Демонтаж обоев" в справочнике. Для этого используется встраивание смысла текста (векторные представления / Embedding) и поиск через базу векторов (RAG).
3. Расчет стоимости
Бот берет цену за единицу из вашего документа (ценообразование), умножает на названный клиентом объем и рассчитывает итоговую сумму.
4. Вывод результата
Итог предоставляется пользователю в виде четко оформленного документа (счета) внутри чата.
Используемые технологии
- Язык на выбор: Python или Node.js (важна стабильность и быстродействие).
- Работа с OpenAI API (JSON-режим для парсинга сообщений).
- "Умная" библиотека для поиска (с векторным анализом / Elasticsearch с векторами).
- Интеграция с Google Sheets - все данные об услугах постоянно редактируются именно там (синхронизация с вашей Excel-таблицей).
Ключевое преимущество системы
Никаких жестких шаблонов и точного совпадения слов. Клиент может сформулировать по-своему, нейросеть «поймет», а система найдет правильный вариант с ценником в вашем документе.