Ollama
Usar Ollama (un runtime LLM local) en OpenClaw.
Ollama es un runtime LLM local que te permite ejecutar modelos de código abierto más convenientemente en tu propia máquina. OpenClaw se integra con la API compatible con OpenAI de Ollama; cuando lo habilitas via '<code className="bg-white/10 px-1.5 py-0.5 rounded text-emerald-300 text-sm">'OLLAMA_API_KEY'</code>' (o un perfil de auth) y '<strong>'no'</strong>' configuras explícitamente '<code className="bg-white/10 px-1.5 py-0.5 rounded text-emerald-300 text-sm">'models.providers.ollama'</code>', OpenClaw puede '<strong>'descubrir automáticamente modelos que soportan herramientas'</strong>'.
Inicio Rápido
1. Instalar Ollama: https://ollama.ai
2. Descargar un modelo:
ollama pull llama3.3 ollama pull qwen2.5-coder:32b ollama pull deepseek-r1:32b
3. Habilitar Ollama para OpenClaw (cualquier valor funciona; Ollama no necesita una clave real):
export OLLAMA_API_KEY="ollama-local" openclaw config set models.providers.ollama.apiKey "ollama-local"
4. Usar modelos de Ollama:
{
agents: {
defaults: {
model: { primary: "ollama/llama3.3" },
},
},
}Descubrimiento de Modelos (Proveedor Implícito)
Cuando estableces '<code className="bg-white/10 px-1.5 py-0.5 rounded text-emerald-300 text-sm">'OLLAMA_API_KEY'</code>' (o un perfil de auth) y '<strong>'no'</strong>' defines '<code className="bg-white/10 px-1.5 py-0.5 rounded text-emerald-300 text-sm">'models.providers.ollama'</code>', OpenClaw descubre automáticamente modelos de tu instancia local de Ollama en '<code className="bg-white/10 px-1.5 py-0.5 rounded text-emerald-300 text-sm">'http://127.0.0.1:11434'</code>':
- - Consultar '<code className="bg-white/10 px-1.5 py-0.5 rounded text-emerald-300 text-sm">'/api/tags'</code>' y '<code className="bg-white/10 px-1.5 py-0.5 rounded text-emerald-300 text-sm">'/api/show'</code>'
- - Solo mantener modelos que reportan capacidad '<code className="bg-white/10 px-1.5 py-0.5 rounded text-emerald-300 text-sm">'tools'</code>'
- - Marcar modelos como '<code className="bg-white/10 px-1.5 py-0.5 rounded text-emerald-300 text-sm">'reasoning'</code>' cuando reportan '<code className="bg-white/10 px-1.5 py-0.5 rounded text-emerald-300 text-sm">'thinking'</code>'
- - Leer '<code className="bg-white/10 px-1.5 py-0.5 rounded text-emerald-300 text-sm">'contextWindow'</code>' de '<code className="bg-white/10 px-1.5 py-0.5 rounded text-emerald-300 text-sm">'model_info["<arch>.context_length"]'</code>' cuando sea posible
- - Establecer '<code className="bg-white/10 px-1.5 py-0.5 rounded text-emerald-300 text-sm">'maxTokens'</code>' a 10x la ventana de contexto
- - Establecer todos los costos a '<code className="bg-white/10 px-1.5 py-0.5 rounded text-emerald-300 text-sm">'0'</code>'
Esto evita el mantenimiento manual de entradas de modelos mientras mantiene el catálogo consistente con las capacidades de Ollama.
Ver modelos disponibles:
ollama list openclaw models list
Al agregar nuevos modelos, solo descarga con Ollama:
ollama pull mistral
Los nuevos modelos serán descubiertos automáticamente y disponibles para uso.
Si configuras explícitamente '<code className="bg-white/10 px-1.5 py-0.5 rounded text-emerald-300 text-sm">'models.providers.ollama'</code>', el auto-descubrimiento se omite y necesitas definir modelos manualmente (ver abajo).
Configuración
#
Configuración Básica (Descubrimiento Implícito)
La forma más simple de habilitar es establecer una variable de entorno:
export OLLAMA_API_KEY="ollama-local"
#
Configuración Explícita (Modelos Manuales)
Útil cuando:
- - Ollama se ejecuta en un host/puerto diferente
- - Quieres forzar especificar ventana de contexto o lista de modelos
- - Quieres incluir modelos que no declaran soporte de herramientas
{
models: {
providers: {
ollama: {
// OpenAI-compatible API baseUrl needs to include /v1
baseUrl: "http://ollama-host:11434/v1",
apiKey: "ollama-local",
api: "openai-completions",
models: [
{
id: "llama3.3",
name: "Llama 3.3",
reasoning: false,
input: ["text"],
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
contextWindow: 8192,
maxTokens: 8192 * 10
}
]
}
}
}
}Si '<code className="bg-white/10 px-1.5 py-0.5 rounded text-emerald-300 text-sm">'OLLAMA_API_KEY'</code>' está establecido, puedes omitir '<code className="bg-white/10 px-1.5 py-0.5 rounded text-emerald-300 text-sm">'apiKey'</code>' en la entrada del proveedor, y OpenClaw lo auto-llenará durante verificaciones de disponibilidad.
#
URL Base Personalizada (Configuración Explícita)
Cuando Ollama se ejecuta en un host o puerto diferente (la configuración explícita deshabilita auto-descubrimiento, así que también necesitas definir modelos manualmente):
{
models: {
providers: {
ollama: {
apiKey: "ollama-local",
baseUrl: "http://ollama-host:11434/v1",
},
},
},
}#
Selección de Modelo
Después de la configuración, todos tus modelos de Ollama están disponibles:
{
agents: {
defaults: {
model: {
primary: "ollama/llama3.3",
fallback: ["ollama/qwen2.5-coder:32b"],
},
},
},
}Avanzado
#
Modelos de Razonamiento
Cuando Ollama reporta '<code className="bg-white/10 px-1.5 py-0.5 rounded text-emerald-300 text-sm">'thinking'</code>' en '<code className="bg-white/10 px-1.5 py-0.5 rounded text-emerald-300 text-sm">'/api/show'</code>', OpenClaw marca el modelo como teniendo capacidades de razonamiento:
ollama pull deepseek-r1:32b
#
Costos de Modelo
Ollama se ejecuta localmente y es gratuito, así que todos los costos de modelo se establecen a $0.
#
Ventana de Contexto
Para modelos auto-descubiertos, OpenClaw usa la ventana de contexto reportada por Ollama cuando es posible; de lo contrario predetermina a '<code className="bg-white/10 px-1.5 py-0.5 rounded text-emerald-300 text-sm">'8192'</code>'. Puedes anular '<code className="bg-white/10 px-1.5 py-0.5 rounded text-emerald-300 text-sm">'contextWindow'</code>' y '<code className="bg-white/10 px-1.5 py-0.5 rounded text-emerald-300 text-sm">'maxTokens'</code>' en la configuración explícita del proveedor.
Solución de Problemas
#
Ollama No Detectado
Confirma que Ollama está ejecutándose y que estableciste '<code className="bg-white/10 px-1.5 py-0.5 rounded text-emerald-300 text-sm">'OLLAMA_API_KEY'</code>' (o un perfil de auth), y '<strong>'no'</strong>' definas explícitamente '<code className="bg-white/10 px-1.5 py-0.5 rounded text-emerald-300 text-sm">'models.providers.ollama'</code>':
ollama serve
También confirma que la API es accesible:
curl http://localhost:11434/api/tags
#
No Hay Modelos Disponibles
OpenClaw solo auto-descubre modelos que reportan soportar herramientas. Si tu modelo no aparece en la lista:
- - Descarga un modelo que soporte herramientas, o
- - Define manualmente el modelo en '<code className="bg-white/10 px-1.5 py-0.5 rounded text-emerald-300 text-sm">'models.providers.ollama'</code>'
Agregar nuevos modelos:
ollama list # View installed models ollama pull llama3.3 # Pull a model
#
Conexión Rechazada
Verifica si Ollama está ejecutándose en el puerto correcto:
ps aux | grep ollama ollama serve
Ver También
- '<a href="/concepts/model-providers" className="text-emerald-400 hover:text-emerald-300 transition-colors">'Proveedores de Modelo'</a>' - Resumen de proveedores
- '<a href="/concepts/models" className="text-emerald-400 hover:text-emerald-300 transition-colors">'Selección de Modelo'</a>' - Cómo elegir modelos
- '<a href="/gateway/configuration" className="text-emerald-400 hover:text-emerald-300 transition-colors">'Configuración'</a>' - Referencia completa de configuración