Chatbot IA dynamique avec sources de formation personnalisées
Chatbot-gpt-personnalisable
Ce projet est un chatbot IA dynamique qui peut être formé à partir de diverses sources, telles que des PDF, des documents, des sites Web et des vidéos YouTube. Il utilise un système utilisateur avec authentification sociale via Google et le framework Django REST pour son backend. Le chatbot exploite le modèle de langage GPT-3.5 d'OpenAI pour mener des conversations et est conçu pour être évolutif et facile à utiliser.
Caractéristiques
- Former le chatbot à partir de plusieurs sources (PDF, documents, sites Web, vidéos YouTube)
- Système utilisateur avec authentification sociale via Google
- Connectez-vous avec le modèle de langage OpenAI GPT-3.5 pour la conversation
- Utilisez Pinecone et FAISS pour l'indexation vectorielle
- Utiliser le text-embedding-ada-002 d'OpenAI pour l'intégration de texte
- Bibliothèque Python Langchain pour le traitement de fichiers et la conversion de texte
- Architecture évolutive avec paramètres séparés pour les environnements locaux, de préparation et de production
- Paramètres de site dynamiques pour les mises à jour du titre et des invites
- Prise en charge multilingue
- Prise en charge de la base de données PostgreSQL
- Planificateur de tâches de céleri avec options Redis et AWS SQS
- Prise en charge du compartiment AWS S3 pour l'hébergement évolutif
- Déploiement facile sur Heroku ou AWS
Technologies
- Langage : Python
- Cadre : Cadre Django REST
- Base de données : PostgreSQL
Principales bibliothèques :
- Céleri
- Langchain
- OpenAI
- Pomme de pin
- FAISS
Exigences
- Python 3.8 ou supérieur
- Django 4.1 ou supérieur
- Clé API pomme de pin
- Clé API d'OpenAI
- Redis ou AWS SQS
- Base de données PostgreSQL
Portée future
- Intégration avec davantage de services tiers pour l'authentification
- Prise en charge de formats de fichiers et de types de médias supplémentaires pour la formation des chatbots
- Meilleure connaissance du contexte dans les conversations
- Prise en charge multilingue améliorée avec détection automatique de la langue
- Intégration avec les plateformes de messagerie et les applications de chat populaires
Comment courir
- Clonez le référentiel.
git clone https://github.com/shamspias/customizable-gpt-chatbot
- Installez les packages requis en exécutant
pip install -r requirements.txt
- Exécutez
celery -A config worker --loglevel=info
- Exécutez la commande
python manage.py runserver
- Ouvrez
http://127.0.0.1:8000/
dans votre navigateur
Sous Linux et Mac, vous devez installer 'sudo apt install python3-dev -y`
- Assurez-vous que les bibliothèques de développement pour libcurl sont installées sur votre système. Vous pouvez les installer en exécutant la commande suivante :
sudo apt-get install libcurl4-openssl-dev gcc libssl-dev -y
- Assurez-vous que la dernière version de pip et setuptools est installée en exécutant la commande suivante :
pip install --upgrade pip setuptools
-
pip install pycurl
Déploiement
Le chatbot peut être déployé sur Heroku ou AWS en suivant les procédures standards de déploiement de Django sur ces plateformes.
Problèmes
- Si vous n'utilisez pas AWS SQS, vous n'avez pas besoin d'installer les packages
pycurl
et boto3
. - Si vous n'utilisez pas AWS S3, vous n'avez pas besoin d'installer le package
django-storages
.
Note
Assurez-vous de disposer de la clé API d'OpenAI avant d'exécuter le projet.
Il ne s'agit que d'une implémentation de base du projet, vous pouvez toujours ajouter plus de fonctionnalités et de personnalisation en fonction de vos besoins.
Apprécier!