Genaius KT est un chat de questions / réponses conçu pour la gestion des connaissances au sein d'une entreprise. Il aide les employés, en particulier les nouveaux stagiaires et les stagiaires, pour comprendre les projets en cours et précédents. Le chatbot répond aux requêtes liées au contenu éducatif et aux détails du projet, rendant le transfert de connaissances sans couture et efficace.
GenAIus/
├── backend/
│ ├── Data/
│ │ └── (Initial raw data of multiple formats)
│ ├── DataChunks/
│ │ └── (Extracted data chunks from all_extracted_data.txt)
│ ├── Downloads/
│ │ └── (Connected with MongoDB to download data)
│ ├── AllCleanData.txt
│ ├── ExtractedRawData.txt
│ ├── app.py
│ ├── cleaningChunks.py
│ ├── downloadRawFiles.py
│ ├── embeddings.json
│ ├── environment.yml
│ ├── extractor.py
│ ├── model.py
│ ├── ScrapeHTML.py
│ ├── splittingDataToChunks.py
│ └── uploadRawFiles.py
├── frontend/
│ └── (Next.js files)
├── README.md
└── LICENSELe pipeline du chatbot Genaius se compose de plusieurs étapes:
La première étape du pipeline consiste à collecter des données à partir de divers documents de l'entreprise, notamment:
Étant donné que les données de l'entreprise sont souvent confidentielles, des données factices mais réalistes ont été créées dans ces formats.
L'extraction de données textuelles est effectuée à l'aide de plusieurs bibliothèques Python, qui lisent le contenu de divers formats de fichiers et les enregistrent dans un fichier texte consolidé ( ExtractedRawData.txt ). Les bibliothèques utilisées comprennent:
osdocxcsvopenpyxlPyPDF2cv2pytesseractpptxselenium (pour les données sur le Web) Les données textuelles extraites sont prétraitées à l'aide du modèle Google Gemini AI. Compte tenu du grand ensemble de données, les données sont fourrées en pièces plus petites et traitées par lots. Les données nettoyées sont enregistrées dans un fichier appelé AllCleanData.txt .
Le projet utilise la clé API Gemini pour les pièces de nettoyage des données et de formation. Après le clonage ou la mise en place du projet, assurez-vous de remplacer l'espace réservé dans le fichier .env avec votre propre clé API Gemini.
Une fois les données nettoyées, l'étape suivante consiste à créer des incorporations vectorielles à l'aide du modèle Gemini AI. Le chatbot utilise ces intérêts pour récupérer des informations pertinentes en fonction des requêtes utilisateur, garantissant qu'elle reste axée sur son domaine.
Le backend Flask est responsable de la connexion du frontend à la logique de traitement du chatbot. Le backend gère les demandes et les réponses entre l'interface utilisateur et le modèle AI.
L'interface utilisateur est construite à l'aide de next.js, fournissant une interface de chat conviviale pour les employés pour interagir avec le chatbot Genaius. La conception du frontend met l'accent sur l'accessibilité et la facilité d'utilisation.
Pour configurer le projet localement, suivez ces étapes:
Clone le référentiel:
git clone https://github.com/Pree-04/Team-GenAIus
cd GenAIus
IMPORTANT: Après le clonage ou la mise en place du projet, assurez-vous de modifier les répertoires et les chemins dans le code pour refléter vos chemins locaux respectifs où vous avez enregistré les fichiers du projet.
Installation des dépendances backend: CD Backend PIP Install -r exigences.txt
Configurer l'installation de Frontend: CD Frontend NPM
Créez un fichier .env dans le répertoire backend et ajoutez votre clé API Gemini: gemini_api_key = your_gemini_api_key_here
Pour exécuter le serveur backend: cd backend python app.py
Pour démarrer le frontend: CD Frontend NPM Run Dev
Visitez http: // localhost: 3000 pour interagir avec le chatbot.
Intégration de bout en bout: déployez pleinement l'application Web avec une intégration complète du chatbot pour améliorer son accessibilité. Contrôle d'accès hiérarchique: implémentez une fonctionnalité qui restreint l'accès aux données confidentielles en fonction de la position de l'employé au sein de l'organisation. Cela garantit que les informations sensibles sont uniquement accessibles à ceux qui ont le dégagement approprié.
Les contributions sont les bienvenues! Veuillez créer une demande de traction ou ouvrir un problème pour la discussion.
Ce projet est autorisé sous la licence du MIT. Voir le fichier de licence pour plus de détails.