How to import openai package using jupyter notebook?

题意:如何在 Jupyter Notebook 中导入 openai 包?

问题背景:

I am getting the below error message when importing openai as ai using google jupyter notebook:

当我在 Google Jupyter Notebook 中导入 openai 并将其命名为 ai 时,出现了以下错误消息:

python 复制代码
ImportError                               Traceback (most recent call last)
<ipython-input-9-3f86bb4abbfc> in <module>
----> 1 import openai as ai

   /opt/anaconda3/lib/python3.8/site-packages/openai/__init__.py in <module>
      4 
      5 import os as _os
----> 6 from typing_extensions import override
      7 
      8 from . import types

ImportError: cannot import name 'override' from 'typing_extensions' 
(/opt/anaconda3/lib/python3.8/site-packages/typing_extensions.py)

I have no idea how to fix this. Any ideas?

我不知道该如何解决这个问题。有什么建议吗?

问题解决:

It seems a problem related to versions that seem incompatible.

这似乎是一个与版本不兼容相关的问题。

I tested a Python 3.8 environment and openai==1.6.1 seems to work fine. Try to install the following pinned version.

我测试了一个 Python 3.8 环境,openai==1.6.1 似乎运行良好。尝试安装以下固定版本。

python 复制代码
python -m pip install openai==1.6.1

EDIT: 编辑

pd: typing_extension is well known to cause a lot of dependcy problems, as this one. I suggest you:

附注:typing_extension 很容易引发许多依赖性问题,就像这个问题一样。我建议你:

  • Pin your version in a requirements.txt to ensure your project work as expected. Here are mines from a recent project. If the above suggestion does not work, use this snippet as the requirements.txt.

requirements.txt 文件中固定你的版本,以确保项目按预期工作。以下是我最近一个项目中的版本。如果上述建议不起作用,可以使用这个片段作为 requirements.txt 文件。

python 复制代码
python-dotenv~=1.0.0
azure-core~=1.29.5
azure-identity~=1.15.0
chainlit~=0.7.604
openai~=1.3.5
langchain~=0.0.339
pypdf~=3.17.1
python-docx~=1.1.0
faiss-cpu
tiktoken
pysqlite3-binary
  • It is almost sure that you will face similar issues soon. So, I suggest you to search the Error trace on Google and dig into the forums (Github issues, Stackoverflow, etc) for answers. For example, you could type the following in google:

几乎可以肯定你很快就会遇到类似的问题。因此,我建议你在 Google 上搜索错误跟踪,并在论坛(如 Github 问题、Stack Overflow 等)中寻找答案。例如,你可以在 Google 中输入以下内容:

python 复制代码
ImportError: cannot import name 'override' from 'typing_extensions'

And you would find this Giuthub issue: ImportError: cannot import name 'override' from 'typing_extensions' with openai==1.2.0 · Issue #751 · openai/openai-python · GitHub which could help you clarify what it is happening.

相关推荐
海阔天空_201327 分钟前
Python pyautogui库:自动化操作的强大工具
运维·开发语言·python·青少年编程·自动化
零意@35 分钟前
ubuntu切换不同版本的python
windows·python·ubuntu
思忖小下1 小时前
Python基础学习_01
python
q567315231 小时前
在 Bash 中获取 Python 模块变量列
开发语言·python·bash
是萝卜干呀1 小时前
Backend - Python 爬取网页数据并保存在Excel文件中
python·excel·table·xlwt·爬取网页数据
代码欢乐豆1 小时前
数据采集之selenium模拟登录
python·selenium·测试工具
狂奔solar2 小时前
yelp数据集上识别潜在的热门商家
开发语言·python
Tassel_YUE2 小时前
网络自动化04:python实现ACL匹配信息(主机与主机信息)
网络·python·自动化
聪明的墨菲特i2 小时前
Python爬虫学习
爬虫·python·学习
Dontla3 小时前
ChatGPT键盘快捷键(按ctrl + /呼出)
ai