|
🧠 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. |
|
|
|
|