乐于分享
好东西不私藏

OpenClaw 2026.4.14 配置局域网 Ollama 模型指南

OpenClaw 2026.4.14 配置局域网 Ollama 模型指南

OpenClaw 2026.4.14 配置局域网 Ollama 模型指南,涵盖了所有踩过的坑和最终正确的配置。


硬件配置:

📌 适用版本与场景

  • OpenClaw 版本
    :2026.4.14 (323493f)
  • 场景
    :在同一局域网内的另一台机器上运行 Ollama 服务(例如 IP 为 192.168.145.1:11434),OpenClaw 需要通过网络调用该服务中的模型(如 qwen3:4b)。

🧩 核心问题摘要

遇到的问题

根本原因

最终解决方案

models.providers.ollama.models.0.name 缺失

旧版 models 字段残留,结构不完整

删除旧 models 字段,使用新版 providers 结构

plugins.entries.ollama 包含无效键

误将模型提供商配置写入插件区

将配置移至 models.providers.ollama

<root>: Unrecognized key: "providers"

将 providers 误写为顶层键

应将 providers 放入 models 字段内部

api 字段值 openai-chat 不被识别

2026.4.14 版不支持该值

将 api 改为 "ollama"


📂 最终正确的配置文件 (~/.openclaw/openclaw.json)

{  "gateway": {    "mode": "local",    "port": 18789,    "bind": "loopback",    "auth": {      "mode": "password",      "password": "wang123123"    },    "tailscale": {      "mode": "off",      "resetOnExit": false    }  },  "models": {    "mode": "merge",    "providers": {      "ollama": {        "baseUrl": "http://192.168.145.1:11434/v1",        "api": "ollama",        "apiKey": "ollama",        "models": [          {            "id": "qwen3:4b",            "name": "qwen3:4b",            "api": "ollama",            "contextWindow": 32768,            "maxTokens": 4096,            "cost": {              "input": 0,              "output": 0,              "cacheRead": 0,              "cacheWrite": 0            }          }        ]      }    }  },  "agents": {    "defaults": {      "models": {        "ollama/qwen3:4b": {}      }    }  },  "wizard": {    "lastRunAt": "2026-04-18T11:32:18.725Z",    "lastRunVersion": "2026.4.14",    "lastRunCommand": "doctor",    "lastRunMode": "local"  },  "meta": {    "lastTouchedVersion": "2026.4.14",    "lastTouchedAt": "2026-04-18T11:32:18.866Z"  },  "diagnostics": {    "cacheTrace": {      "enabled": true,      "includeMessages": true,      "includePrompt": true,      "includeSystem": true    }  },  "plugins": {    "entries": {      "lmstudio": {        "enabled": true      },      "google": {        "enabled": true      },      "ollama": {        "enabled": true      }    }  }}

🔑 配置关键点说明

字段

说明

注意事项

models.mode

设为 "merge",与内置配置合并

避免覆盖其他提供商

models.providers.ollama.baseUrl

Ollama 服务的 API 端点

末尾可带 /v1,也可不带。确保 IP 和端口正确

models.providers.ollama.api

必须为 "ollama"

2026.4.14 版本不支持 "openai-chat"

models.providers.ollama.models[].id

必须与 ollama list 中的名称完全一致

例如 qwen3:4b

models.providers.ollama.models[].api

必须为 "ollama"

与上层保持一致

agents.defaults.models

将模型注册为可用

路径格式:ollama/模型id


🛠️ 操作流程(从零开始配置)

1️⃣ 备份并清理旧配置(可选但推荐)

cp ~/.openclaw/openclaw.json ~/.openclaw/openclaw.json.bakopenclaw doctor --fix   # 尝试自动修复,并移除无效字

2️⃣ 手动编辑配置文件

nano ~/.openclaw/openclaw.json

将上述最终正确的配置文件内容粘贴进去(注意替换 IP 地址和密码),保存退出。

3️⃣ 验证配置有效性

openclaw doctor

若无 Config invalid 报错,则配置通过。

4️⃣ 重启网关服务

openclaw gateway restart

5️⃣ 查看模型列表

openclaw models list

预期输出包含 ollama/qwen3:4b

6️⃣ 测试对话

openclaw chat --model ollama/qwen3:4"你好"


🔍 常见错误排查

错误信息

可能原因

解决方法

models.providers.ollama.models.0.name: Invalid input

旧版 models 字段残留

删除顶层 "models": {...} 字段,使用新的 models.mode 结构

plugins.entries.ollama: Unrecognized keys

将提供商配置写到了 plugins.entries

将 Ollama 配置移到 models.providers.ollama 下

<root>: Unrecognized key: "providers"

providers 误放在顶层

providers 必须位于 models 字段内部

api: Invalid option: expected one of ...

api 值使用了 openai-chat

改为 "ollama"

模型列表不显示,但 curl 成功

未在 agents.defaults.models 中注册模型

添加 "ollama/qwen3:4b": {} 到 agents.defaults.models

测试网络连通性

curl http://192.168.145.1:11434/v1/models

应返回包含 qwen3:4b 的 JSON。

运行结果:


📝 总结

配置 OpenClaw 连接局域网 Ollama 的核心要点:

  1. 正确的层级关系
    models → providers → ollama
  2. 正确的 API 类型
    :2026.4.14 版本必须使用 "ollama"
  3. 必须注册模型
    agents.defaults.models 中需包含模型路径。
  4. 避免新旧结构冲突
    :彻底删除旧版 models.providers 残留字段。

按照本指南配置后,即可在 OpenClaw 中流畅使用局域网内的 Ollama 模型。