在OpenClaw接入本地模型(如Ollama、vLLM、LM Studio、FastChat、Text Generation WebUI、OpenAI兼容接口等)时,如果出现 Connection refused、连接被拒绝、ECONNREFUSED、Failed to connect、Cannot reach API、Upstream connection error 等错误,说明OpenClaw无法访问本地模型接口。该问题通常由接口地址错误、端口未开启、模型服务未启动、Docker网络隔离、IP绑定错误、防火墙拦截、Provider配置错误、API路径错误、容器互联失败等原因导致。解决OpenClaw本地模型连接被拒绝问题,需要按服务状态、端口监听、网络连接、URL配置、Provider设置、Docker网络、权限策略等顺序逐项排查。
一、确认本地模型服务是否已启动
最常见原因是本地模型没有运行。
检查:
ps -ef | grep ollama
或:
docker ps
如果没有运行,需要启动。
Ollama:
ollama serve
vLLM:
python -m vllm.entrypoints.openai.api_server
LM Studio:
未启动时OpenClaw必定连接被拒绝。
二、确认端口是否监听
模型服务必须监听端口。
netstat -tlnp
或:
ss -tlnp
常见端口:
- 11434 → Ollama
- 8000 → vLLM
- 1234 → LM Studio
- 5000 → FastChat
如果端口未监听,OpenClaw会报:
connection refused
三、检查API Base URL是否正确
Base URL错误会直接拒绝连接。
正确示例:
http://127.0.0.1:11434/v1
http://localhost:8000/v1
http://192.168.1.10:8000/v1
错误示例:
http://127.0.0.1:11434
错误示例:
https://127.0.0.1:11434
错误示例:
http://0.0.0.0:8000
必须使用真实IP。
四、Docker环境中不能用127.0.0.1
如果OpenClaw在Docker中运行,127.0.0.1指向容器自己。
错误:
http://127.0.0.1:11434
正确:
http://host.docker.internal:11434
或:
http://172.17.0.1:11434
或使用容器名:
http://ollama:11434
五、检查Provider是否正确
本地模型必须使用正确Provider。
错误:
provider=openai
正确:
provider=ollama
或:
provider=openai-compatible
错误Provider会导致连接失败。
六、确认接口支持OpenAI格式
OpenClaw要求接口支持:
/v1/models
/v1/chat/completions
测试:
curl http://127.0.0.1:8000/v1/models
如果失败,说明接口不兼容。
建议使用:
- vLLM
- Ollama
- LM Studio Server
- FastChat
七、防火墙阻止连接
服务器防火墙可能拦截端口。
检查:
ufw status
开放端口:
ufw allow 11434
ufw allow 8000
或关闭防火墙测试。
八、检查IP绑定
部分模型只绑定localhost。
错误:
127.0.0.1:8000
改为:
0.0.0.0:8000
vLLM:
--host 0.0.0.0
Ollama:
OLLAMA_HOST=0.0.0.0
九、Docker容器网络不通
多个容器必须同一网络。
docker network ls
加入同一网络:
docker network connect bridge openclaw
或docker-compose统一网络。
十、检查端口映射
容器端口未映射会拒绝。
ports:
- 11434:11434
没有映射无法访问。
十一、模型未加载
Ollama未加载模型也会拒绝。
ollama list
如果没有:
ollama run llama3
十二、权限问题
部分系统限制端口访问。
chmod 777
或:
sudo
十三、代理导致连接失败
HTTP代理可能拦截本地地址。
检查:
env | grep proxy
删除:
unset http_proxy
unset https_proxy
十四、缓存错误
旧配置可能仍在。
rm -rf cache
docker restart openclaw
十五、推荐稳定配置
provider=ollama
base_url=http://host.docker.internal:11434/v1
model=llama3:8b
host=0.0.0.0
port=11434
确保服务运行、端口监听、URL正确、Docker网络可达、防火墙放行、Provider正确,即可解决OpenClaw本地模型连接被拒绝问题。 |