Ed-Tech Company QA Assistant
Ce projet est un assistant QA (intervenant de questions) conçu pour une entreprise ED-Tech. Il exploite les bases de données vectorielles, les modèles de langue de pointe et les intégres de documents personnalisés pour fournir des réponses précises aux requêtes utilisateur basées sur une base de connaissances prédéfinie.
Table des matières
- Caractéristiques
- Installation
- Usage
- Structure du projet
- Améliorations futures
- Contributif
- Licence
Caractéristiques
- Base de données vectorielle : utilise FAIS pour une recherche de similitude efficace à travers la base de connaissances.
- Incorporation personnalisée : alimentée en étreignant FaceMedddings à l'aide du modèle de transformateurs de phrase / All-Minilm-L6-V2.
- Modèle de grande langue (LLM) : intègre le modèle LLAMA3 de Groq (LLAMA3-8B-8192) pour générer des réponses compatibles contextuelles.
- CSV Loader : charge des FAQ ou d'autres données structurées à partir de fichiers CSV pour remplir la base de connaissances.
- Interface rationalisée : une interface utilisateur simple et interactive pour poser des questions et recevoir des réponses.
Installation
- Clone le référentiel:
git clone https : // github . com / shaadclt / Ed - Tech - Company - QA - Assistant . git
cd Ed - Tech - Company - QA - Assistant
- Configurer un environnement virtuel:
python - m venv venv
source venv / bin / activate # On Windows, use `venvScriptsactivate`
- Installez les dépendances:
pip install - r requirements . txt
- Variables d'environnement: créez un fichier .env dans la racine du projet et ajoutez votre clé API Groq:
GROQ_API_KEY = your_groq_api_key_here
Usage
- Exécutez l'application Streamlit
Créer la base de connaissances: Pour créer la base de connaissances à partir d'un fichier CSV, cliquez sur le bouton Créer des connaissances
Posez une question: entrez une question dans l'interface rationalisée et l'assistant fournira une réponse contextuellement précise basée sur la base de connaissances chargée.
Structure du projet
- Langchain_helper.py : contient la logique pour charger des données, la création de la base de données vectorielle et la génération de réponses.
- Main.py : le fichier d'application Streamlit.
- FAQS.CSV : Un exemple de fichier CSV utilisé pour remplir la base de connaissances.
- exigences.txt : répertorie tous les packages Python requis.
- .env : stocke les variables d'environnement comme les clés d'API (non incluses dans le référentiel pour des raisons de sécurité).
Améliorations futures
- Développez la base de connaissances: ajoutez plus de documents ou de sources de données.
- Modèles affinés: ajustez les intérêts ou LLM pour des réponses plus précises.
- UI avancé: améliorez l'interface rationalisée avec des fonctionnalités supplémentaires telles que le filtrage de réponse ou les mécanismes de rétroaction.
Contributif
N'hésitez pas à alimenter ce référentiel, à créer une branche de fonctionnalité et à soumettre une demande de traction pour toute amélioration ou correction de bogues.
Licence
Ce projet est autorisé sous la licence du MIT. Voir le fichier de licence pour plus de détails.