You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WSL2 Ubuntu环境下OpenClaw连接Ollama时出现GatewayClientRequestError及500错误的技术求助

我之前在WSL2上折腾OpenClaw和Ollama的时候也碰到过类似的问题,结合你的情况,给你几个排查和解决的方向:

1. 明确指定Ollama API地址给OpenClaw

虽然你已经把Ollama绑定到0.0.0.0,但OpenClaw有时候可能默认使用的端点和你预期的不一致。启动OpenClaw的时候显式指定Ollama的API地址,确保它直接连接到WSL内部运行的服务:

OLLAMA_API_URL=http://127.0.0.1:11434 ollama launch openclaw

2. 检查OpenClaw的存储目录权限

那个chat.history unavailable错误大概率是OpenClaw没有权限创建或读取聊天历史文件。WSL2下的用户权限偶尔会出问题,你可以检查并修复OpenClaw的配置目录权限:

# 查看Ollama相关目录的权限
ls -la ~/.ollama/
# 如果openclaw目录存在,修复所属用户权限
chown -R $USER:$USER ~/.ollama/openclaw
# 如果不存在,手动创建并设置正确权限
mkdir -p ~/.ollama/openclaw
chmod 755 ~/.ollama/openclaw

调整后重启OpenClaw,看看历史记录错误是否消失。

3. 临时禁用历史记录(快速验证)

如果权限调整后还是不行,你可以尝试禁用OpenClaw的历史记录功能,验证是不是持久化层的问题:

OPENCLAW_DISABLE_HISTORY=true ollama launch openclaw

如果这样能正常接收聊天响应,那说明问题确实出在历史记录存储环节,你可以继续排查目录权限,或者考虑指定自定义存储路径。

4. 用OpenClaw CLI测试,排除Web UI干扰

有时候Web UI的缓存或代理会导致奇怪的问题,你可以直接用OpenClaw的命令行工具测试聊天功能:

openclaw chat

输入消息后看看能不能得到模型响应,如果CLI正常工作,那问题可能出在Web UI端,你可以尝试清除浏览器缓存,或者重新启动OpenClaw的Web服务。

5. 查看Ollama的实时日志

之前你只关注了OpenClaw的日志,建议同时观察Ollama的实时输出。启动Ollama时不要后台运行,直接执行:

OLLAMA_HOST=0.0.0.0:11434 ollama serve

然后在另一个终端启动OpenClaw并发送聊天请求,看看Ollama这边有没有报错信息——这能帮你定位是OpenClaw的请求格式问题,还是Ollama本身的处理异常。


针对你疑问的补充解答

  • 历史记录问题:这不是OpenClaw的普遍已知bug,在WSL2环境下大多是目录权限或存储路径配置导致的;
  • 额外配置:除了指定OLLAMA_API_URL和调整权限,一般不需要特殊配置,但要确保WSL2的防火墙没有拦截11434和18789端口;
  • WSL2网络问题:如果上述方法无效,可以试试用WSL的内部IP连接Ollama——先通过hostname -I获取WSL的IP,启动Ollama时绑定该IP,再让OpenClaw指向这个IP地址;
  • 跳过历史记录:用OPENCLAW_DISABLE_HISTORY=true环境变量可以临时禁用,适合测试或临时使用场景。

内容的提问来源于stack exchange,提问作者The Adarsh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.28 06:38:16