安装并导入OpenAI库时遭遇urllib3与SSL版本兼容问题
解决urllib3 v2.0与LibreSSL兼容问题导致无法导入openai的问题
问题详情
执行pip install openai安装库后,运行import openai时触发导入错误,核心提示为:urllib3 v2.0仅支持OpenSSL 1.1.1+,但当前ssl模块基于LibreSSL 2.8.3编译。尝试升级urllib3后显示已是最新版本2.0.2,问题仍存在。
报错信息
Python 3.9.6 (default, Mar 10 2023, 20:16:38) [Clang 14.0.3 (clang-1403.0.22.14.1)] on darwin Type "help", "copyright", "credits" or "license" for more information. >>> import openai Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/Users/yule/Library/Python/3.9/lib/python/site-packages/openai/__init__.py", line 19, in <module> from openai.api_resources import ( File "/Users/mic/Library/Python/3.9/lib/python/site-packages/openai/api_resources/__init__.py", line 1, in <module> from openai.api_resources.audio import Audio # noqa: F401 File "/Users/mic/Library/Python/3.9/lib/python/site-packages/openai/api_resources/audio.py", line 4, in <module> from openai import api_requestor, util File "/Users/mic/Library/Python/3.9/lib/python/site-packages/openai/api_requestor.py", line 22, in <module> import requests File "/Users/mic/Library/Python/3.9/lib/python/site-packages/requests/__init__.py", line 43, in <module> import urllib3 File "/Users/mic/Library/Python/3.9/lib/python/site-packages/urllib3/__init__.py", line 38, in <module> raise ImportError( ImportError: urllib3 v2.0 only supports OpenSSL 1.1.1+, currently the 'ssl' module is compiled with LibreSSL 2.8.3. See: https://github.com/urllib3/urllib3/issues/2168
升级命令输出
pip3 install --upgrade urllib3 Defaulting to user installation because normal site-packages is not writeable Requirement already satisfied: urllib3 in ./Library/Python/3.9/lib/python/site-packages (2.0.2)
解决方案
1. 降级urllib3到兼容版本
urllib3 v2.0对SSL库版本要求较高,而macOS自带Python 3.9使用的LibreSSL 2.8.3不满足要求,因此需要安装v1.x系列的兼容版本:
pip3 install urllib3==1.26.15
(注:1.26.15是urllib3 v1.x分支的稳定兼容版本,也可选择最新的v1.x版本)
2. 验证版本
执行以下命令确认urllib3已降级:
pip3 show urllib3
输出中Version字段应显示为1.x系列版本。
3. 重新测试
启动Python交互环境,再次执行import openai,确认错误不再出现。
内容的提问来源于stack exchange,提问作者maimai
相关产品推荐
相关产品推荐

