Contenu
- Nom de référentiel
- Titre du projet
- Brève description du projet
- Objectifs du projet
- Nom de l'ensemble de données
- Description de l'ensemble de données
- Objectif du projet en utilisant cet ensemble de données
- Taille de l'ensemble de données
- Algorithmes utilisés dans le cadre de notre enquête
- Exigences du projet
- Utilisation du projet
- Quelle architecture chatbot doit utiliser les utilisateurs
- Auteurs
Nom de référentiel
SmartChat-Conversational-chat
Titre du projet
SmartChat: un agent conversationnel au contexte
Brève description du projet
Développez un chatbot qui peut s'adapter efficacement aux changements de contexte et de sujet dans une conversation, en tirant parti de l'ensemble de données de réponse de Stanford pour fournir des réponses éclairées et pertinentes, et ainsi augmenter la satisfaction et l'engagement des utilisateurs.
Objectifs du projet
Créez une interface Web ou application conviviale qui permet aux utilisateurs d'avoir des conversations naturelles et cohérentes avec le chatbot, avec une cote de satisfaction élevée.
Nom de l'ensemble de données
L'ensemble de données utilisé dans ce projet est Stanford Question répondant à l'ensemble de données .
Source de données: Kaggle
Type de l'ensemble de données: texte
Description de l'ensemble de données
L'ensemble de données de réponse à la question de Stanford (Squad) est un ensemble de données de compréhension en lecture composé de questions posées par les travailleurs de la foule sur un ensemble d'articles Wikipedia. La réponse à chaque question est un segment de texte ou de portée du passage de lecture correspondant. Il y a plus de 100 000 paires de réponses aux questions sur plus de 500 articles. Plus d'informations peuvent être trouvées sur: https://rajpurkar.github.io/squad-explorer/
Objectif du projet en utilisant cet ensemble de données
- L'objectif du projet est de développer un chatbot qui peut effectuer des conversations multiples, s'adapter au contexte et gérer une variété de sujets.
Taille de l'ensemble de données:
- L'ensemble de données a 2 fichiers JSON. L'un est pour la formation et l'autre est destiné aux tests
- dev-v1.1.json - 4,9 Mb
- Train-v1.1.json - 30,3 Mo
Algorithmes utilisés dans le cadre de notre enquête
- 2 architectures différentes sont utilisées:
- Architecture GPT2-Medium utilisant Lora et PEFT
- Bert (Bert-Base-Snuslenced)
Exigences du projet
- python3
- ensembles de données
- torche
- pivot
- transformateurs
- évaluer
- Safettenseurs
- nombant
- pandas
- matplotlib
- scikit-apprend
- marin
- NLTK
- score de rouge
- rouge
- gradio
- tqdm
Utilisation du projet
- GOTO Squad Dataset Prétraitement et assurez-vous que vous disposez de fichiers
train-v1.1.json et dev-v1.1.json .- Au cas où vous ne les auriez pas, vous pouvez les télécharger ici et ici
- Fichier de prétraitement de l'ensemble de données GOTO Squad et exécuter toutes les cellules.
- Pour exécuter et afficher les résultats de l'approche Bert (Bert-Base-Oclélé), veuillez passer par les instructions fournies dans le fichier Squad_Chatbot_Using_bert-Base-UCLECED_README.md.
- Pour exécuter et afficher les résultats de l'approche GPT (GPT2-Medium en utilisant LORA et PEFT), veuillez passer par les instructions fournies dans le fichier squad_chatbot_using_gpt2-medium_readme.md.
Quelle architecture chatbot doit utiliser les utilisateurs
- En fait, les deux chatbots fonctionnent bien.
- Squad_using_gpt2-medium génère les réponses, mais la plupart du temps, il a des problèmes.
- Pour plus d'informations sur les observations et les détails techniques, reportez-vous aux fichiers de formation et de validation.
- Squad_Using_bert-Base-onleled fonctionne très bien comme prévu.
- La conclusion finale est: les utilisateurs peuvent utiliser n'importe quel chatbot. Mais pour une génération parfaite de réponses, utilisez Squad_Using_bert-Base-incasé.
Auteurs