| 🧠 README: Multi-Model LLM Chatbot with Image Generation and Emotion Analysis |
| 📋 Descripción del Proyecto |
| Este proyecto es un Chatbot Multi-Modelo interactivo que utiliza modelos alojados en Hugging Face para: |
|
|
| Responder preguntas utilizando un modelo LLM (Language Learning Model). |
| Recordar el historial de conversación para proporcionar respuestas más coherentes. |
| Analizar emociones en los textos proporcionados por los usuarios. |
| Generar imágenes a partir de descripciones de texto utilizando un modelo ligero y eficiente. |
| El proyecto está construido con Gradio para proporcionar una interfaz gráfica interactiva y fácil de usar. |
|
|
| 📦 Requisitos Previos |
| Antes de ejecutar este proyecto, asegúrate de tener lo siguiente instalado en tu máquina: |
|
|
| Python 3.8 o superior |
| Git |
| Dependencias del proyecto: |
| gradio |
| huggingface_hub |
| Instala las dependencias ejecutando: |
| |
| bash |
| Copiar código |
| pip install -r requirements.txt |
| 🔐 Configuración del Token de Hugging Face |
| Este proyecto utiliza modelos alojados en Hugging Face, por lo que necesitas un token de acceso para usarlos. |
| |
| 📋 Cómo Obtener un Token de Acceso |
| Inicia sesión en Hugging Face. |
| Genera un token de lectura. |
| Configura el token como variable de entorno en tu máquina: |
| Linux/macOS: |
| bash |
| Copiar código |
| export HF_API_TOKEN="TU_TOKEN" |
| Windows (PowerShell): |
| powershell |
| Copiar código |
| $env:HF_API_TOKEN="TU_TOKEN" |
| 🚀 Instrucciones para Ejecutar el Proyecto |
| 1️⃣ Clona el Repositorio |
| bash |
| Copiar código |
| git clone https://huggingface.co/tu_usuario/tu_repositorio |
| cd tu_repositorio |
| 2️⃣ Instala las Dependencias |
| bash |
| Copiar código |
| pip install -r requirements.txt |
| 3️⃣ Ejecuta la Aplicación |
| bash |
| Copiar código |
| python app.py |
| 4️⃣ Abre la Interfaz en tu Navegador |
| La aplicación estará disponible en http://127.0.0.1:7860. |
|
|
| 🧩 Diagrama de Flujo del Chatbot |
| El siguiente diagrama de flujo muestra cómo el chatbot selecciona el modelo adecuado y procesa la entrada del usuario: |
|
|
| mermaid |
| Copiar código |
| flowchart TD |
| Start["Usuario ingresa una consulta"] --> SelectModel{¿Selecciona acción?} |
| SelectModel -- "CHATBOT" --> LLMResponse["Respuesta generada por el modelo LLM"] |
| SelectModel -- "Generar Imagen" --> ImageResponse["Generación de imagen en progreso"] |
| SelectModel -- "Análisis de Emociones" --> EmotionResponse["Análisis de emociones en el texto"] |
| LLMResponse --> End["Respuesta devuelta al usuario"] |
| ImageResponse --> End |
| EmotionResponse --> End |
| |
| Ejemplo de Uso |
| En la carpeta assets se encuentran capturas de prueba de los 3 modelos utilizados |
| |
| |
| ⚙️ Instalación Opcional: Uso de un Entorno Virtual |
| Para mantener las dependencias aisladas y evitar conflictos, puedes crear un entorno virtual con los siguientes comandos: |
| |
| Linux/macOS: |
| bash |
| Copiar código |
| python3 -m venv venv |
| source venv/bin/activate |
| Windows: |
| bash |
| Copiar código |
| python -m venv venv |
| .\venv\Scripts\activate |
| ✅ Modelos Utilizados |
| microsoft/Phi-3-mini-4k-instruct – Modelo de lenguaje para responder preguntas y recordar el contexto de la conversación. |
| bhadresh-savani/distilbert-base-uncased-emotion – Modelo para análisis de emociones. |
| stabilityai/stable-diffusion-2-1-base – Modelo ligero para generación de imágenes. |
| 📄 Licencia |
| Este proyecto está bajo la licencia MIT. Puedes usarlo y modificarlo libremente bajo los términos de esta licencia. |
|
|
|
|