Ce projet démontre diverses techniques de récupération pour la récupération de documents à l'aide de Python. Les techniques mises en œuvre incluent HyDe, Basic, Reciprocal Rank Fusion (RRF), Fusion Retrieval et Sub Query Decomposition (SQD). Le projet utilise Streamlit pour l'interface utilisateur et diverses bibliothèques pour le traitement et la récupération de documents.
Clonez le dépôt :
git clone https://github.com/yourusername/yourrepository.git
cd yourrepository
Installez les dépendances requises :
pip install -r requirements.txt
Exécutez l'application Streamlit :
streamlit run app.py
Téléchargez un fichier PDF à l'aide de la barre latérale.
Sélectionnez une technique de récupération dans la barre latérale.
Saisissez une requête dans la zone de saisie de texte et affichez les documents récupérés.
La récupération HyDe (Hypothetical Document) génère un document hypothétique basé sur la requête et récupère des documents similaires.
La récupération de base utilise une simple recherche de similarité pour récupérer des documents en fonction de la requête.
Reciprocal Rank Fusion (RRF) combine les résultats de plusieurs algorithmes de récupération pour améliorer les performances globales de récupération.
La récupération par fusion combine la recherche vectorielle et les résultats de la recherche BM25 en utilisant une somme pondérée pour récupérer les documents les plus pertinents.
La décomposition des sous-requêtes (SQD) est une technique qui décompose la requête en sous-requêtes et récupère les documents en fonction des sous-requêtes.
Les contributions sont les bienvenues ! Veuillez ouvrir un problème ou soumettre une demande d'extraction pour toute amélioration ou correction de bug.
Ce projet est sous licence MIT. Voir le fichier LICENSE
pour plus de détails.