IA local con Ollama: privacidad y control
Cada vez que le pides algo a un asistente de IA en la nube, ese texto sale de tu ordenador y aterriza en un servidor que no controlas. Para muchas cosas da igual, pero para otras no, y ahí es donde entra Ollama, que lo que hace es traer el modelo a tu máquina y ejecutarlo en local.
Por qué ejecutar en local
Hay tres motivos que, para mí, pesan bastante:
- Privacidad: lo que preguntas no sale de tu equipo. Si trabajas con datos de clientes, esto no es un detalle menor.
- Control: la versión del modelo no cambia bajo tus pies sin avisar.
- Independencia: si se cae internet o el servicio de turno sube el precio, sigues trabajando.
El precio a pagar es que necesitas hardware. Un modelo grande en un portátil modesto va a ir lento, y eso hay que asumirlo.
Instalarlo y usarlo
La instalación es de lo más simple. En Linux o macOS, un comando:
curl -fsSL https://ollama.com/install.sh | sh
Y si prefieres contenedores:
docker pull ollama/ollama
Los comandos del día a día son estos:
ollama serve # Arrancar el servidor
ollama run <modelo> # Ejecutar un modelo
ollama list # Ver los modelos instalados
ollama pull <modelo> # Descargar un modelo
ollama rm <modelo> # Borrar un modelo
La API
Lo interesante, para integrarlo en tus cosas, es que Ollama expone una API REST en el puerto 11434. Se puede llamar desde cualquier lenguaje, sin dependencias raras:
curl http://localhost:11434/api/chat -d '{
"model": "llama3",
"messages": [{"role": "user", "content": "Hola"}]
}'
Esto es lo que permite usarlo como backend para scripts propios, para un asistente en el editor o para lo que se te ocurra.
Si tienes GPU
Con una tarjeta gráfica la cosa cambia mucho, porque el modelo va en la GPU y la velocidad se nota. En Docker o Podman se le pasa el dispositivo:
podman run --rm --device nvidia.com/gpu=all --security-opt=label=disable ubuntu nvidia-smi -L
Cuándo tiene sentido
No siempre. Si necesitas el modelo más grande del momento y no tienes hardware para moverlo, la nube sigue siendo la opción práctica. Pero si lo que quieres es un asistente para tareas del día a día, con datos que no quieres que salgan de casa, montarlo en local es perfectamente razonable y no te ata a nadie.
Esto además encaja bien con la idea de montar un sistema que consulte tus propios documentos, algo que cuento en la entrada sobre RAG con n8n y Qdrant.