Ejecutar un modelo de lenguaje en tu propio servidor mantiene privados tus prompts y documentos y elimina las tarifas por token. Ollama simplifica la parte del modelo y Open WebUI te da una interfaz al estilo ChatGPT encima. Esta guía instala ambos en un servidor GPU con Ubuntu.
Qué necesitas
- Un servidor GPU. El tamaño del modelo decide la GPU. Un modelo de 7 a 8 mil millones de parámetros en 4 bits necesita aproximadamente de 5 a 6 GB de VRAM. Un modelo de 70B necesita mucho más, normalmente 40 GB o más. Consulta la página de hosting de LLM privado para ver opciones dimensionadas.
- Ubuntu 22.04 o 24.04 con el controlador de NVIDIA instalado. Los planes GPU nuestros pueden venir con CUDA listo.
- Docker para Open WebUI. Sigue cómo instalar Docker si lo necesitas.
Paso 1: comprueba la GPU
nvidia-smi
Deberías ver tu GPU, la versión del controlador y la versión de CUDA. Si falta el comando, instala primero el controlador de NVIDIA para tu tarjeta.
Paso 2: instala Ollama
curl -fsSL https://ollama.com/install.sh | sh
ollama --version
systemctl status ollama
El instalador configura un servicio de systemd que escucha en 127.0.0.1:11434. Lee el script antes de ejecutarlo si lo prefieres, ya que es una instalación por tubería.
Paso 3: descarga y prueba un modelo
ollama pull llama3.1:8b
ollama run llama3.1:8b "Explain what a VPS is in two sentences."
ollama ps
ollama ps muestra si el modelo está cargado en la GPU. Si dice CPU, la GPU no se está usando y las respuestas serán lentas.
Paso 4: añade Open WebUI
Ejecuta Open WebUI en Docker y apúntalo a Ollama en el host:
docker run -d --name open-webui --restart unless-stopped \
--add-host=host.docker.internal:host-gateway \
-e OLLAMA_BASE_URL=http://host.docker.internal:11434 \
-v open-webui:/app/backend/data \
-p 127.0.0.1:3000:8080 \
ghcr.io/open-webui/open-webui:main
Enlazar a 127.0.0.1 significa que todavía no está expuesto a internet. Crea la cuenta de administrador la primera vez que lo abras.
Paso 5: pon HTTPS delante
Usa Caddy para obtener certificados automáticos. Apunta un dominio al servidor y luego:
sudo apt install -y caddy
echo 'chat.example.com {
reverse_proxy 127.0.0.1:3000
}' | sudo tee /etc/caddy/Caddyfile
sudo systemctl reload caddy
En los ajustes de Open WebUI, desactiva los registros abiertos para que solo tú puedas crear cuentas.
Mantenlo privado
- Nunca expongas el puerto 11434 (la API de Ollama) a internet. No tiene inicio de sesión.
- Usa el cortafuegos para permitir solo SSH, 80 y 443. Consulta cómo proteger un VPS nuevo.
- Guarda los modelos y el historial de chats en el disco del servidor. No salen de la máquina.