Proyecto 1: Chatbot LLM con API de Hugging Face
📋 Descripción
Este proyecto es un chatbot interactivo que utiliza un modelo de lenguaje de Hugging Face para responder preguntas en tiempo real. La aplicación está construida con Gradio, lo que permite al usuario interactuar fácilmente con el modelo a través de una interfaz gráfica.
📦 Requisitos
Antes de ejecutar este proyecto, asegúrate de tener lo siguiente instalado en tu equipo:
- Python 3.8 o superior
- Gradio
- huggingface_hub
Instala las dependencias ejecutando:
pip install gradio huggingface_hub
🔐 Configuración del Token de Hugging Face
El proyecto requiere un token de acceso de Hugging Face para conectarse a la API del modelo.
Cómo Obtener un Token
- Inicia sesión en tu cuenta de Hugging Face:
👉 https://huggingface.co/settings/tokens - Crea un nuevo token con los siguientes permisos habilitados:
Read
(lectura)
- Copia el token generado.
Configura el Token como Variable de Entorno
Para mantener tu token seguro, configúralo como una variable de entorno en tu sistema:
Windows (PowerShell):
$env:HF_API_TOKEN="TU_TOKEN"
Linux/macOS:
export HF_API_TOKEN="TU_TOKEN"
🚀 Cómo Ejecutar el Archivo
- Guarda el código en un archivo llamado
app.py
. - Abre la terminal en la carpeta donde guardaste el archivo.
- Ejecuta el archivo con el siguiente comando:
python app.py
- Abre el navegador y visita la URL proporcionada (por defecto:
http://127.0.0.1:7860
).
📚 Modelo Usado
- Modelo:
microsoft/Phi-3-mini-4k-instruct
- Fuente: Hugging Face
El modelo está diseñado para responder preguntas en lenguaje natural.
📤 Parámetros en la Petición
La aplicación realiza peticiones a la API de Hugging Face utilizando los siguientes parámetros:
messages
: Lista de mensajes en formato JSON. Ejemplo:[ {"role": "user", "content": "¿Cuál es la capital de Francia?"} ]
max_tokens
: Número máximo de tokens en la respuesta (500).
✨ Ejemplo de Uso
- Ingresa una pregunta en el cuadro de texto, por ejemplo:
¿Cuál es la capital de Francia?
- Presiona el botón "Enviar".
- La respuesta generada será:
La capital de Francia es París.
⚙️ Instalación Opcional (Entorno Virtual)
Para mantener las dependencias aisladas, puedes crear un entorno virtual:
python -m venv venv
source venv/bin/activate # En Linux/macOS
.env\Scriptsctivate # En Windows
📄 Licencia
Este proyecto está bajo la licencia MIT.