OpenAI API 错误:“您尝试访问 openai。模型,但 openai\>=1.0.0“ 中不再支持此功能

OpenAI API error: "You tried to access openai.Model, but this is no longer supported in openai\>=1.0.0"

提问人:José Alonso 提问时间:11/15/2023 最后编辑:marc_sJosé Alonso 更新时间:11/23/2023 访问量:226

问:

使用 Visual Studio Code 和 PyCharm,安装 openai (pip install openai) 后,一个奇怪的错误困扰着我 - 请帮忙。

例如,如果我写:

import openai

openai.api_key = "sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

lista_de_modelos = openai.Model.list()
print(lista_de_modelos)

它失败了,我收到这个错误:

PS C:\\proyectoVS_Python\> & "C:/Users/kitkatuser/AppData/Local/Programs/Python/Python312/python.exe" "c:/proyectoVS_Python/import os.py"
Traceback (most recent call last):
File "c:\\proyectoVS_Python\\import os.py", line 5, in \<module\>
lista_de_modelos = openai.Model.list()
^^^^^^^^^^^^^^^^^
File "C:\\Users\\kitkatuser\\AppData\\Local\\Programs\\Python\\Python312\\Lib\\site-packages\\openai_utils_proxy.py", line 22, in __getattr__
return getattr(self.__get_proxied__(), attr)
^^^^^^^^^^^^^^^^^^^^^^
File "C:\\Users\\kitkatuser\\AppData\\Local\\Programs\\Python\\Python312\\Lib\\site-packages\\openai_utils_proxy.py", line 43, in __get_proxied__  
return self.__load__()
^^^^^^^^^^^^^^^
File "C:\\Users\\kitkatuser\\AppData\\Local\\Programs\\Python\\Python312\\Lib\\site-packages\\openai\\lib_old_api.py", line 33, in __load__
raise APIRemovedInV1(symbol=self.\_symbol)
openai.lib.\_old_api.APIRemovedInV1:

You tried to access openai.Model, but this is no longer supported in openai\>=1.0.0 - see the README at https://github.com/openai/openai-python for the API.

You can run `openai migrate` to automatically upgrade your codebase to use the 1.0.0 interface.

Alternatively, you can pin your installation to the old version, e.g. `pip install openai==0.28`

A detailed migration guide is available here: https://github.com/openai/openai-python/discussions/742

PS C:\\proyectoVS_Python\>

我做错了什么?为什么我无法访问 openAI,我已经尝试了几个密钥,相同的程序和安装过程与其他朋友配合得很好。使用 Pycharm 显示类似内容。我用了几个程序来尝试,但总是类似的反应!我没有找到解决方案或类似问题!我真的很困惑!请帮忙

python visual-studio-code 错误处理 配置 openai-api

评论


答:

2赞 Rok Benko 11/15/2023 #1

问题

您尝试使用的方法名称不适用于 OpenAI Python SDK 版本 1.0.0 或更高版本。

旧SDK(即版本)使用以下方法名称:0.28

client.Model.list

新的 SDK(即版本或更高版本)使用以下方法名称:1.0.0

client.models.list

注意:请小心,因为 API 区分大小写(即 client.Models.list 不适用于新的 SDK 版本)。

溶液

试试这个:

import os
from openai import OpenAI
client = OpenAI()
OpenAI.api_key = os.getenv('OPENAI_API_KEY')

client.models.list()

评论

1赞 José Alonso 11/15/2023
区分大小写是对的......快速打字对不起。我创建了一个 .env 文件来将密钥也存储在其他版本中,等等。但解决方案要归功于 line: client = OpenAI()。👍 谢谢🙏
0赞 Rok Benko 11/15/2023
@JoséAlonso 不客气。:)