OpenClaw接入Ollama与配置API是独立操作:前者需编译启用WITH_OLLAMA=1并配置config.yaml中backend.ollama项,后者在api节设置服务端口与认证;二者协议层级、作用对象及配置位置均不同。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

OpenClaw接入Ollama和配置API是两个完全独立的操作环节:前者让OpenClaw能调用本地Ollama服务执行模型推理,后者是为OpenClaw自身对外暴露能力而设置的访问入口,二者作用对象、协议层级和配置文件位置均不相同。
确认OpenClaw是否已内置Ollama支持
运行openclaw --version,若输出中包含ollama: enabled字样,说明已编译Ollama客户端模块;否则需重新构建源码并启用WITH_OLLAMA=1编译标志。未启用该标志时,后续所有Ollama调用都会直接报错command not found: ollama。
这一步不能跳过——即使你本地已安装Ollama二进制,OpenClaw默认不会自动发现它,必须显式启用集成支持。
配置OpenClaw连接本地Ollama服务
编辑~/.openclaw/config.yaml,在backend节下添加:
ollama: host: http://localhost:11434 model: llama3.1:8b
【host必须带http://前缀,且端口必须与ollama serve实际监听端口一致】。Ollama默认监听11434,但若你通过OLLAMA_HOST=0.0.0.0:8080 ollama serve启动,则此处必须同步改为http://localhost:8080,否则连接超时。
保存后执行openclaw backend health验证连通性。返回ollama: ok即成功。
配置OpenClaw自身的API服务端口与认证
同一份config.yaml中,在api节下设置:
api: host: 0.0.0.0 port: 3000 auth_enabled: true api_key: sk-abc123xyz
这里配置的是OpenClaw作为服务端被其他系统(如前端、CI脚本)调用的HTTP入口,与Ollama完全无关。port可自由指定,但需确保无其他进程占用;auth_enabled设为true时,所有API请求必须携带X-API-Key: sk-abc123xyz头,否则返回401。
启动服务:openclaw api serve。此时OpenClaw监听http://localhost:3000/v1/execute,而它内部调用Ollama仍走http://localhost:11434——两个地址彼此隔离。
验证Ollama调用链是否贯通
第一步:确保ollama list能列出模型;
第二步:执行
curl -X POST http://localhost:3000/v1/execute \</p>
<p>-H "X-API-Key: sk-abc123xyz" \</p>
<p>-d '{"tool": "ollama_chat", "input": "hello"}'</p>
<p>若返回包含<code>"response": "Hello! How can I help you?"的JSON,则说明OpenClaw→Ollama→OpenClaw API三层路径全部打通。
注意:如果返回"error": "failed to call ollama",优先检查openclaw backend health结果,而非直接修改API请求头——90%的失败源于Ollama连接层未就绪,而非API层配置错误。


















