Bienvenido a Soulful.ai-Inspirado en el caso de uso #4 para Hack-A-Roo Fall 2020
Introducción
Hay dos modos: modo amigable y modo crítico.
- Modo amistoso - 2 Configuración:
- Usuario vs. Bot:
- El chatbot hablará con el usuario principalmente de la manera simpática y empática.
- Ayuda a los usuarios a aliviar el estrés potencial, la ansiedad y la depresión de los problemas covid o personales.
- Bot vs. Bot (automático):
- Dos modelos separados (entrenados con una personalidad diferente) tendrán una breve conversación entre sí. Los roles pueden variar.
- Por ejemplo, el Modelo 1 puede ser una persona deprimida, mientras que el Modelo 2 es el terapeuta o un edredón.
- Modo crítico - 2 Configuración:
- Usuario vs. Bot:
- El chatbot hablará con el usuario principalmente de manera crítica.
- Ayuda al usuario a profundizar en un tema controvertido o simplemente a comprender puntos de vista conflictivos.
- Bot vs. Bot (automático):
- Dos modelos separados (entrenados con diferentes perspectivas) tendrán una breve conversación entre sí. Los roles pueden variar.
- Por ejemplo, el Modelo 1 puede ser partidario republicano, mientras que el Modelo 2 puede ser un partidario demócrata.
Implementación:
- Se construyó un conjunto de modelos en Google Colaboratory, que consiste en 4-5 modelos diferentes adecuados para diferentes dominios de conocimiento.
- El marco NLP es Huggingface, el marco de código abierto líder para soluciones NLP utilizando transformadores construidos sobre Pytorch.
- La aplicación móvil se basó en Android a través del marco React Native, una de las opciones más populares para desarrollar aplicaciones multiplataforma robustas utilizando JavaScript. El marco compatible con multiplataforma fue desarrollado por Facebook para facilitar la creación de aplicaciones nativas.
Alcance futuro:
- Humano en el bucle: retroalimentación en tiempo real
- Múltiples mensajes simultáneos de cada lado.
- Más dominios de conocimiento
- Mejora de la interfaz de usuario
- Implementación del modelo en la nube (Amazon AWS, Microsoft Azure, ...)
- Implementación de aplicaciones en Google Playstore
- Análisis multimodalidad:
- Procesamiento del lenguaje natural
- Detección de objetos (para interpretar las imágenes cargadas del usuario)
- Análisis de sentimientos de usuario
- Diversos modelos de texto a voz (basados en género, sensibles a la edad y más suena natural)
- Características del habla a texto (para simular llamadas telefónicas o facetiming)
Recursos
- PowerPoint se desliza sobre conmovedor.ai
- Muestra videos de la aplicación ejecutados
- Modelos BOT de Google Colaboratory:
- Modo amistoso
- Modo crítico
Referencias:
- https://reactnative.dev/
- https://github.com/microsoft/dialogpt
- https://github.com/huggingface/transformers
- https://www.reddit.com/r/Depression/
- https://www.reddit.com/dev/api/
- https://www.reddit.com/r/coronavirus/
- https://pytorch.org/
¿Listo para ver la aplicación usted mismo? ¡Sigue las instrucciones a continuación!
Requisito previo
¡Debe tener React Native, Git y Node.js instalados a nivel mundial en su computadora!
- Git: https://git-scm.com/book/en/v2/getting-started-instaling-git
- Node.js: node.js: https://nodejs.org/en/download/
- React Native: una vez que haya instalado Node.js, abra su línea de terminal/comando de su elección y ejecute este comando:
npm install -g react-native-cli
Configurar el entorno de desarrollo
- Siga las instrucciones en este enlace para configurar en consecuencia en función de su computadora (Windows o Mac): https://reactnative.dev/docs/environment-setup
¡Empiece!
Una vez que tenga todo configurado, siga los pasos a continuación para ejecutar la aplicación:
- Abra la línea de comando de su elección y clone El proyecto:
git clone https://github.com/ngchieu857529/emotionalchatbot.git
- Directamente en la carpeta clonada:
cd emotionalchatbot
- (Este tercer paso puede ser diferente para una máquina diferente. Aquí, estamos utilizando el emulador de Android para ejecutar la aplicación) Abra Android Studio y ejecute un emulador. Espera a que todo se cargue
- Regrese a la línea de comando y ejecute:
react-native run-android
=> ¡hecho! Una aplicación debe aparecer en su emulador de Android. Si se enfrenta a algún problema, ¡busque Internet para resolver los errores! ¡Diviértete charlando con el bot!