一、错误ERROR
Traceback (most recent call last):
File "D:\Dropbox\Pycharm Projects\workspace\main.py", line 16, in <module>
print(davinci(text))
File "D:\Dropbox\Pycharm Projects\workspace\venv\lib\site-packages\langchain\llms\base.py", line 255, in __call__
return self.generate([prompt], stop=stop).generations[0][0].text
File "D:\Dropbox\Pycharm Projects\workspace\venv\lib\site-packages\langchain\llms\base.py", line 128, in generate
raise e
File "D:\Dropbox\Pycharm Projects\workspace\venv\lib\site-packages\langchain\llms\base.py", line 125, in generate
output = self._generate(prompts, stop=stop)
File "D:\Dropbox\Pycharm Projects\workspace\venv\lib\site-packages\langchain\llms\openai.py", line 259, in _generate
response = self.completion_with_retry(prompt=_prompts, **params)
File "D:\Dropbox\Pycharm Projects\workspace\venv\lib\site-packages\langchain\llms\openai.py", line 200, in completion_with_retry
retry_decorator = self._create_retry_decorator()
File "D:\Dropbox\Pycharm Projects\workspace\venv\lib\site-packages\langchain\llms\openai.py", line 189, in _create_retry_decorator
retry_if_exception_type(openai.error.Timeout)
AttributeError: module 'openai' has no attribute 'error
主要是错误:
AttributeError: module 'openai' has no attribute 'error
也可能是错误:
AttributeError: module 'openai.error' has no attribute 'Timeout'
二、基础环境分析
我的环境是
python3.11 、openai1.9.0 、langchain 0.0.200
环境安装方式
python3.11是之前已经安装好的
openai 和 langchain 分别是通过命令默认未制定版本安装
1. pip3 install openai
2. pip3 install langchain
一切似乎看起来没啥问题
三、理清思路
程序都是简单示例程序应该没啥问题,那么结合网上给出的说法,一定是这三个版本的组合有问题,于是返回头还是研究这三个版本看看有啥不一样的,最后发现langchain 0.0.200怎么这版本这版本这么小啊,这明显的不正常,即使正常也不能用,也太早期了,果真,进入Github进行langchain搜索发现人家都Release到了v0.1.1,可是为啥我的版本这么低????
于是执行命令验证
git:(master) ✗ pip3 list | grep langchain
langchain 0.0.200
langchainplus-sdk 0.0.20
确实都很低,至此,发现问题。
四、解决问题
1. 卸载旧版本
git:(master) ✗ pip3 install langchain
2. 指定版本安装
git:(master) ✗ pip3 install langchain 0.1.1
Collecting langchain
Downloading langchain-0.1.1-py3-none-any.whl (802 kB)
3.检验
git:(master) ✗ pip3 list | grep langchain
langchain 0.1.1
langchain-community 0.0.13
langchain-core 0.1.13
langchainplus-sdk 0.0.20
再次,运行一切OK。
五、总结
看似很简单的一个错误,文档中没有给出常见的犯错Tips还是很困扰人的,会让新进入社区的小伙伴对项目的印象分大大减少,继续💪。