OpenClawSkills
GitHub
Proveedores • 5 min de lectura

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>'.

Tutorial.step

Inicio Rápido

1. Instalar Ollama: https://ollama.ai

2. Descargar un modelo:

Bash
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):

Bash
export OLLAMA_API_KEY="ollama-local"


openclaw config set models.providers.ollama.apiKey "ollama-local"

4. Usar modelos de Ollama:

Json5
{
  agents: {
    defaults: {
      model: { primary: "ollama/llama3.3" },
    },
  },
}
Tutorial.step

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["&lt;arch&gt;.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:

Bash
ollama list
openclaw models list

Al agregar nuevos modelos, solo descarga con Ollama:

Bash
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).

Tutorial.step

Configuración

#

Tutorial.step

Configuración Básica (Descubrimiento Implícito)

La forma más simple de habilitar es establecer una variable de entorno:

Bash
export OLLAMA_API_KEY="ollama-local"

#

Tutorial.step

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

Json5
{
  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.

#

Tutorial.step

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):

Json5
{
  models: {
    providers: {
      ollama: {
        apiKey: "ollama-local",
        baseUrl: "http://ollama-host:11434/v1",
      },
    },
  },
}

#

Tutorial.step

Selección de Modelo

Después de la configuración, todos tus modelos de Ollama están disponibles:

Json5
{
  agents: {
    defaults: {
      model: {
        primary: "ollama/llama3.3",
        fallback: ["ollama/qwen2.5-coder:32b"],
      },
    },
  },
}
Tutorial.step

Avanzado

#

Tutorial.step

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:

Bash
ollama pull deepseek-r1:32b

#

Tutorial.step

Costos de Modelo

Ollama se ejecuta localmente y es gratuito, así que todos los costos de modelo se establecen a $0.

#

Tutorial.step

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.

Tutorial.step

Solución de Problemas

#

Tutorial.step

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>':

Bash
ollama serve

También confirma que la API es accesible:

Bash
curl http://localhost:11434/api/tags

#

Tutorial.step

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:

Bash
ollama list  # View installed models
ollama pull llama3.3  # Pull a model

#

Tutorial.step

Conexión Rechazada

Verifica si Ollama está ejecutándose en el puerto correcto:

Bash
ps aux | grep ollama


ollama serve
Tutorial.step

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