OpenClaw接入Ollama后生成内容为空,主因是模型未加载、参数配置错误或通信链路中断;需依次验证ollama list输出、OLLAMA_BASE_URL地址(禁用localhost)、curl直连API响应、清空缓存重拉模型,并显式设置stream: false与超时120秒。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

OpenClaw接入Ollama后生成内容为空,说明请求已抵达模型但未返回有效响应,常见于模型未加载、参数配置错误或通信链路中断等环节。
确认Ollama服务是否正常运行并加载目标模型
在终端执行 ollama list,检查目标模型(如 qwen2:7b 或 llama3.2:3b)是否出现在列表中且状态为 latest。若未列出,需先拉取:ollama pull qwen2:7b。
执行 ollama ps 查看是否有模型正在运行。若无任何进程,说明Ollama虽启动但未激活模型——【OpenClaw调用时会静默失败,不报错也不返回】。
手动触发一次本地推理验证:运行 ollama run qwen2:7b "你好"。若终端卡住、返回空行或提示 context canceled,说明模型加载异常或显存不足,需换用更小尺寸模型(如 phi3:3.8b)重试。
检查OpenClaw的Ollama连接配置
打开 OpenClaw 项目中的配置文件(通常为 config.yaml 或 .env),定位 OLLAMA_BASE_URL 字段。
确保其值为 http://127.0.0.1:11434(默认端口),而非 localhost——Docker容器内解析 localhost 会指向容器自身,导致连接拒绝。
若OpenClaw部署在Docker中,且Ollama运行在宿主机,则必须将 OLLAMA_BASE_URL 改为宿主机真实IP(如 http://172.17.0.1:11434),并确认宿主机防火墙放行11434端口。
验证API调用参数与响应结构
方法一:用curl直连Ollama API测试
执行以下命令,模拟OpenClaw发出的请求:
curl -X POST http://127.0.0.1:11434/api/chat \-H "Content-Type: application/json" \-d '{ "model": "qwen2:7b", "messages": [{"role": "user", "content": "你好"}] }'
将 OpenClaw 启用为原生 macOS 菜单栏应用,并提供快捷弹出窗口。**仅支持 macOS** —— 不兼容 Windows 或 Linux。当用户提出“启用菜单栏”、“添加菜单栏”、“在菜单栏中运行”、“使 OpenClaw 可从菜单栏快速访问”,或希望不打开完整仪表板即可快速启动 OpenClaw 时,使用此功能。
若返回空JSON({})或 "error": "model not found",说明模型名拼写错误或未加载;若返回完整JSON但 message.content 为空字符串,进入下一步。
方法二:检查OpenClaw日志中的原始响应体
启动OpenClaw时添加日志级别参数(如 --log-level debug),搜索关键词 ollama response。若日志中显示 "content":"" 且 "done": true,说明Ollama已执行完但输出为空——此时需检查模型是否被意外截断(options.num_predict 设为0)、或系统提示词(system 字段)中存在非法字符导致解析失败。
强制刷新Ollama模型上下文缓存
第一步:停止所有Ollama相关进程
pkill ollama → 等待3秒 → ollama serve &
第二步:清空Ollama内部缓存目录
执行 ollama rm qwen2:7b → 再次 ollama pull qwen2:7b。这一步能排除因模型文件损坏或元数据错乱导致的静默空响应。
第三步:在OpenClaw配置中显式设置超时与流式控制
将 stream: false 加入请求体,并把 timeout 提高至 120 秒。某些量化模型首次响应较慢,若超时过短,Ollama会提前终止流并返回空内容。

















