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

Задача
Сотрудники тратят время на поиск ответа в десятках регламентов и инструкций, а обычный чат с нейросетью для этого опасен: модель уверенно отвечает то, чего в документах нет.
Что сделали
- загрузку документов и нарезку на фрагменты с перекрытием, эмбеддинги и векторную базу ChromaDB;
- ответ строго по найденным фрагментам: рядом с ответом — файл и номер фрагмента; на вопрос, ответа на который в базе нет, ассистент прямо сообщает об этом;
- кеш повторных вопросов: повтор отдаётся из кеша без поиска и без обращения к модели — 0,00 с вместо 4–5 с;
- фильтр поиска по источнику и схему разграничения доступа по ролям: фильтр применяется до поиска, модель видит только разрешённые фрагменты;
- контур оценки качества на тестовом наборе вопросов (RAGAS): точные факты, перефразировки и вопрос без ответа в базе.
Стек
Python, ChromaDB, OpenAI (text-embedding-3-small, gpt-4o-mini), SQLite, RAGAS.


