Корпоративный поиск по нормативной базе в закрытом контуре
Контекст
Задача
Инженеры тратили часы на поиск в нормативно-технической документации, выход во внешние сервисы запрещён.
Работа
Решение
RAG-ассистент на open-weight модели, развёрнутый on-premise, подключение к документохранилищу, автообновление индекса, разграничение доступа по ролям.
Проблема бизнеса
Что происходило до проекта
Инженеры добывающей компании ежедневно ищут ответы в тысячах страниц нормативно-технической документации: регламенты, СТО, инструкции, предписания. Поиск занимал десятки минут, а цена ошибки — от простоя до предписания надзора. При этом выход во внешние сервисы из производственного контура запрещён полностью: никаких облачных ИИ.
Классический полнотекстовый поиск не решал задачу: инженер спрашивает «какой зазор допустим для узла X», а документы оперируют другими формулировками. Требовался поиск по смыслу — целиком внутри периметра.
Сдвиг
Как было — как стало
Как было
Как стало
Ход работы
Как решали
Модель в контуре
Развернули open-weight модель на vLLM на серверах заказчика — данные и запросы не покидают периметр в принципе.
Индексация документохранилища
Подключили хранилище НТД: документы разбиваются на фрагменты, индексируются в векторной базе, индекс обновляется автоматически при изменениях.
RAG-оркестрация
Запрос инженера превращается в поиск по смыслу, найденные фрагменты — в ответ со ссылками на конкретные документы и пункты.
Права доступа
Ответ строится только по документам, к которым у сотрудника есть доступ, — разграничение то же, что в исходном хранилище.
Приёмка на эталонных вопросах
Качество проверяли на наборе реальных вопросов инженеров с известными ответами; регресс — при каждом обновлении индекса и модели.
Решение
Как устроено архитектурно
Живой пайплайн индексации
Изменение документа запускает переиндексацию его фрагментов — поиск не отстаёт от документооборота.
ACL до поиска
Оркестратор фильтрует по правам до обращения к индексу: недоступный документ не попадёт даже в кандидаты.
Реранк перед генерацией
Из top-k кандидатов реранжирование отбирает действительно релевантные — модель отвечает по лучшему контексту.
Продукт
Как это выглядит в работе
Инженер спрашивает своими словами — система находит по смыслу и отвечает со ссылками на конкретные пункты. Первоисточник в одном клике: это ответ по документам, а не «мнение модели».
Макет иллюстрирует механику интерфейса; данные на экране условные.
Границы решения
Что делает — и чего не делает
Честные рамки — часть архитектуры: они защищают результат не хуже кода.
Делает
- поиск по смыслу, а не по совпадению слов
- ссылки на документ и пункт в каждом ответе
- права доступа — как в исходном хранилище
- автообновление индекса при изменении НТД
- модель и база полностью on-premise
Не делает
- ответов без источника
- выхода запросов за периметр — облачных ИИ нет
- подмены документа: система ссылается, решение за инженером
Итог
Результат
- Поиск: с десятков минут до секунд
- Данные не покидают периметр
- Доступ разграничен по ролям
Числовые показатели публикуются после сверки с заказчиком.
Передача
Что осталось у клиента
- Исходный код, модели и конфигурации — вместе с правами.
- Документация и описание архитектуры.
- Возможность развивать решение своей командой или любым другим подрядчиком.
Следующий шаг
Расскажите про задачу
Разберём, оценим сроки и стоимость. Если задача не наша — скажем прямо и подскажем, к кому обратиться.
Обсудить задачу →