File size: 3,367 Bytes
e90c91d
8d83a03
e90c91d
8d83a03
e90c91d
8d83a03
e90c91d
 
8d83a03
 
 
e90c91d
8d83a03
 
 
e90c91d
8d83a03
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
e90c91d
ecefbad
8d83a03
e90c91d
8d83a03
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
e90c91d
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
 🧠 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.