🦙 Tutorial Completo de Ollama

¿Qué es Ollama?

Ollama es una herramienta que te permite ejecutar modelos de lenguaje grandes (LLMs) localmente en tu máquina de forma sencilla y eficiente. Piensa en ello como tu propio ChatGPT personal que funciona sin internet y mantiene toda tu información privada.

📋 Tabla de Contenidos

🤔 ¿Qué es Ollama?

Ollama es una aplicación de código abierto que simplifica la ejecución de modelos de lenguaje grandes en tu computadora local. Desarrollada para ser fácil de usar, Ollama abstrae la complejidad técnica que normalmente conlleva ejecutar estos modelos.

¿Por qué usar Ollama?

✨ Características Principales

🚀 Fácil Instalación

Instalación con un solo comando en múltiples sistemas operativos.

📦 Gestión de Modelos

Descarga, actualiza y gestiona modelos con comandos simples.

🔧 API REST

API completa para integrar con tus aplicaciones.

💻 Multiplataforma

Funciona en Linux, macOS y Windows.

🎯 Optimización

Optimizado para diferentes tipos de hardware.

🔄 Streaming

Respuestas en tiempo real con streaming de tokens.

🐧 Instalación en Linux

1

Instalación Automática

La forma más sencilla de instalar Ollama en Linux es usando el script oficial:

curl -fsSL https://ollama.com/install.sh | sh
Nota: Este script detectará automáticamente tu distribución de Linux e instalará Ollama adecuadamente.
2

Instalación Manual (Ubuntu/Debian)

Si prefieres una instalación manual:

# Descargar el paquete
sudo curl -L https://ollama.com/download/ollama-linux-amd64.tgz -o /tmp/ollama.tgz

# Extraer a /usr/local/bin
sudo tar -C /usr/local/bin -xzf /tmp/ollama.tgz

# Hacer ejecutable
sudo chmod +x /usr/local/bin/ollama
3

Crear Servicio del Sistema

Para que Ollama se ejecute como servicio:

# Crear usuario para ollama
sudo useradd -r -s /bin/false -m -d /usr/share/ollama ollama

# Crear archivo de servicio
sudo tee /etc/systemd/system/ollama.service <<EOF
[Unit]
Description=Ollama Service
After=network-online.target

[Service]
ExecStart=/usr/local/bin/ollama serve
User=ollama
Group=ollama
Restart=always
RestartSec=3
Environment="HOME=/usr/share/ollama"
Environment="PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"

[Install]
WantedBy=default.target
EOF

# Recargar y habilitar el servicio
sudo systemctl daemon-reload
sudo systemctl enable ollama
sudo systemctl start ollama
4

Verificar Instalación

Comprueba que Ollama está funcionando correctamente:

# Verificar estado del servicio
sudo systemctl status ollama

# Verificar que responde
curl http://localhost:11434/api/tags

🚀 Primeros Pasos

1

Descargar tu Primer Modelo

Comencemos descargando un modelo popular como Llama 3.2:

ollama pull llama3.2
Tip: Este comando descargará automáticamente la versión más pequeña (3B) si no especificas el tamaño.
2

Ejecutar el Modelo

Una vez descargado, puedes chatear con el modelo:

ollama run llama3.2

Esto abrirá una sesión de chat interactiva. ¡Prueba a hacerle una pregunta!

3

Listar Modelos Disponibles

Para ver qué modelos tienes instalados:

ollama list

Modelos Populares para Comenzar

Modelo Tamaño RAM Requerida Descripción
llama3.2:3b 2GB 4GB Modelo pequeño y rápido para tareas generales
llama3.2:7b 4GB 8GB Buen equilibrio entre rendimiento y recursos
codellama:7b 4GB 8GB Especializado en programación
deepseek-r1:14b 8GB 16GB Excelente para razonamiento complejo

🔧 Modificación de Modelos

Una de las características más potentes de Ollama es la capacidad de modificar y personalizar modelos existentes.

1

Modificar Ventana de Contexto

Por defecto, Ollama usa una ventana de contexto de 2048 tokens, que suele ser insuficiente para tareas complejas de programación. Puedes aumentarla:

# Ejecutar el modelo
ollama run deepseek-r1:14b

# Dentro del chat, cambiar el parámetro
/set parameter num_ctx 8192

# Guardar el modelo modificado
/save deepseek-r1:14b-8k
Importante: Aumentar la ventana de contexto requiere más RAM. Una ventana de 8192 tokens puede necesitar 2-3GB adicionales de memoria.
2

Crear Modelos Personalizados con Modelfile

Puedes crear variaciones personalizadas usando un archivo Modelfile:

# Crear un archivo llamado Modelfile
FROM llama3.2:7b

# Establecer parámetros
PARAMETER temperature 0.7
PARAMETER num_ctx 4096
PARAMETER top_k 40
PARAMETER top_p 0.9

# Establecer el prompt del sistema
SYSTEM """
Eres un asistente de programación experto.
Siempre proporcionas código limpio, bien comentado y siguiendo las mejores prácticas.
"""

Luego crear el modelo personalizado:

ollama create mi-programador -f ./Modelfile
3

Parámetros Comunes para Modificar

Parámetro Descripción Rango Típico Efecto
temperature Creatividad de las respuestas 0.1 - 1.0 Más alto = más creativo
num_ctx Ventana de contexto (tokens) 1024 - 32768 Más alto = más memoria de conversación
top_k Número de tokens candidatos 10 - 100 Más alto = más variedad
top_p Probabilidad acumulativa 0.1 - 1.0 Más alto = más diversidad
repeat_penalty Penalización por repetición 1.0 - 1.3 Más alto = menos repetitivo
4

Comandos de Chat Útiles

Cuando estés chateando con un modelo, puedes usar estos comandos:

/set parameter num_ctx 8192 # Cambiar ventana de contexto
/set parameter temperature 0.3 # Cambiar creatividad
/save mi-modelo-modificado # Guardar configuración actual
/show # Mostrar información del modelo
/load # Cargar imagen (modelos multimodales)
/bye # Salir del chat

🔗 Integración con Aplicaciones

Ollama proporciona una API REST que permite integrarlo fácilmente con otras aplicaciones.

1

Configurar el Servidor

Primero, asegúrate de que el servidor esté ejecutándose:

ollama serve

Por defecto, el servidor se ejecuta en http://localhost:11434

2

Ejemplo de Integración con 16x Prompt

Basado en la guía proporcionada, aquí está el proceso para integrar con 16x Prompt:

# 1. Descargar y configurar un modelo con mayor contexto
ollama pull deepseek-r1:14b
ollama run deepseek-r1:14b
/set parameter num_ctx 8192
/save deepseek-r1:14b-8k

# 2. Servir el modelo
ollama serve

En 16x Prompt, configura:

  • API Endpoint: http://127.0.0.1:11434/v1
  • Model ID: deepseek-r1:14b-8k
  • API Type: ollama
3

Ejemplo de API con curl

# Chat completion
curl http://localhost:11434/api/chat -d '{ "model": "llama3.2", "messages": [ {"role": "user", "content": "¿Por qué el cielo es azul?"} ] }'

# Generación simple
curl http://localhost:11434/api/generate -d '{ "model": "llama3.2", "prompt": "Explica la fotosíntesis en términos simples" }'

⌨️ Comandos Útiles

Gestión de Modelos

# Listar modelos instalados
ollama list

# Descargar un modelo
ollama pull model_name

# Eliminar un modelo
ollama rm model_name

# Mostrar información detallada
ollama show model_name

# Copiar un modelo
ollama cp source_model new_model

Ejecución y Chat

# Ejecutar modelo interactivamente
ollama run model_name

# Ejecutar con prompt directo
ollama run model_name "Tu pregunta aquí"

# Servir la API
ollama serve

# Servir en puerto específico
OLLAMA_HOST=0.0.0.0:8080 ollama serve

Variables de Entorno Útiles

Variable Descripción Ejemplo
OLLAMA_HOST Dirección y puerto del servidor 0.0.0.0:11434
OLLAMA_MODELS Directorio de modelos /custom/models/path
OLLAMA_NUM_PARALLEL Requests paralelos máximos 4
OLLAMA_MAX_LOADED_MODELS Modelos cargados simultáneamente 3

🔍 Resolución de Problemas

Problemas Comunes y Soluciones

Error: "Out of Memory"

Causa: El modelo es demasiado grande para tu RAM disponible.

Solución:

  • Usa un modelo más pequeño (ej: 3B en lugar de 7B)
  • Cierra otras aplicaciones que consuman memoria
  • Reduce la ventana de contexto: /set parameter num_ctx 1024

Error: "Connection Refused"

Causa: El servidor Ollama no está ejecutándose.

Solución:

# Iniciar el servidor
ollama serve

# O si tienes el servicio del sistema
sudo systemctl start ollama

Respuestas Muy Lentas

Causas y soluciones:

  • CPU lenta: Considera usar modelos más pequeños
  • Falta de GPU: Ollama puede usar GPU para acelerar
  • Ventana de contexto grande: Reduce num_ctx
  • Múltiples modelos: Descarga solo los que uses

Verificación del Sistema

# Ver logs del sistema
sudo journalctl -u ollama -f

# Ver procesos de Ollama
ps aux | grep ollama

# Verificar uso de memoria
free -h

# Verificar conexión API
curl http://localhost:11434/api/tags

Optimización del Rendimiento

Consejos para Mejor Rendimiento

  • GPU: Si tienes NVIDIA GPU, asegúrate de tener CUDA instalado
  • RAM: Más RAM permite modelos más grandes y mejor rendimiento
  • SSD: Instala modelos en SSD para carga más rápida
  • Ventana de contexto: Usa solo el tamaño que necesites
  • Modelos quantizados: Los modelos Q4 y Q5 son más eficientes

🎯 Conclusión

Ollama es una herramienta poderosa que democratiza el acceso a los modelos de lenguaje grandes. Con este tutorial, tienes todo lo necesario para:

Próximos Pasos: Experimenta con diferentes modelos, prueba distintas configuraciones de parámetros, y explora las posibilidades de integración con tus herramientas favoritas.

¡Disfruta explorando el mundo de la IA local con Ollama! 🚀