Поиск по базе документов, который отвечает словами из ваших же файлов и показывает, откуда взял ответ.
Главная проблема таких систем в том, что модель додумывает то, чего в документах нет. Здесь это измеряется, а не обещается: 87.5% ответов подтверждаются исходным текстом, 89.6% попадают в суть вопроса. Замеры прогоняются автоматически, вместе с 82 тестами.
Система помнит контекст диалога, поэтому на «а что по второму пункту» отвечает по той же теме, а не начинает с нуля. Каждый запрос и ответ пишутся в Google Таблицу, так что видно, о чём спрашивают и где система ошибается.
Отдельно стоят ограничители: на вопросы вне базы бот не отвечает выдумкой, а говорит, что данных нет.
Код открыт, можно посмотреть целиком: github.com/Vadtop/rag-from-scratch
Стек: Python, FastAPI, ChromaDB, sentence-transformers, DeepSeek, Docker, Google Sheets API.
https://github.com/Vadtop/rag-from-scratch