Cambiar tema

Ollama + Open WebUI: monta una interfaz local tipo ChatGPT (guía completa)

Easton editorial illustration: one local-model cube flowing into a large browser chat card

Ollama hace que ejecutar modelos grandes en local sea sorprendentemente sencillo: un solo comando para instalarlo y hasta un portátil viejo con 8 GB de RAM puede correr un modelo de 7B. Open WebUI aporta una interfaz al estilo ChatGPT, despliegue en un clic con Docker, base de conocimiento integrada, gestión multiusuario y API compatible con OpenAI.

En este artículo te enseñamos a montar con estas dos herramientas un sistema completo de chat con IA en local.


¿Por qué elegir el despliegue local?

ChatGPT y Claude funcionan muy bien, pero hay varios puntos que no me convencen del todo.

El costo. Veinte dólares al mes, 240 al año. Para un usuario intensivo puede tener sentido, pero si solo haces preguntas de código o consultas puntuales, el gasto duele. Con un modelo local, tras la descarga es gratis: sin facturación por tokens ni preocuparte por renovaciones.

La privacidad. Lo que escribes se sube a los servidores de OpenAI o Anthropic. Documentos de trabajo, notas personales, conversaciones privadas… la verdad es que no me siento del todo cómodo. En local, los datos se quedan en tu disco y no salen de ahí.

El modo offline. De viaje o con mala conexión, la IA en la nube deja de servir. Un modelo local, una vez descargado, corre sin red.

La personalización. En los servicios en la nube los parámetros vienen bloqueados. Temperature, plantillas de prompt… no puedes tocarlos. En local, ajustas lo que quieras.


Conceptos clave de un vistazo

Antes de seguir, conviene entender qué hace cada herramienta.

Ollama es un ejecutor de modelos. Te ayuda a descargar, gestionar y ejecutar grandes modelos de lenguaje, y además expone una API (puerto 11434 por defecto). Piénsalo como «la API de OpenAI en local».

Open WebUI es una interfaz web. Ventana de chat al estilo ChatGPT, cambio de modelos, historial… todo incluido. Se conecta a Ollama por API y convierte la línea de comandos en una interfaz gráfica en el navegador.

La arquitectura queda así:

Navegador (localhost:3000)

Open WebUI (contenedor Docker)
    ↓ HTTP API
Ollama (servicio local, puerto 11434)

Modelos locales (guardados en ~/.ollama)

Abres el navegador → Open WebUI llama a la API de Ollama → Ollama carga el modelo e infiere → te devuelve el resultado. Así de simple.


Requisitos del sistema y preparación

Antes de desplegar, comprueba si tu hardware aguanta.

Requisitos mínimos:

  • Procesador: Intel i5 o equivalente
  • Memoria: 8 GB RAM (16 GB o más recomendado)
  • Almacenamiento: al menos 10 GB libres (los modelos ocupan bastante)
  • Sistema: Windows 10+, macOS 11+, Linux

Configuración recomendada:

  • GPU: NVIDIA RTX 3060 o superior (la inferencia va mucho más rápida)
  • Mac con Apple Silicon: series M1/M2/M3, arquitectura de memoria unificada, muy adecuada para modelos

Dependencias de software:

  • Docker: para ejecutar Open WebUI (también puedes prescindir de él, pero Docker simplifica mucho)

Comprueba si Docker está instalado:

docker --version
docker compose version

Si ves números de versión, está listo. Si no, instala Docker Desktop (Windows/macOS) o Docker Engine (Linux).


Paso 1: instalar Ollama

Instalar Ollama es cuestión de un comando.

1.1 Instalación en macOS y Linux

Abre la terminal y ejecuta:

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

El script descarga Ollama e lo instala en el sistema. Al terminar, el servicio arranca en segundo plano.

1.2 Instalación en Windows

En PowerShell:

irm https://ollama.com/install.ps1 | iex

O descarga el instalador de Windows en ollama.com/download y ejecútalo. Cualquiera de las dos opciones vale.

1.3 Instalación con Docker (opcional)

¿Quieres Ollama también en contenedor? Con Docker:

docker pull ollama/ollama:latest
docker run -d -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama

-v ollama:/root/.ollama guarda los modelos en un volumen de Docker: no se pierden al reiniciar el contenedor.

1.4 Verificar la instalación

Cuando termines, confirma que Ollama funciona:

ollama --version

Deberías ver algo como ollama version is 0.1.x.

Si el servicio no arrancó solo, lánzalo manualmente:

ollama serve

Esto inicia el servicio API de Ollama en segundo plano, escuchando en http://localhost:11434.


Paso 2: descargar y ejecutar modelos

Con Ollama instalado, toca bajar un modelo.

2.1 Cómo elegir modelo

Modelos de distinto tamaño exigen distinto hardware. Esta tabla ayuda a decidir rápido:

HardwareModelo recomendadoParámetrosDiscoComando
8 GB RAM, sin GPULlama 3.2 1B1B740 MBollama run llama3.2:1b
8 GB RAM, sin GPUGemma 3 2B2B1.4 GBollama run gemma3:2b
16 GB RAMLlama 3.2 3B3B2 GBollama run llama3.2
16 GB RAMQwen 2.5 7B7B4 GBollama run qwen2.5:7b
16 GB RAM + GPULlama 3.1 8B8B4.7 GBollama run llama3.1:8b
32 GB RAM + GPUDeepSeek R1 14B14B8 GBollama run deepseek-r1:14b
64 GB RAM + GPULlama 3.3 70B70B39 GBollama run llama3.3:70b

Por uso:

  • Conversación diaria, tareas simples: Llama 3.2 1B o 3B
  • Buen chino: serie Qwen 2.5 (de Alibaba, muy sólida en chino)
  • Código: serie DeepSeek R1 (razonamiento fuerte, ideal para generación de código)
  • Alto rendimiento general: Llama 3.1 8B o Mistral 7B

2.2 Descargar modelos

Con ollama pull:

# Descargar Llama 3.2 (versión 3B por defecto)
ollama pull llama3.2

# Descargar DeepSeek R1 7B
ollama pull deepseek-r1:7b

# Descargar Qwen 2.5 7B (bueno en chino)
ollama pull qwen2.5:7b

La primera descarga puede tardar unos minutos según tamaño y conexión. Llama 3.2 me llevó unos 2 minutos; DeepSeek R1 7B un poco más.

2.3 Ejecutar el modelo en chat

Descargado, ejecútalo directamente:

ollama run llama3.2

Entrarás en una interfaz de chat:

>>> Send a message (/? for help)

Escribe una pregunta y el modelo responde en tiempo real:

>>> Hola, preséntate

¡Hola! Soy un asistente de IA local basado en el modelo Llama 3.2...

Sal con Ctrl + d o escribiendo /bye.

2.4 Comandos de gestión habituales

Ver modelos descargados:

ollama list

Eliminar un modelo:

ollama rm llama3.2:1b

Copiar un modelo (con alias):

ollama cp llama3.2 my-llama

Ver detalles del modelo:

ollama show llama3.2

Paso 3: instalar Open WebUI

La línea de comandos basta para muchas cosas. Pero si quieres una interfaz gráfica al estilo ChatGPT, instala Open WebUI.

3.1 Despliegue con un solo contenedor Docker (rápido)

Asegúrate de que Ollama está en marcha (ollama serve) y ejecuta:

docker run -d -p 3000:8080 \
  --add-host=host.docker.internal:host-gateway \
  -v open-webui:/app/backend/data \
  --name open-webui \
  --restart unless-stopped \
  ghcr.io/open-webui/open-webui:main

Parámetros clave:

  • -p 3000:8080: mapea el puerto 8080 del contenedor al 3000 del host
  • --add-host=host.docker.internal:host-gateway: permite al contenedor acceder al Ollama del host
  • -v open-webui:/app/backend/data: persiste datos (historial, cuentas)
  • --restart unless-stopped: el contenedor arranca solo tras reiniciar Docker

Listo: abre el navegador en:

http://localhost:3000

3.2 Despliegue con Docker Compose (recomendado)

¿Quieres gestionar Ollama y Open WebUI con Docker? Docker Compose es más cómodo.

Crea un directorio:

mkdir open-webui-project
cd open-webui-project

Crea un archivo compose.yaml:

services:
  open-webui:
    image: ghcr.io/open-webui/open-webui:main
    container_name: open-webui
    ports:
      - "3000:8080"
    volumes:
      - ./data:/app/backend/data
    environment:
      - "OLLAMA_BASE_URL=http://ollama:11434"
    restart: unless-stopped
    depends_on:
      - ollama

  ollama:
    image: ollama/ollama:latest
    container_name: ollama
    volumes:
      - ./ollama:/root/.ollama
    ports:
      - "11434:11434"
    restart: unless-stopped

Arranca los servicios:

docker compose up -d

Comprueba el estado:

docker compose ps

Si ambos contenedores muestran running, todo correcto.

3.3 Primer acceso y configuración

Abre http://localhost:3000 en el navegador. La primera vez verás la pantalla de creación de cuenta.

Crear cuenta de administrador:

  • Usuario, email y contraseña
  • Pulsa «Sign Up»

Tras iniciar sesión, Open WebUI detecta Ollama y lista los modelos disponibles. Si ya descargaste modelos, el menú desplegable mostrará algo como:

llama3.2:latest
deepseek-r1:7b
qwen2.5:7b

¿No se detecta solo? Ve a Settings → Connections y define manualmente la URL de la API de Ollama:

http://host.docker.internal:11434

Con Docker Compose, usa:

http://ollama:11434

Paso 4: uso básico

Con la interfaz montada, veamos cómo usarla.

4.1 Chat al estilo ChatGPT

La interfaz se parece mucho a ChatGPT:

  • A la izquierda, lista de conversaciones: crear, borrar, renombrar
  • Arriba, selector de modelo
  • Abajo, caja de texto; Enter para enviar

Elige un modelo (por ejemplo llama3.2), escribe tu pregunta y la respuesta aparece en streaming, igual que en ChatGPT.

4.2 Cambiar de modelo

Puedes cambiar de modelo en la misma conversación. Abre el selector superior, elige otro modelo y sigue hablando.

Sirve para comparar respuestas:

  • Haz la misma pregunta con Llama 3.2
  • Cambia a DeepSeek R1 y mira si profundiza más

4.3 Gestión de conversaciones

  • Nueva conversación: «New Chat» a la izquierda
  • Renombrar: clic en el título y edita
  • Eliminar: clic derecho en la conversación
  • Buscar historial: caja de búsqueda arriba a la izquierda

Todo el historial vive en el volumen Docker local; no se sube a la nube.

4.4 Ajuste de parámetros

El icono de ajustes junto al cuadro de texto permite modificar parámetros del modelo:

  • Temperature: controla la aleatoriedad. Valores bajos (0.1-0.3) más estables; altos (0.7-0.9) más creativos
  • Top P: acota el universo de tokens elegidos
  • Longitud máxima de salida: limita el tamaño de la respuesta

Influyen mucho en el resultado. Para código, temperature baja; para copy creativo, más alta.


Paso 5: funciones avanzadas

Además del chat básico, Open WebUI trae varias funciones útiles.

5.1 Construir una base de conocimiento RAG

RAG (Retrieval-Augmented Generation) convierte tus documentos en una base que la IA puede consultar.

Cómo usarlo:

  1. Pestaña «Documents» a la izquierda
  2. «Upload» y elige archivos (PDF, Markdown, TXT, DOCX)
  3. Tras subirlos, el sistema los indexa automáticamente

En el chat, marca «Use Documents» y la IA recuperará información de tus archivos.

Ejemplos:

  • Sube la documentación de la API de tu empresa y pregunta por parámetros de un endpoint
  • Sube notas personales y pregunta qué se acordó en la última reunión
  • Sube un PDF técnico y pide una explicación detallada de un concepto

Es un «chat con tu biblioteca» en local: los documentos siguen en tu disco.

5.2 Gestión multiusuario

¿Varias personas en el mismo sistema? Puedes crear cuentas distintas.

El administrador, en Settings → Users, puede:

  • Crear usuarios
  • Asignar permisos (usuario normal o administrador)
  • Ver la lista de usuarios

Cada usuario tiene su historial aislado.

5.3 Integración API

Tanto Open WebUI como Ollama exponen APIs compatibles con OpenAI para conectar herramientas existentes.

Llamar a la API de Ollama:

curl http://localhost:11434/api/chat -d '{
  "model": "llama3.2",
  "messages": [
    {"role": "user", "content": "Hello"}
  ],
  "stream": false
}'

Llamar a la API de Open WebUI (con autenticación, obtén un token antes):

curl http://localhost:3000/api/chat/completions \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -d '{
    "model": "llama3.2",
    "messages": [{"role": "user", "content": "Hello"}]
  }'

Ejemplo en Python:

import requests

response = requests.post('http://localhost:11434/api/chat', json={
    'model': 'llama3.2',
    'messages': [{'role': 'user', 'content': 'Hello'}],
    'stream': False
})

print(response.json()['message']['content'])

Así puedes enlazar el modelo local con plugins de VS Code, scripts de automatización u otras herramientas que hablen la API de OpenAI.


Paso 6: ajuste de rendimiento

¿La inferencia va lenta o te falta memoria? Prueba estos ajustes.

6.1 Aceleración GPU

Ollama detecta y usa la GPU automáticamente. ¿No la reconoce? Revisa drivers.

GPU NVIDIA:

Instala drivers NVIDIA y CUDA. Ollama usará nvidia-smi para detectar la GPU.

Mac con Apple Silicon:

En M1/M2/M3 no hace falta configuración extra: Ollama usa Metal.

GPU AMD:

En Linux puedes instalar la versión ROCm de Ollama:

curl -L https://ollama.com/download/ollama-linux-amd64-rocm.tgz -o ollama-linux-amd64-rocm.tgz
sudo tar -C /usr/ -xzf ollama-linux-amd64-rocm.tgz

6.2 Configuración de concurrencia

¿Varios modelos a la vez o más capacidad concurrente? Variables de entorno:

# Número de modelos en paralelo
OLLAMA_NUM_PARALLEL=2 ollama serve

# Máximo de modelos cargados
OLLAMA_MAX_LOADED_MODELS=2 ollama serve

Útil en escenarios multiusuario para evitar la latencia al cambiar de modelo.

6.3 Cuantización de modelos

¿Un modelo grande (como 70B) consume demasiada RAM? Usa una versión cuantizada:

# Versión 4-bit (ocupa ~75 % menos)
ollama pull llama3.3:70b-q4_K_M

La cuantización baja un poco la calidad, pero mejora velocidad y uso de memoria.


Solución de problemas frecuentes

Durante el despliegue pueden surgir estos casos.

P1: la descarga del modelo va muy lenta

Causa: los servidores oficiales de Ollama están fuera de China; la descarga puede ser lenta desde allí.

Solución:

  • Usar un proxy
  • O descargar el GGUF desde un mirror e importarlo manualmente en Ollama

Importación manual:

# Tras descargar el GGUF, crea un Modelfile
FROM ./llama3.2.gguf

# Crear el modelo
ollama create my-llama3.2 -f Modelfile

P2: Open WebUI no se conecta a Ollama

Síntoma: «Ollama connection failed» en la interfaz.

Comprobaciones:

  1. Confirma que Ollama está activo:
curl http://localhost:11434

Debería devolver "Ollama is running".

  1. Con Docker, revisa la red:
docker exec -it open-webui curl http://host.docker.internal:11434

Si falla, configura OLLAMA_BASE_URL manualmente.

P3: la GPU no se reconoce

Síntoma: inferencia muy lenta; nvidia-smi no muestra uso de GPU.

Comprobaciones:

  1. Drivers NVIDIA:
nvidia-smi

Deberías ver la GPU.

  1. ¿Ollama ve la GPU?
ollama show llama3.2 --system

Si indica CPU-only, la GPU no se detectó.

Solución:

  • Reinstalar drivers NVIDIA
  • Verificar compatibilidad de CUDA
  • En Linux, puede hacer falta CUDA_VISIBLE_DEVICES

P4: error de memoria insuficiente

Síntoma: error OOM (Out of Memory) con modelos grandes.

Solución:

  • Modelo más pequeño (1B o 3B)
  • Versión cuantizada (q4_K_M)
  • Más espacio swap (Linux)
  • Cerrar programas que consuman RAM

P5: el contenedor Docker no arranca

Síntoma: docker ps muestra el contenedor como Exited.

Comprobación:

Revisa los logs:

docker logs open-webui

Causas habituales:

  • Conflicto de puerto (3000 ocupado)
  • Permisos del volumen
  • Memoria insuficiente

Solución:

  • Cambiar puerto (por ejemplo -p 8080:8080)
  • Revisar permisos del volumen Docker
  • Aumentar límite de memoria del contenedor

Resumen

Montar una interfaz tipo ChatGPT con Ollama + Open WebUI se resume en:

  1. Instalar Ollama (un comando)
  2. Descargar el modelo adecuado (según hardware)
  3. Desplegar Open WebUI (un clic con Docker)
  4. Empezar a chatear

Al terminar tendrás:

  • Un asistente de chat gratis
  • Datos totalmente privados en local
  • Uso offline
  • Parámetros de modelo personalizables
  • Base de conocimiento ampliable (RAG)
  • APIs integrables

Encaja bien para uso personal y para equipos pequeños. Para ir más allá:

  • Modelfile para personalizar comportamiento
  • Integrar modelos en la nube y locales a la vez
  • Despliegue en producción con Kubernetes


Recursos de referencia

Si tienes dudas, busca en los GitHub Issues de Ollama y Open WebUI: la comunidad es activa y casi todo tiene respuesta documentada.

Montar una interfaz local tipo ChatGPT

Desplegar en local una interfaz de chat con IA al estilo ChatGPT con Ollama y Open WebUI

⏱️ Estimated time: 30 min

  1. 1

    Step 1: Instalar Ollama

    Elige el método según tu sistema operativo:

    • macOS/Linux: curl -fsSL https://ollama.com/install.sh | sh
    • Windows: irm https://ollama.com/install.ps1 | iex
    • Docker: docker pull ollama/ollama:latest

    Tras la instalación, ejecuta ollama --version para verificar
  2. 2

    Step 2: Descargar modelos

    Elige el modelo según tu hardware:

    • 8 GB RAM: ollama pull llama3.2:1b
    • 16 GB RAM: ollama pull llama3.2
    • 16 GB RAM + GPU: ollama pull llama3.1:8b
    • Optimizado para chino: ollama pull qwen2.5:7b
  3. 3

    Step 3: Desplegar Open WebUI

    Despliegue con un solo contenedor Docker:

    docker run -d -p 3000:8080 \
    --add-host=host.docker.internal:host-gateway \
    -v open-webui:/app/backend/data \
    --name open-webui \
    ghcr.io/open-webui/open-webui:main

    O usa Docker Compose para gestionar dos contenedores
  4. 4

    Step 4: Configuración inicial

    Visita http://localhost:3000:

    • Crea una cuenta de administrador
    • Detecta automáticamente el servicio Ollama
    • Elige un modelo y empieza a chatear
  5. 5

    Step 5: Configuración de funciones avanzadas

    Funciones opcionales:

    • Base de conocimiento RAG: sube documentos PDF/Markdown
    • Integración API: endpoint compatible con OpenAI
    • Aceleración GPU: detección automática, sin configuración

FAQ

¿Qué hardware necesito para desplegar IA en local?
Mínimo: 8 GB RAM, procesador Intel i5 y 10 GB de almacenamiento. Recomendado: más de 16 GB RAM; con NVIDIA RTX 3060 o Mac con Apple Silicon el rendimiento mejora. Los modelos grandes (como 70B) requieren 64 GB RAM.
¿Qué modelos admite Ollama?
Admite los principales modelos open source:

• Serie Meta Llama (1B-70B)
• Modelos de razonamiento DeepSeek R1
• Serie Qwen de Alibaba (optimizada para chino)
• Google Gemma, Mistral, etc.

Usa ollama list para ver los modelos descargados y ollama pull para descargar nuevos
¿Qué hago si Open WebUI no se conecta a Ollama?
Primero confirma que el servicio Ollama está en ejecución (curl http://localhost:11434). Con Docker, revisa la configuración de red; puede que debas definir manualmente la variable de entorno OLLAMA_BASE_URL como http://host.docker.internal:11434
¿Puedo usar la IA local sin conexión a internet?
Sí. Tras descargar el modelo, funciona completamente offline, sin necesidad de red. El historial de conversaciones y los documentos de la base de conocimiento se guardan en local, ideal para viajes o entornos con conexión inestable
¿Cómo integrarlo con herramientas existentes (como plugins de VS Code)?
Ollama ofrece una API compatible con OpenAI (puerto 11434):

• Endpoint: http://localhost:11434/api/chat
• Mismo formato que la API de OpenAI
• Llamada directa desde Python/Node.js

Solo tienes que cambiar la dirección de la API de OpenAI por la local

12 min de lectura · Publicado el: 4 abr 2026 · Actualizado el: 21 ago 2026

Comentarios

Inicia sesión con GitHub para dejar un comentario

Easton BlogEaston Blog