# Chatbot Demo V3 Este proyecto es un prototipo de chatbot desarrollado con Gradio y Hugging Face, diseñado para experimentar con diferentes modelos de lenguaje para la enseñanza del inglés a adolescentes hispanohablantes. Este chatbot es parte de un proyecto más amplio llamado "Métodos de generación controlada para la construcción de agentes conversacionales de apoyo a la enseñanza de inglés." ## Estructura del Proyecto - **`app.py`**: Contiene la lógica principal del chatbot, incluida la carga del modelo, la interacción con los usuarios y la integración con Google Sheets para el almacenamiento de datos. - **`config.py`**: Archivo de configuración que maneja la autenticación con Google Sheets, la configuración de los modelos disponibles, y otros parámetros clave del proyecto. - **`.gitattributes`**: Archivo de configuración para Git, utilizado para manejar archivos de texto y otros aspectos específicos del control de versiones. - **`requirements.txt`**: Lista de dependencias de Python necesarias para ejecutar el proyecto. - **`tokyo-portal-326513-90aee094bab9.json`**: Archivo de credenciales utilizado para la autenticación con Google Sheets. - **`user_guide.txt`**: Guía de usuario para el chatbot, proporcionando instrucciones sobre cómo utilizar la aplicación. ## Requisitos - **Python 3.8+** - **Dependencias**: Todas las dependencias necesarias están listadas en el archivo `requirements.txt`. Puedes instalarlas ejecutando: ```bash pip install -r requirements.txt Credenciales de Google Sheets: El archivo tokyo-portal-326513-90aee094bab9.json debe estar en el directorio raíz del proyecto para permitir la conexión con Google Sheets. Uso Configuración: Asegúrate de que todas las dependencias estén instaladas y que el archivo config.py esté correctamente configurado con tus credenciales de Google Sheets y tu token de Hugging Face. Ejecución del Chatbot: Ejecuta el archivo app.py para iniciar la aplicación. Esto abrirá una interfaz de usuario basada en Gradio en tu navegador. python app.py Interacción: Usa la interfaz para seleccionar un modelo, una historia, y un prompt del sistema. Luego, puedes interactuar con el chatbot a través de la caja de chat. Evaluación: Después de la interacción, puedes puntuar la conversación y dejar un comentario. Estos datos se guardarán tanto localmente como en Google Sheets. Estructura del Código Carga de modelos: Los modelos de lenguaje se cargan dinámicamente basados en la selección del usuario. Interacción: El chatbot maneja la conversación asegurándose de que los roles de usuario y asistente alternen correctamente. Almacenamiento de datos: Las interacciones del usuario, junto con sus evaluaciones, se almacenan en una hoja de Google Sheets para su posterior análisis. Personalización Puedes personalizar la aplicación ajustando los modelos disponibles, los prompts del sistema, y las historias directamente en el archivo config.py o actualizando las hojas de Google Sheets asociadas. Contribuciones Si deseas contribuir a este proyecto, por favor sigue los siguientes pasos: 1. Haz un fork del repositorio. 2. Crea una nueva rama (git checkout -b feature-nueva-funcionalidad). 3. Realiza tus cambios y haz commit (git commit -am 'Añadir nueva funcionalidad'). 4. Envía tus cambios a tu repositorio (git push origin feature-nueva-funcionalidad). 5. Abre un Pull Request. Licencia Este proyecto está bajo la Licencia MIT.