¿Por Qué Auto-hospedar un LLM?

Auto-hospedar un modelo de lenguaje en tu propio servidor te otorga soberanía digital. En lugar de enviar tus consultas a servidores de terceros, como los de OpenAI o Google, la IA funciona localmente en tu infraestructura.

  • Privacidad y Control de Datos: Tus conversaciones, documentos y prompts nunca salen de tu servidor. Esto es crucial para información sensible o proyectos bajo estrictas regulaciones como el RGPD.
  • Costos Predecibles: Evitas costos por token de las APIs comerciales. Tu mayor gasto es el servidor VPS, que suele ser una tarifa mensual fija.
  • Personalización Total: Puedes ajustar parámetros del modelo, integrarlo con tus bases de datos internas o entrenarlo con datos específicos de tu dominio.
  • Sin Límites de Uso: No estás sujeto a cuotas de solicitudes, límites de tokens o políticas de uso cambiantes de proveedores externos.

Nota

Auto-hospedar es ideal para desarrolladores, empresas que manejan datos confidenciales o entusiastas de la IA que quieren experimentar sin restricciones. No es la opción más simple si buscas una solución lista para usar sin configuración.

Requisitos del VPS para LLMs

Los LLMs son intensivos en recursos. Un VPS básico de 1 GB de RAM no será suficiente. Los requisitos varían enormemente según el tamaño del modelo.

FactorRecomendación para Modelos Pequeños (7B)Recomendación para Modelos Medianos (13B-70B)
CPU/CoresMínimo 2-4 núcleos4-8 núcleos o más
RAMMínimo 8 GB16 GB - 64 GB+
Almacenamiento20-40 GB SSD/NVMe50-100 GB+ SSD/NVMe
GPU (Opcional, pero acelera)No estrictamente necesariaAltamente recomendable (vRAM ≥ tamaño del modelo)

La clave es la RAM. Un modelo de 7 mil millones de parámetros (7B) en formato de 4 bits puede necesitar unos 4-6 GB de RAM solo para cargarse. Para modelos más grandes como Llama 3 70B, necesitarás un VPS con mucha RAM y, preferiblemente, una GPU con memoria de vídeo (vRAM) suficiente.

Para un despliegue serio, considera un VPS con recursos dedicados. Un proveedor como Hostinger ofrece planes VPS con NVMe, múltiples núcleos y opciones de hasta 16 GB de RAM, un buen punto de partida para modelos de tamaño pequeño a mediano.

Paso 1: Seleccionar el Modelo de IA

Elige un modelo de código abierto. Los más populares para auto-hospedaje son:

  • Llama 3 (de Meta): La serie actual más potente y equilibrada. Disponible en versiones 8B y 70B. Buena comprensión y generación en inglés y otros idiomas.
  • Mistral (de Mistral AI): Modelos como Mistral 7B y Mixtral 8x7B son conocidos por su eficiencia y rendimiento competitivo con menos parámetros.
  • Gemma (de Google): Modelos ligeros (2B y 7B) diseñados para ser accesibles y seguros.

Para empezar, recomiendo un modelo cuantizado de 7B (como Llama 3 8B o Mistral 7B). La cuantización (a 4 o 8 bits) reduce drásticamente los requisitos de memoria y la pérdida de calidad es mínima para la mayoría de tareas.

Paso 2: Preparar el Entorno del VPS

Conecta a tu VPS vía SSH. Luego, instala las dependencias básicas. En un sistema basado en Ubuntu/Debian:

sudo apt update && sudo apt upgrade -y
sudo apt install -y python3-pip python3-venv git curl

Es buena práctica trabajar en un entorno virtual de Python:

python3 -m venv llm_env
source llm_env/bin/activate

Paso 3: Desplegar con Ollama (Recomendado)

Ollama es la herramienta más sencilla para comenzar. Maneja la descarga, ejecución y gestión de modelos. Instálalo en tu VPS:

curl -fsSL https://ollama.com/install.sh | sh

Una vez instalado, puedes descargar y ejecutar un modelo con un solo comando. Por ejemplo, para Llama 3 8B en 4 bits:

ollama run llama3:8b

La primera vez descargará el modelo (unos 4-5 GB). Luego, verás un prompt interactivo donde ya puedes hacer preguntas. Para ejecutarlo como un servidor API en segundo plano (útil para integrarlo con otras apps):

ollama serve &

Y en otra sesión, puedes interactuar con la API:

curl http://localhost:11434/api/generate -d '{
  "model": "llama3:8b",
  "prompt": "Explícame la teoría de la relatividad"
}'

Herramientas y Alternativas Populares

  • Ollama: Como vimos, es la opción más fácil y rápida para empezar.
  • Text Generation WebUI (oobabooga): Interfaz web con muchas funciones, soporte para múltiples backends y modelos. Ideal si quieres una interfaz tipo ChatGPT en tu servidor.
  • vLLM: Un backend de inferencia de alto rendimiento optimizado para servir LLMs. Es lo que usan muchos servicios profesionales por su velocidad.
  • Llama.cpp: Una implementación en C/C++ que permite ejecutar modelos en CPU de manera eficiente. Es la opción si no tienes GPU.

Ejemplo Rápido con Text Generation WebUI

Clona el repositorio y lanza la interfaz web:

git clone https://github.com/oobabooga/text-generation-webui
cd text-generation-webui
pip install -r requirements.txt
python server.py --share --model llama-3-8b

Esto iniciará un servidor web (usualmente en el puerto 7860) al que podrás acceder desde tu navegador usando la IP de tu VPS.

Pasos Siguientes y Consideraciones de Seguridad

Una vez que tu modelo esté funcionando localmente, debes asegurar el acceso.

  1. No expongas el puerto API (11434 para Ollama, 7860 para WebUI) directamente a Internet. Usa un firewall (como UFW) para bloquear todos los puertos excepto SSH.
  2. Para acceder de forma segura desde fuera, configura un túnel SSH o un proxy inverso con Nginx y autenticación.
  3. Monitorea el uso de recursos (con htop o nvidia-smi si usas GPU) para asegurarte de que tu VPS no se satura.

El auto-hospedaje de LLMs abre un mundo de posibilidades para proyectos personalizados y empresariales. Requiere una configuración técnica, pero el control y la privacidad que obtienes valen la pena. Para este tipo de cargas de trabajo, elegir un VPS con recursos garantizados y buen soporte es clave. Puedes explorar las opciones de VPS de Hostinger que ofrecen el equilibrio adecuado de CPU, RAM y almacenamiento NVMe para ejecutar estos modelos de forma estable.

Empieza con un modelo pequeño, domina el flujo de trabajo y luego escala a modelos más grandes según las capacidades de tu servidor y tus necesidades.