使用dify添加ollama模型接口报错,报错信息如下所示:
{
"code": "invalid_param",
"message": "An error occurred during credentials validation: HTTPConnectionPool(host='xxxxx', port=11434): Max retries exceeded with url: /api/chat (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x77013c353020>: Failed to establish a new connection: [Errno 111] Connection refused'))",
"status": 400
}
-
你可以尝试在服务器上运行以下命令检查 Ollama 是否在运行:
ps aux | grep ollama
-
如果没有看到 Ollama 进程,尝试手动启动:
ollama serve
-
端口未开放(适用于远程服务器):
- 运行
netstat -tulnp | grep 11434
或ss -tulnp | grep 11434
检查 Ollama 是否监听了11434
端口。
如果你的系统缺少
net-tools
或iproute2
,导致netstat
和ss
命令不可用。你可以尝试以下方法安装并使用它们来检查 Ollama 端口是否在监听:
apt update && apt install -y net-tools
然后再执行:
netstat -tulnp | grep 11434
如果你的系统执行:
ss -tulnp | grep 11434
提示找不到命令,可以尝试安装ss命令
apt update && apt install -y iproute2
然后再运行:
ss -tulnp | grep 11434
-
如果没有监听,可能是 Ollama 没有正常启动或绑定的地址有问题。
- 如果是在 云服务器(如阿里云、腾讯云)上运行,需要检查安全组是否放行了
11434
端口。 - 本地 Linux 服务器可以运行以下命令检查防火墙:
sudo iptables -L -n | grep 11434
如果运行 netstat -tulnp | grep 11434
或 ss -tulnp | grep 11434 命令没有输出,那么
说明 Ollama 没监听端口,你需要手动重启它:
pkill ollama
OLLAMA_HOST=0.0.0.0 ollama serve
再次执行命令,查看监听的端口号,如果输出还是不对,可以查看或编辑下面启动文件:
vim /usr/local/bin/launch_ollama.sh
将:
export OLLAMA_HOST=http://0.0.0.0:xxxx
改成:
export OLLAMA_HOST=http://0.0.0.0:11434
然后 重启 Ollama:
pkill ollama
bash /usr/local/bin/launch_ollama.sh