PyCharm无法连接Ollama:服务正常但调用失败求助
Ollama Python SDK连接失败排查(服务正常但代码报错)
问题场景
我在PyCharm 3.1.1中编写了如下代码(已通过pip安装Ollama 0.4.7):
import ollama ollama.list()
运行时出现错误:
Failed to connect to Ollama. Please check that Ollama is downloaded, running and accessible. https://ollama.com/download
但Ollama服务状态正常:
- 浏览器可打开
http://localhost:11434/api/tags - Windows命令行查询结果:
C:\Users>netstat -aon|findstr 11434 TCP 0.0.0.0:11434 0.0.0.0:0 LISTENING 24856 TCP [::]:11434 [::]:0 LISTENING 24856C:\Users>tasklist|findstr "24856" ollama.exe 24856 Console 2 52,980 K
可能的原因及解决办法
1. Python环境的网络拦截问题
PyCharm使用的Python进程可能被系统防火墙或代理工具拦截,无法访问本地11434端口:
- 检查系统防火墙规则,确保Python.exe(或PyCharm进程)被允许访问本地网络。
- 若开启了代理,在PyCharm中关闭代理:依次进入
File > Settings > Appearance & Behavior > System Settings > HTTP Proxy,选择No proxy,重启PyCharm后重试。
2. Ollama SDK连接配置异常
Ollama Python SDK默认读取OLLAMA_HOST环境变量,若该变量被错误配置会导致连接失败:
- 手动指定服务地址修改代码,绕过环境变量干扰:
import ollama client = ollama.Client(host='http://localhost:11434') client.list()
3. PyCharm虚拟环境与全局环境不匹配
确认PyCharm当前使用的Python环境已安装ollama包:
- 在PyCharm终端执行
pip list,检查是否存在ollama且版本为0.4.7。 - 若未安装,在当前虚拟环境下执行
pip install ollama==0.4.7。
4. IPv6连接优先级问题
从netstat结果看Ollama同时监听IPv4和IPv6,部分Python环境优先使用IPv6但解析异常:
- 尝试指定IPv4地址连接:
import ollama client = ollama.Client(host='http://127.0.0.1:11434') client.list()
内容的提问来源于stack exchange,提问作者nick7226
相关产品推荐
相关产品推荐

