- Cloner le repo git
- Effectuer un
pip install -r requirement.txt
- Si nécessaire, lancer
nltk_dowload.py
et installer la collectionstopwords
via le nltk downloader - Lancer
main.py
dans le dossiercacm
- Suivre les instructions dans la console python
- Lancer en local
app.py
dans le dossierFlaskApp
- Ouvrir un navigateur et aller sur
http://127.0.0.1:5000
- Utiliser le moteur de recherche
A noter qu'à chaque nouvelle recherche un fichier html sera généré. Il serait bien sûr préférable d'avoir un fonctionnement moins gourmand en espace mémoire. Etant donné que cela n'était pas le coeur du travail à fournir, nous avons décidé de ne pas nous attarder sur ce point.
Les différents fichiers présents dans le dossier cacm
reprennent les consignes du devoir dans l'ordre, à savoir :
- Préparation des documents :
tokenization.py
- 2.1 Traitements linguistiques (questions 1 à 5) :
A_traitements_linguistiques.py
- 2.2 Indexation :
B_indexation.py
- 2.2.1 Modèle de recherche booléen :
C_modele_booleen.py
- 2.2.2 Modèle de recherche vectoriel :
D_modele_vectoriel.py
- 2.3 Mesure de pertinence :
E_mesure_pertinence.py
Les mesures de performances sont quant à elles effectuées au fil des opérations et affichées dans la console.
Les différents fichiers et dossiers présents dans le dossier FlaskApp
ont pour but de gérer tout ce qui est relatif à l'intégration de l'interface, à savoir :
documents
: regroupe les json nécessaires aux recherches afin de ne pas avoir à les recalculer à chaque requêtestatic
: regroupe les styles css nécessairestemplates
: regroupe les templates html nécessaires (index.html
,result.html
,monkey.html
ainsi que les résultats générés au fil des requêtes)app.py
: méthodes de l'API Flask nécessaires aux recherchesjsonToHTMLBoolean.py
: crée la page html associée au résultat d'une recherche booléennejsonToHTMLVectorial.py
: crée la page html associée au résultat d'une recherche vectorielle
Nous avions commencé à travailler en parrallèle sur les collections cacm
et cs276
mais n'avons malheureusement pas eu le temps d'avoir beaucoup de résultats avec cs276
. Ce dossier regroupe nos débuts de travaux sur cette collection. Ils reprennent grandement les travaux effectués avec cacm.