Этот проект демонстрирует различные методы поиска документов с использованием Python. Реализованные методы включают HyDe, Basic, взаимное объединение рангов (RRF), объединенное извлечение и разложение подзапроса (SQD). В проекте используется Streamlit для пользовательского интерфейса и различные библиотеки для обработки и поиска документов.
Клонируем репозиторий:
git clone https://github.com/yourusername/yourrepository.git
cd yourrepository
Установите необходимые зависимости:
pip install -r requirements.txt
Запустите приложение Streamlit:
streamlit run app.py
Загрузите PDF-файл с помощью боковой панели.
Выберите метод поиска на боковой панели.
Введите запрос в поле ввода текста и просмотрите полученные документы.
Поиск HyDe (гипотетический документ) генерирует гипотетический документ на основе запроса и извлекает аналогичные документы.
Базовый поиск использует простой поиск по сходству для получения документов на основе запроса.
Reciprocal Rank Fusion (RRF) объединяет результаты нескольких алгоритмов поиска для повышения общей производительности поиска.
Fusion-поиск сочетает в себе векторный поиск и результаты поиска BM25 с использованием взвешенной суммы для извлечения наиболее релевантных документов.
Разложение подзапроса (SQD) — это метод, который разбивает запрос на подзапросы и извлекает документы на основе подзапросов.
Вклады приветствуются! Пожалуйста, откройте проблему или отправьте запрос на внесение изменений или исправлений ошибок.
Этот проект лицензируется по лицензии MIT. Дополнительные сведения см. в файле LICENSE
.