Как RAG-система сокращает время поиска на 74%: кейс строительной компании. Архитектура, внедрение, результаты и ROI — полный гайд.
VibeLab
Поделиться

Инженер-сметчик тратил в среднем 20 минут на поиск одного норматива в базе из 50 000 документов — с учётом проверки актуальности версии, перекрёстных ссылок и сверки с последними изменениями СП. После запуска RAG-пайплайна полный цикл «запрос → верифицированный ответ» сократился до 5 минут. Разбираем архитектуру, подводные камни с нормативной базой и честные метрики внедрения.
Представьте: вам нужно найти актуальные требования к огнестойкости несущих конструкций для конкретного типа здания. Вы знаете, что ответ где-то в СП 2.13130 — но в какой редакции? Действует ли ещё СНиП 21-01-97*, на который ссылается проектная документация 2019 года? Не противоречит ли это новому своду правил, утверждённому в прошлом квартале?
Для инженеров и сметчиков строительной компании, с которой мы работали, этот сценарий повторялся десятки раз в день. База нормативных документов — более 50 000 файлов: действующие и архивные СНиП, СП, ГОСТ, внутренняя проектная документация, протоколы испытаний, заключения экспертизы. Часть — в формате PDF со сканов 90-х годов. Часть — в устаревших форматах Word. Единой поисковой системы не было: папки на сетевом диске, локальные копии у сотрудников, три разных справочных сервиса с перекрывающимися, но не совпадающими базами.
Около 30 специалистов ежедневно обращались к нормативной базе в среднем по 5 раз. Простые запросы — «найти конкретный пункт известного документа» — занимали 10 минут. Сложные — с проверкой актуальности, сверкой версий и перекрёстными ссылками — до 40 минут. Средняя длительность полного цикла поиска составляла около 20 минут. При 150 обращениях в день команда суммарно тратила 50 часов ежедневно только на поиск и верификацию нормативной информации.
Задача: построить инструмент, который сократит этот цикл без потери качества — с обязательной ссылкой на источник и гарантией актуальности норматива.
Строительные нормативы — не корпоративная wiki и не FAQ. Это юридически значимые документы, ошибка в интерпретации которых может привести к реальным последствиям: от штрафа на проверке до остановки строительства.
Три ключевых отличия от типичного корпоративного документооборота:
В строительной нормативной базе документ не просто «старый» или «новый» — у него есть юридический статус: действующий, отменённый, заменённый, действующий с ограничениями, добровольного применения.
Мы решили это на уровне метаданных при индексации. Каждый документ в векторной базе хранит не только контент, но и:
При формировании ответа retrieval-слой приоритизирует действующие документы. Если в контекст попадает отменённый норматив, генеративная модель явно помечает это в ответе: «Внимание: СНиП II-3-79* отменён, заменён на СП 50.13330.2012 (актуализация 2020)».
Около 15% документов в базе — сканы бумажных оригиналов. Качество варьируется от приемлемого до «штамп поверх текста, угол загнут, копия третьего поколения».
Стандартный подход «PDF → текст → чанки → эмбеддинги» здесь не работает:
Мы использовали комбинированный OCR-пайплайн: первичное распознавание через облачный сервис с постобработкой специализированной моделью, обученной на строительной документации. Для таблиц — отдельный парсер, сохраняющий структуру «строка-колонка» в чанке.
Выбор стека определялся тремя жёсткими требованиями: работа с русскоязычными техническими текстами, обязательные ссылки на источники, разграничение прав доступа к документам.
| Компонент | Решение | Почему именно это |
|---|---|---|
| Эмбеддинг-модель | multilingual-e5-large + дообучение | Лучшие результаты на русскоязычных технических текстах среди open-source моделей |
| Векторная БД | Qdrant | Поддержка метаданных-фильтров (статус документа, уровень доступа), горизонтальное масштабирование |
| Основная LLM | LLaMA 3.1 70B (on-premise) | Требования к конфиденциальности, предсказуемая стоимость при высоком объёме запросов |
| Fallback LLM | GPT-4o через Azure OpenAI с DPA | Для сложных мультидокументных запросов, не содержащих конфиденциальных данных |
| Оркестратор | LangChain + кастомные модули | Логика приоритизации версий, маршрутизация запросов, валидация ответов |
| OCR | Облачное распознавание + fine-tuned модель | Точность на сканах строительных документов выше 95% |
Первичная индексация заняла 12 дней. Основное время ушло не на генерацию эмбеддингов, а на парсинг и подготовку документов:
Обновление при выходе новой версии СП автоматизировано: мониторинг источников → парсинг нового документа → обновление статусов связанных документов → переиндексация. Полный цикл обновления одного документа — от 3 до 15 минут.
Каждый ответ содержит три обязательных элемента:
Пайплайн retrieval работает в два этапа. Сначала — семантический поиск по векторной базе с фильтрацией по метаданным (только действующие документы, только доступные пользователю). Затем — ре-ранкинг найденных фрагментов с учётом релевантности и авторитетности источника.
В промпте для генеративной модели жёстко зашита инструкция: если в извлечённых фрагментах нет достаточной информации для ответа — сообщить об этом, а не генерировать ответ «из головы». Эта механика — ключевая для снижения галлюцинаций. В строительной отрасли ответ «я не нашёл точного совпадения, вот ближайшие релевантные документы» в разы ценнее красивого, но неподтверждённого ответа.
Когда в контексте оказывались фрагменты из двух версий одного СП — старой и новой — модель иногда «сшивала» требования из обоих. Например, брала числовое значение из отменённой редакции, а формулировку — из действующей.
Решение: жёсткая фильтрация на этапе retrieval. Если документ отменён и существует замена — отменённая версия не попадает в контекст, только в справочную ссылку.
Некоторые таблицы в ГОСТах занимают 5–7 страниц. Разбивка по строкам теряет контекст заголовков. Хранение целиком — превышает разумный размер чанка.
Решение: гибридный подход. Таблица хранится целиком в отдельном хранилище, а в векторной базе — её «описание-саммари» с ключевыми параметрами. При попадании саммари в результат retrieval полная таблица подгружается в контекст генерации.
Первые две недели инженеры проверяли каждый ответ вручную — из профессиональной ответственности. Перелом наступил, когда в интерфейс добавили прямые ссылки на источник с подсветкой конкретного фрагмента в документе. Возможность в один клик увидеть первоисточник превратила инструмент из «чёрного ящика» в верифицируемого ассистента.
Часть документов — внутренние регламенты с ограниченным доступом. RAG-сервис не должен показывать пользователю фрагменты документов, к которым у него нет доступа, даже если они релевантны запросу.
Решение: фильтры метаданных в Qdrant. При каждом запросе передаётся роль пользователя, и поиск идёт только по доступному подмножеству индекса.
Один вопрос может требовать фрагментов из 3–4 документов, увеличивая входной контекст до 6 000–8 000 токенов. При 150 запросах в день и on-premise LLM — нагрузка на GPU ощутимая.
Решение: кэширование частых запросов и сжатие контекста — удаление повторяющихся шапок документов, стандартных преамбул.
Замеры проводились через 3 месяца после запуска — когда пользователи прошли период адаптации.
| Метрика | До | После | Изменение |
|---|---|---|---|
| Среднее время полного цикла поиска | 20 мин | 5,2 мин | −74% |
| Время ответа пайплайна (без верификации) | — | 12–18 сек | — |
| Точность ответа (оценка экспертов, 500 запросов) | — | 91,3% | — |
| Выдача отменённого норматива как действующего | ~12% ручных ошибок | 0,8% | −93% |
| Запросов в день | ~150 | ~210 | +40% |
| Суммарное время команды на поиск | 50 ч/день | 13 ч/день | −74% |
Рост числа запросов с 150 до 210 — показательный эффект. Когда поиск перестаёт быть болезненным, люди начинают проверять информацию, которую раньше «и так помнили». Качество работы с нормативами выросло не только за счёт скорости, но и за счёт полноты обращений к базе.
Экономия: 37 часов в день × 22 рабочих дня = 814 часов в месяц.
При средней стоимости часа работы инженера-сметчика ~1 500 ₽ (с учётом налогов и накладных) — ежемесячная экономия составляет ~1,2 млн ₽. Годовая — ~14,5 млн ₽.
Стоимость инфраструктуры: on-premise GPU-сервер + лицензии + облачный fallback — ~180 000 ₽/мес.
Срок окупаемости разработки — менее 5 месяцев с момента запуска.
Ведущий инженер-сметчик: «Первую неделю перепроверял каждый ответ. К третьей неделе перепроверял только спорные случаи. Ссылки на конкретные пункты — это то, что убедило. Я вижу, откуда взята информация, и могу за 30 секунд открыть первоисточник».
Руководитель проектного отдела: «Раньше молодые специалисты боялись задавать вопросы опытным коллегам. Теперь они сначала спрашивают систему — и приходят к старшим уже с конкретным контекстом. Это изменило динамику внутри команды».
Главный инженер проекта: «Для меня ключевое — что инструмент честно говорит, когда не уверен в ответе. Это важнее, чем скорость».
RAG — не универсальное решение. Внедрение оправдано при совпадении нескольких условий.
Подходит, если:
Не подходит, если:
Для сравнения: компания STADLER (230 лет истории, производство оборудования для переработки отходов) внедрила ChatGPT как productivity-слой для 650 сотрудников и получила 30–40% экономии времени на типовых задачах. Но их задача проще — общая продуктивность, без привязки к нормативным документам с юридической значимостью. Для строительной отрасли базовый ChatGPT недостаточен: нужен контролируемый retrieval с верифицированными источниками.
Диапазон зависит от четырёх ключевых факторов:
| Фактор | Влияние на стоимость |
|---|---|
| Объём и качество документов | Сканы и неструктурированные PDF увеличивают стоимость парсинга в 2–3 раза |
| Требования к конфиденциальности | On-premise LLM дороже в инфраструктуре, но дешевле в токенах при высоком объёме |
| Глубина интеграции | Standalone-сервис vs. интеграция с существующими системами (1С, BIM, СЭД) |
| Требования к точности | Чем выше цена ошибки — тем больше инвестиций в валидацию, тестирование, мониторинг |
Ориентировочные диапазоны (2025–2026):
Ежемесячные расходы на инфраструктуру: от 50 000 ₽ (облако) до 300 000 ₽ (on-premise GPU + облачный fallback + мониторинг).
RAG для нормативных документов — не модный AI-проект, а инфраструктурное решение. Как поисковая строка в браузере: однажды попробовав, невозможно вернуться к ручному перебору папок.
70% успеха — не в выборе LLM, а в качестве подготовки данных. Парсинг, метаданные, стратегия чанкинга, логика версионности — всё это определяет, будет ли ваш RAG-сервис выдавать точные ответы или красиво сформулированные галлюцинации.
Подписывайтесь на наш канал: @vibelogia
Поделимся опытом
8 800 201 85 68