Skip to content
Snippets Groups Projects
Select Git revision
  • 78bee6ac3f8f9c45d2ea2a5c07ce5f0d10c0a77d
  • main default protected
2 results

chatbot

Prérequis :

Afin de pouvoir executer le code il faut créer un environnement virtuel python :

python3 -m venv venv

Ensuite installer les bibliothèques nécessaires qui se trouvent dans le fichier requirements.txt:

pip install requirements.txt

Architecture du code

Le code créée a pour objectif de reproduire cette architecture : chatbot_architecture.jpg

preprocessing.py

Le code preprocessing.py récupère les fichiers pdf depuis le répertoire drive où ils sont enregistrés, les transfome en texte et opère des traitements dessus et les enregistre sous le répertoire text_files

ingest_txt_files, gdrive_ingest_with_nlp, gdrive_ingest

ces trois codes pythons récupèrent les fichiers text enregistrés dans text_files (ou les pdf pour les gdrive_*), opère un traitement dessus de telle sorte à découper chaque document en plus petit documents (de la taille d'un paragraphe ou de quelques lignes en fonction du paramètrage) et les vectorise pour les enregistrer dans chromadb une bdd vectorielle.

doc_output.py

Ce code prend une requête utilisateur, la vectorise, cherche les n documents qui minimisent la distance cos par rapport à la requête et les affiche.