Ollama: corre LLMs localmente sin depender de la nube

By Carlos Montiel | Especialista en IA Empresarial
Publicado: 2026-07-28 | Por: Carlos Montiel | Lectura: ~5 minutos

Ollama convirtió correr un modelo de lenguaje local en un comando de una línea. Pero "funciona en mi laptop" y "funciona en producción" son problemas distintos, y aquí está la diferencia.

Qué es Ollama en realidad

Ollama es una capa de empaquetado y servido sobre llama.cpp que resuelve el problema real de correr LLMs localmente: descargar pesos, cuantizarlos correctamente, cargarlos en GPU o CPU, y exponerlos vía una API REST compatible (parcialmente) con la de OpenAI. No es un motor de inferencia nuevo — es llama.cpp con una experiencia de desarrollador decente encima, más un registro de modelos tipo Docker Hub.

La pieza clave es el "Modelfile": un manifiesto declarativo (similar a un Dockerfile) que define el modelo base, el prompt de sistema, parámetros de muestreo (temperature, top_p, num_ctx) y plantillas de chat. Esto permite versionar configuraciones de modelo como código, algo que con llama.cpp puro requería scripts caseros.

ollama pull llama3.1:8b ollama run llama3.1:8b "Explica qué es un RAG en dos frases"

Cuantización: el trade-off que nadie te explica bien

Ollama distribuye modelos en formato GGUF, típicamente cuantizados a 4 bits (Q4_K_M es el default de facto). Esto reduce un modelo de 8B parámetros de ~16GB en FP16 a ~4.7GB, permitiendo correrlo en una GPU de 8GB o incluso en CPU con RAM suficiente. El costo es una degradación medible en tareas de razonamiento complejo y generación de código — en benchmarks internos que hemos corrido para clientes, la caída entre Q4 y FP16 ronda 2-5% en MMLU pero puede ser más notoria en tareas de instrucción larga o function calling.

Para producción, la recomendación técnica es clara: Q8_0 o FP16 si tienes la VRAM, Q4_K_M si el hardware es la restricción dura. Nunca uses cuantizaciones agresivas (Q2, Q3) para nada que no sea prototipado desechable.

Casos de uso donde Ollama gana frente a la nube

Hay tres escenarios donde correr localmente tiene sentido de negocio real, no solo ideológico: datos que no pueden salir de la red por regulación (información médica, financiera, contratos legales), volumen de inferencia alto y constante donde el costo por token de una API supera el costo amortizado de hardware propio, y latencia — un modelo local en la misma red no tiene el round-trip de una API externa.

Un caso concreto: para un cliente en el sector legal en Guatemala con documentos que no podían salir del país por cláusulas de confidencialidad contractual, montamos un pipeline de extracción y clasificación de contratos con Ollama corriendo Qwen2.5 14B sobre un servidor con una RTX 4090, sirviendo ~15,000 documentos/mes sin tocar ninguna API externa.

Límites reales que hay que conocer

Ollama no está pensado para servir tráfico concurrente alto. Su motor de batching es limitado comparado con vLLM o TGI (Text Generation Inference) — con múltiples requests simultáneos, la latencia por request crece de forma casi lineal porque no hay continuous batching real hasta versiones recientes, y sigue siendo menos eficiente que soluciones diseñadas para servir a escala. Si tu carga es más de unos pocos usuarios concurrentes por GPU, evalúa vLLM.

Tampoco resuelve el problema de modelos de contexto muy largo de forma eficiente: aunque puedes subir `num_ctx` a 32k o 128k según el modelo, el consumo de VRAM crece con el KV cache y en hardware modesto esto se vuelve el cuello de botella real antes que el modelo mismo.

Integración con stacks existentes

La API de Ollama expone endpoints `/api/generate`, `/api/chat` y desde hace tiempo un modo de compatibilidad OpenAI en `/v1/chat/completions`, lo que permite apuntar librerías como LangChain, LlamaIndex o el SDK de OpenAI directamente a un endpoint local cambiando solo el `base_url`. Esto simplifica mucho migrar un prototipo hecho contra GPT-4 a un modelo local para validar costos antes de decidir arquitectura final.

curl http://localhost:11434/v1/chat/completions \ -H "Content-Type: application/json" \ -d '{"model": "llama3.1:8b", "messages": [{"role":"user","content":"hola"}]}'

Cuándo NO usar Ollama

Si necesitas servir cientos de requests concurrentes por segundo, si necesitas features de producción como paralelismo de tensores multi-GPU serio, o si tu equipo ya tiene experiencia operando Kubernetes y necesita autoscaling fino, herramientas como vLLM, TGI o un servicio administrado tienen mejor ROI operativo. Ollama es la herramienta correcta para desarrollo, prototipado, escritorios de analistas, y despliegues de carga baja-media donde la simplicidad operativa pesa más que el throughput máximo.

Carlos Montiel
Arquitecto de Soluciones IA Empresarial
Especialista en LLMs, Agentes y Orquestación
guatemalia.com/#contacto · info@guatemalia.com

¿Necesitas implementar IA en tu empresa?

Carlos Montiel es arquitecto de soluciones IA empresarial. Implementa LLMs, Agentes, RAG y orquestadores en empresas de Guatemala y Latinoamérica. Contáctalo para una consultoría.

Contactar a Carlos Montiel

info@guatemalia.com