Contenido
- Nombre de repositorio
- Título del proyecto
- Descripción breve del proyecto
- Objetivos del proyecto
- Nombre del conjunto de datos
- Descripción del conjunto de datos
- Objetivo del proyecto utilizando este conjunto de datos
- Tamaño del conjunto de datos
- Algoritmos que se utilizan como parte de nuestra investigación
- Requisitos del proyecto
- Uso del proyecto
- ¿Qué arquitectura de chatbot debería usar los usuarios?
- Autores
Nombre de repositorio
SmartChat-Conversational-Chatbot
Título del proyecto
SmartChat: un agente de conversación consciente del contexto
Descripción breve del proyecto
Desarrolle un chatbot que pueda adaptarse de manera efectiva al contexto y los cambios de tema en una conversación, aprovechando el conjunto de datos de respuesta a la pregunta de Stanford para proporcionar respuestas informadas y relevantes, y por lo tanto, aumentando la satisfacción y el compromiso del usuario.
Objetivos del proyecto
Cree una interfaz web o aplicación fácil de usar que permita a los usuarios tener conversaciones naturales y coherentes con el chatbot, con una alta calificación de satisfacción.
Nombre del conjunto de datos
El conjunto de datos utilizado en este proyecto es el conjunto de datos de respuesta a la pregunta de Stanford .
Fuente de datos: Kaggle
Tipo del conjunto de datos: texto
Descripción del conjunto de datos
El conjunto de datos de contestadores de preguntas (escuadrón) de Stanford es un conjunto de datos de comprensión de lectura que consta de preguntas planteadas por los trabajadores colectivos en un conjunto de artículos de Wikipedia. La respuesta a cada pregunta es un segmento de texto, o tramo, desde el pasaje de lectura correspondiente. Hay más de 100,000 pares de preguntas y respuestas en más de 500 artículos. Puede encontrar más información en: https://rajpurkar.github.io/squad-explorer/
Objetivo del proyecto utilizando este conjunto de datos
- El objetivo del proyecto es desarrollar un chatbot que pueda llevar a cabo conversaciones múltiples, adaptarse al contexto y manejar una variedad de temas.
Tamaño del conjunto de datos:
- El conjunto de datos tiene 2 archivos JSON. Uno es para el entrenamiento y el otro es para probar
- dev-v1.1.json-4.9 MB
- Train-V1.1.Json-30.3 MB
Algoritmos que se utilizan como parte de nuestra investigación
- Se utilizan 2 arquitecturas diferentes:
- Arquitectura medio GPT2 usando Lora y Peft
- Bert (Bert-Base-Inscase)
Requisitos del proyecto
- python3
- conjuntos de datos
- antorcha
- peft
- transformadores
- evaluar
- seguros de seguridad
- numpy
- pandas
- mate
- lear
- marino
- nltk
- puntaje rojo
- colorete
- Gradio
- TQDM
Uso del proyecto
- Preprocesamiento del conjunto de datos del escuadrón de goto y asegúrese de tener archivos
train-v1.1.json y dev-v1.1.json .- En caso de que no los tenga, puede descargarlos aquí y aquí
- Archivo de preprocesamiento del conjunto de datos del escuadrón de GOTO y ejecuta todas las celdas.
- Para ejecutar y ver los resultados del enfoque BERT (Bert-Base-InsiSed), revise las instrucciones proporcionadas en el archivo Squad_Chatbot_using_Bert-Base-ofrased_readme.md.
- Para ejecutar y ver los resultados del enfoque GPT (GPT2-Medium usando Lora y Peft), revise las instrucciones proporcionadas en el archivo squad_chatbot_using_gpt2-mediium_readme.md.
¿Qué arquitectura de chatbot debería usar los usuarios?
- En realidad, ambos chatbots se están ejecutando bien.
- Squad_using_gpt2-medium genera las respuestas, pero la mayoría de las veces tiene problemas.
- Para obtener más información sobre las observaciones y los detalles técnicos, consulte los archivos de capacitación y validación.
- Squad_using_bert-Base-OncoDeed funciona muy bien como se esperaba.
- La conclusión final es: los usuarios pueden usar cualquier chatbot. Pero para una generación perfecta de respuestas, utilice Squad_Using_Bert-Base-Oncule.
Autores