Ollama con una tarjeta AMD en Windows: qué modelos caben en 16 GB y cómo sacarle partido
Casi todas las guías de inteligencia artificial en local dan por hecho que tienes una tarjeta NVIDIA. Nosotros usamos una AMD Radeon RX 6800 de 16 GB en un PC con Windows, y con ella funcionan a diario la recepcionista que contesta nuestro teléfono, el asistente de la web y el de WhatsApp. Este artículo recoge lo que hemos medido y los detalles que más tiempo nos hicieron perder.
Instalación: más sencilla de lo que parece
Ollama se instala en Windows con un instalador normal o con una sola orden:
winget install Ollama.Ollama
ollama pull qwen2.5:14b
ollama run qwen2.5:14b
No hace falta instalar nada de NVIDIA ni herramientas especiales: con los controladores normales de AMD, Ollama detecta la tarjeta y carga el modelo en ella. En nuestro equipo usa el motor Vulkan, que es el que aparece en su registro al cargar un modelo. Para comprobar que el modelo está de verdad en la tarjeta y no en la memoria del PC:
ollama ps
En la columna PROCESSOR tiene que poner 100% GPU. Si pone una mezcla de CPU y GPU, el modelo no cabe entero y va mucho más lento.
Qué modelos caben y a qué velocidad van
Medido en nuestro equipo (Ryzen 9 3950X, 32 GB de RAM, RX 6800 de 16 GB), con un asistente que tiene el catálogo de servicios en las instrucciones:
| Modelo | Tamaño | Velocidad | Lo que vimos |
|---|---|---|---|
| qwen2.5:7b | 4,7 GB | ~45 palabras/s* | Rápido, pero se inventa cosas en casos raros |
| gemma3:12b | 8,1 GB | ~40 palabras/s* | Sigue muy bien las reglas, pero tarda en leer las instrucciones (~1,5 s antes de empezar a responder) |
| qwen2.5:14b | 9,5 GB | ~32 palabras/s* | El que usamos: empieza a responder casi al instante y es fiable |
* En realidad son tokens por segundo, trozos de palabra; para hacerse una idea, valen como palabras.
Con 16 GB, el límite práctico está en los modelos de unos 14.000 millones de parámetros comprimidos (los que ocupan 9-10 GB): dejan sitio para el contexto y para otras cosas en la tarjeta, como el reconocimiento de voz. Con una tarjeta de 12 GB, un modelo así cabe muy justo; uno de 7.000-8.000 millones va holgado.
Los cinco detalles que más tiempo nos hicieron perder
1. En Windows, usa 127.0.0.1 y no localhost
Si tu programa llama a http://localhost:11434, Windows intenta primero la conexión por IPv6 y, hasta
que se rinde, pasan unos 2 segundos en cada petición. Con http://127.0.0.1:11434 la
espera desaparece. Para un chat quizá no lo notes; para un asistente de voz es la diferencia entre una conversación
natural y una incómoda.
2. La primera respuesta tarda 12-18 segundos: que no se descargue
Cargar un modelo de 9 GB en la tarjeta lleva entre 12 y 18 segundos, y por defecto Ollama lo descarga a los pocos minutos sin uso. En las peticiones se puede pedir que lo mantenga cargado:
{"model": "qwen2.5:14b", "keep_alive": "12h", ...}
O para todo el equipo, con la variable de entorno OLLAMA_KEEP_ALIVE=12h.
3. Lo que importa no es solo el modelo, sino cuánto tarda en leer las instrucciones
Un asistente lleva unas instrucciones largas (quién es, qué servicios hay, qué precios, qué no debe hacer). Con gemma3:12b, el modelo volvía a leerlas enteras en cada turno de la conversación: unos 3 segundos de silencio antes de cada respuesta en el teléfono. qwen2.5:14b reutiliza lo que ya leyó y empieza a responder en menos de un segundo. Para voz, esa diferencia pesa más que cualquier diferencia de "inteligencia" entre modelos.
4. Dos modelos en 16 GB se pisan
Al principio usábamos un modelo para el teléfono y otro para el chat de la web. Por separado cabían, pero juntos no: cada vez que alguien escribía en la web, Ollama sacaba de la tarjeta el modelo del teléfono para meter el otro, y la siguiente llamada esperaba unos 18 segundos a que se volviera a cargar. La solución fue usar el mismo modelo para todo.
Y ojo con un detalle: Ollama trata como distinto el mismo modelo si se pide con otro tamaño de contexto
(num_ctx). Si un programa pide 8.192 y otro el valor por defecto, también lo recarga. Pon el mismo valor
en todos:
{"model": "qwen2.5:14b", "options": {"num_ctx": 8192}, ...}
Con ollama ps puedes comprobar que solo hay un modelo cargado.
5. Usarlo desde otro equipo sin abrirlo a toda la red
Nuestro servidor de la web no tiene tarjeta gráfica, así que le pide las respuestas al PC por la red local. Para eso
Ollama tiene que escuchar en todas las interfaces y no solo en el propio PC: se añade la variable de entorno
OLLAMA_HOST=0.0.0.0 y se reinicia Ollama. Pero Ollama no tiene contraseña, así que conviene que el
cortafuegos de Windows solo deje entrar al equipo que lo necesita (PowerShell como administrador):
New-NetFirewallRule -DisplayName "Ollama - solo el servidor" -Direction Inbound -Protocol TCP `
-LocalPort 11434 -RemoteAddress 192.168.1.50 -Action Allow
Cambia 192.168.1.50 por la IP del equipo que vaya a usarlo. Y nunca abras el puerto 11434 en el router
hacia internet.
¿Y si el PC está apagado?
Es el punto débil de tener la IA en un ordenador de casa. Nuestra solución: los servicios comprueban en un segundo si Ollama responde y, si no, pasan solos a una IA en la nube con un nivel gratuito. Para el teléfono hemos ido más allá: si el PC está apagado, atiende una versión de la recepcionista que funciona entera en la nube, sin tarjeta gráfica.
Lo que hacemos con ello
Con esta tarjeta funciona la recepcionista que atiende nuestro teléfono: escucha, piensa y habla en local, y responde en torno a un segundo. Puedes llamarla al 910 709 738; lo contamos en así funciona nuestra recepcionista con IA y en qué hace falta para montar una centralita con IA en casa.
Si quieres montar la tuya, nuestra guía lo explica paso a paso, y puedes leer gratis los capítulos 1 y 3. Si prefieres que te lo dejemos funcionando, tienes los precios en la página de la recepcionista con IA.