LLM locales con Ollama: instalación y uso

Ollama es una herramienta para ejecutar modelos de lenguaje grandes (LLM) de forma local en su ordenador o servidor. Descarga modelos, los gestiona y ofrece CLI y API HTTP sin suscripción en la nube ni envío de datos a terceros. A continuación: por qué interesan los modelos locales, cómo instalar Ollama en Windows, macOS y Linux, qué modelos elegir y cómo conectarlos a sus aplicaciones. Esta guía es útil tanto para personal técnico como para dueños de negocio que comparan una solución local frente a una API en la nube en costes, privacidad de datos y requisitos de equipo.
- Privacidad - prompts y documentos no salen de su máquina
- Sin conexión - funciona sin internet tras descargar el modelo
- Gratis - sin pago por tokens, solo hardware y electricidad
- API - formato compatible con OpenAI para Cursor, n8n, LangChain y otras herramientas

Qué es Ollama
Ollama es un runtime open-source para LLM locales. Simplifica lo que antes exigía configurar llama.cpp, CUDA, entornos Python y conversión de pesos: un comando ollama pull llama3 descarga un modelo, ollama run llama3 inicia un chat interactivo.
Por debajo, Ollama usa llama.cpp y su formato Modelfile - como un Dockerfile para modelos. Puede:
- ejecutar modelos listos de la biblioteca Ollama;
- crear variantes con system prompt, parámetros y adaptadores;
- llamar al modelo vía REST API en
http://localhost:11434.
Ollama no sustituye a flagship en la nube como GPT-5.6 o Claude Fable 5 en tareas agénticas complejas, pero cubre muchos escenarios: borradores, resúmenes, clasificación, RAG sobre documentos internos, prototipado de prompts y desarrollo sin gastar créditos de API.
Por qué ejecutar LLM localmente
| Criterio | API en la nube | Ollama (local) |
|---|---|---|
| Privacidad | Datos en servidores del proveedor | Datos en su máquina |
| Coste | Pago por token | Gratis (salvo hardware) |
| Latencia | Depende de la red | Mínima en localhost |
| Calidad top | Mayor | Menor en modelos open-weight |
| Offline | No | Sí, tras descargar pesos |
Los modelos locales son especialmente útiles para:
- Datos corporativos - contratos, correo, código que no puede ir a SaaS.
- Desarrollo - probar pipelines RAG y agentes sin factura de API.
- Edge y air-gapped - servidores sin internet, laboratorios, despliegues de campo.
- Experimentos - cambiar modelo y parámetros sin cambiar de proveedor.
Requisitos de hardware
La RAM y la GPU determinan qué modelo puede ejecutar cómodamente.
| Modelo (ejemplo) | Parámetros | RAM (CPU) | VRAM (GPU) |
|---|---|---|---|
| Llama 3.2 | 3B | 4-8 GB | 4 GB |
| Qwen 3 | 8B | 8-16 GB | 6-8 GB |
| Llama 3.1 | 8B | 8-16 GB | 6-8 GB |
| Mistral | 7B | 8-16 GB | 6-8 GB |
| Qwen 3 | 32B | 32+ GB | 20-24 GB |
| Llama 3.1 | 70B | 64+ GB | 40-48 GB |
Solo CPU funciona, pero lento: un modelo 7B con 16 GB RAM sin GPU da pocos tokens por segundo. Una GPU (NVIDIA con CUDA, Apple Silicon con Metal) acelera mucho la generación. En Mac M1/M2/M3/M4, Ollama usa Metal de serie; en Windows y Linux hace falta GPU NVIDIA con driver actualizado.
Si hay poca RAM - elija modelos cuantizados (Q4, Q5): menos memoria con pequeña pérdida de calidad.
Instalación
Windows
- Descargue el instalador en ollama.com/download.
- Ejecute el
.exey complete el asistente. - Ollama arranca como servicio en segundo plano; icono en la bandeja del sistema.
- Abra PowerShell o cmd y compruebe:
ollama --version
macOS
brew install ollama
O descargue el .dmg del sitio. En Apple Silicon, Metal se activa automáticamente.
Linux
Script oficial:
curl -fsSL https://ollama.com/install.sh | sh
Para servicio systemd tras instalar:
sudo systemctl enable ollama
sudo systemctl start ollama
Docker
Si necesita aislamiento o despliegue en servidor:
docker run -d -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama
Para GPU en Linux, añada --gpus all.
Primeros pasos: CLI
Descargar y ejecutar un modelo
ollama pull llama3.2
ollama run llama3.2
pull descarga pesos a ~/.ollama/models (Windows: %USERPROFILE%\.ollama\models). run abre chat interactivo. Salir con /bye o Ctrl+D.
Comandos útiles
ollama list # modelos instalados
ollama ps # en ejecución ahora
ollama rm llama3.2 # eliminar modelo
ollama show llama3.2 # parámetros y Modelfile
ollama pull qwen3:8b # tag concreto
Los tags definen tamaño y cuantización: llama3.1:8b, mistral:7b-instruct-q4_K_M, qwen3:32b. Vea la página del modelo en la biblioteca Ollama.
Consulta única sin chat
ollama run llama3.2 "Explica qué es RAG en tres frases"
API HTTP
Ollama escucha en el puerto 11434. El formato se parece a OpenAI Chat Completions - muchos clientes conectan sin cambios.
Chat (streaming)
curl http://localhost:11434/api/chat -d '{
"model": "llama3.2",
"messages": [{"role": "user", "content": "¡Hola!"}],
"stream": true
}'
Generate (prompt simple)
curl http://localhost:11434/api/generate -d '{
"model": "llama3.2",
"prompt": "Escribe un haiku sobre modelos locales",
"stream": false
}'
Endpoint compatible con OpenAI
Con versiones que soportan /v1/chat/completions:
curl http://localhost:11434/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "llama3.2",
"messages": [{"role": "user", "content": "Hello"}]
}'
En Cursor, Continue, Open WebUI y n8n configure Base URL http://localhost:11434/v1 y el nombre del modelo de ollama list.
Qué modelos elegir
Orientación para 2026:
| Tarea | Modelos | Comentario |
|---|---|---|
| Chat rápido, hardware débil | Llama 3.2 3B, Qwen 3 4B, Phi-4 mini | RAM mínima |
| Equilibrio general | Llama 3.1 8B, Mistral 7B, Qwen 3 8B | Punto dulce con 16 GB |
| Código e instrucciones | Qwen 3 Coder, DeepSeek Coder V2, Codestral | Mejor en SQL, Python, diffs |
| Multilingüe | Qwen 3, Llama 3.1 | Qwen fuerte en multilingüe |
| Contexto largo | Qwen 3, Llama 3.1 8B (128K+) | RAG y documentos grandes |
| Máxima calidad local | Qwen 3 32B, Llama 3.1 70B, Mistral Large | GPU potente o mucha RAM |
Empiece con Qwen 3 8B o Llama 3.1 8B - calidad aceptable en un portátil típico de 16 GB. Para RAG en producción, compare 2-3 modelos con sus consultas reales.
Modelfile: modelo personalizado
Un Modelfile define system prompt, temperatura, contexto y modelo base:
FROM llama3.2
PARAMETER temperature 0.3
PARAMETER num_ctx 8192
SYSTEM """
Eres un asistente de soporte técnico.
Responde brevemente, paso a paso, en español.
Si no sabes la respuesta - dilo.
"""
Crear y ejecutar:
ollama create support-bot -f Modelfile
ollama run support-bot
Así fija el comportamiento del equipo sin cambiar el código cliente.
Integraciones
Cursor e IDEs
En ajustes del modelo, endpoint compatible OpenAI: http://localhost:11434/v1, API key vacía o ollama. Modelo - nombre de ollama list. Modelos locales para borradores y refactor; coding agéntico complejo sigue favoreciendo Codex o Claude Code en la nube.
Open WebUI
Open WebUI - interfaz web estilo ChatGPT sobre Ollama. Buena para equipos: historial, PDF, RAG integrado.
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
n8n, LangChain, LlamaIndex
- n8n - nodo Ollama Chat Model o HTTP Request a
/api/chat. - LangChain -
ChatOllama(base_url="http://localhost:11434", model="qwen3:8b"). - LlamaIndex -
Ollamacomo LLM y embedding (si el modelo lo soporta).
RAG local
Stack típico: Ollama (LLM + embeddings vía nomic-embed-text o mxbai-embed-large) + ChromaDB o Qdrant + sus documentos. Todo offline tras indexar.
Consejos de operación
- Un modelo en memoria -
ollama psmuestra cargados;ollama stop <name>libera RAM. - num_ctx - aumente contexto solo si hace falta; más contexto = más memoria e inference más lenta.
- Actualice Ollama - nuevas versiones traen velocidad y soporte de modelos.
- Monitorización - temperatura GPU y swap en servidores; poca RAM causa thrashing.
- Privacidad no es seguridad - el modelo local no envía datos fuera, pero prompts maliciosos o agentes vulnerables siguen siendo riesgo.
Limitaciones
- Modelos open-weight 8B quedan por debajo de flagship en la nube en razonamiento difícil y cadenas agénticas largas.
- Modelos grandes (32B+) exigen hardware caro; la nube puede ser más barata con carga esporádica.
- Multimodal (imágenes, audio) depende del modelo - compruebe el tag.
- Actualizar pesos es su responsabilidad; en la nube el proveedor parchea.
Cuándo es mejor quedarse en la nube
- Su equipo no tiene quién se encargue de instalar, actualizar y monitorizar el servidor.
- El uso es pequeño e irregular - la factura de una API en la nube puede salir más barata que hardware ocioso.
- Necesita la mejor calidad posible en razonamiento complejo o tareas multimodales, donde los modelos locales aún quedan por detrás de las principales ofertas en la nube.
- Necesita un SLA formal o certificación del proveedor (por ejemplo, SOC 2, ISO) - los proveedores en la nube lo ofrecen; una solución self-hosted no, por defecto.
Para muchas tareas, Ollama + modelo 8B + RAG equilibra calidad, coste y privacidad.
Conclusión
Ollama reduce la barrera a los LLM locales a unos pocos comandos: instalar, pull, run. La API es compatible con el ecosistema OpenAI - el mismo modelo en CLI, web UI, IDE y automatizaciones. Empiece con Qwen 3 8B o Llama 3.1 8B, ajuste un Modelfile y añada RAG si necesita hechos de sus documentos - sin enviar datos a la nube.
Si necesita ayuda con el desarrollo, la implementación de IA o el soporte del sitio para su proyecto - escríbame.
Preguntas frecuentes
¿Necesito GPU para Ollama?
No, Ollama funciona solo con CPU, pero la inferencia será mucho más lenta. Para chat cómodo con modelos 7B-8B conviene GPU (NVIDIA CUDA) o Apple Silicon con Metal. Con 16 GB RAM sin GPU, elija modelos ligeros 3B-4B o cuantización Q4 agresiva.
¿Dónde se guardan los modelos y cuánto ocupan?
Por defecto en ~/.ollama/models (Linux/macOS) o %USERPROFILE%\.ollama\models (Windows). 7B-8B en Q4 unos 4-5 GB, 70B decenas de GB. Eliminar: ollama rm <nombre>. Ruta con OLLAMA_MODELS.
¿Ollama en Docker en Windows con GPU?
Sí, vía WSL2 y NVIDIA Container Toolkit: Docker Desktop con backend WSL2, driver NVIDIA para WSL, imagen ollama/ollama con --gpus all. Docker Desktop nativo sin WSL2 suele no dar GPU a Ollama. Alternativa más simple - instalación nativa en Windows desde el sitio oficial.
¿Cómo conectar Ollama a Cursor u otro cliente OpenAI API?
Base URL http://localhost:11434/v1, API key cualquier cadena (p. ej. ollama), model nombre exacto de ollama list (p. ej. qwen3:8b). Ollama en ejecución y modelo con pull. Cliente en Docker: host.docker.internal:11434 en lugar de localhost.
¿Es seguro enviar datos confidenciales a un modelo local?
Los datos no van a servidores de Ollama Inc. en inferencia local - procesamiento en su máquina. Pero logs, historial de Open WebUI y copias de disco pueden guardar prompts. Para compliance estricto: políticas de retención, cifrado de disco, sin telemetría de UIs de terceros. Lo local no elimina fugas por snapshots de VM y cuentas compartidas en servidor.
Términos del artículo
Ollama — tool to run local open-weight LLMs on your machine — herramienta para ejecutar LLM open-weight en local
LLM — Large Language Model — modelo de lenguaje grande
LangChain — framework for building LLM applications — framework para aplicaciones con LLM
open-source — software with publicly available source code — software con código fuente público
n8n — open-source workflow automation platform — plataforma open-source de automatización de workflows
system prompt — hidden instructions that steer the model for a task — instrucciones ocultas que guían el comportamiento del modelo
REST API — HTTP API that exposes resources via URLs and verbs — API HTTP que expone recursos vía URL y verbos
RAG — Retrieval-Augmented Generation — generación aumentada por recuperación
open-weight — model weights you can download and run yourself — pesos del modelo descargables y ejecutables en local
air-gapped — network fully isolated from the public internet — red totalmente aislada de Internet público
SaaS — Software as a Service — software como servicio
GPU — Graphics Processing Unit — unidad de procesamiento gráfico
endpoint — specific API URL that accepts requests — URL concreta de API que acepta peticiones
API key — secret token that authenticates API callers — token secreto que autentica llamadas a la API
LlamaIndex — framework for connecting LLMs to private data — framework para conectar LLM con datos privados
embedding — numeric vector that captures text meaning — vector numérico que captura el significado del texto
Qdrant — vector database for similarity search — base de datos vectorial para búsqueda por similitud
inference — running a trained model to get predictions — ejecución del modelo entrenado para obtener predicciones
self-hosted — software you run on your own servers — software que ejecutas en tus propios servidores
SLA — Service Level Agreement — acuerdo de nivel de servicio
backend — server-side logic, APIs and data layer — lógica de servidor, APIs y capa de datos