OpenAI Python库调用model.list()时出现API密钥认证错误
解决OpenAI Python库调用model.list()的认证错误
调用OpenAI Python库的model.list()接口时,因API密钥配置不正确触发认证错误,报错提示未提供API密钥。
用户代码示例
import openai openai.api_key = "your_api_key" models = openai.Model.list() print(models.data[0].id) chat_completion = openai.Completion.create( model="gpt-3.5-turbo", messages=[{"role": "user", "content": "Hello world"}] ) print(chat_completion.choices[0].message.content)
错误信息(翻译后)
回溯(最近的调用最后): 文件 "C:\Users\USER\gpt1.py", 第6行, 在 <module>中 models = openai.Model.list() 文件 "C:\Python311\Lib\site-packages\openai\api_resources\abstract\listable_api_resource.py", 第52行, 在 list中 requestor, url = cls.__prepare_list_requestor( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 文件 "C:\Python311\Lib\site-packages\openai\api_resources\abstract\listable_api_resource.py", 第20行, 在 __prepare_list_requestor中 requestor = api_requestor.APIRequestor( ^^^^^^^^^^^^^^^^^^^^^^^^^^^ 文件 "C:\Python311\Lib\site-packages\openai\api_requestor.py", 第138行, 在 __init__中 self.api_key = key or util.default_api_key() ^^^^^^^^^^^^^^^^^^^^^^ 文件 "C:\Python311\Lib\site-packages\openai\util.py", 第186行, 在 default_api_key中 raise openai.error.AuthenticationError( openai.error.AuthenticationError: 未提供API密钥。你可以在代码中使用`openai.api_key = <API-KEY>`设置,也可以设置环境变量`OPENAI_API_KEY=<API-KEY>`。如果密钥存储在文件中,可通过`openai.api_key_path = <PATH>`指定文件路径。API密钥可在OpenAI网页界面生成。
解决方法
- 替换占位密钥:将代码中的
"your_api_key"替换为你在OpenAI平台生成的真实API密钥,确保密钥完整且无拼写错误 - 检查密钥有效性:确认密钥未过期、未被禁用,且拥有调用
model.list()接口的权限 - 修正代码额外问题:代码中使用
openai.Completion.create调用gpt-3.5-turbo是错误的,该模型属于聊天模型,应使用openai.ChatCompletion.create
内容的提问来源于stack exchange,提问作者Jerry Johnson
相关产品推荐
相关产品推荐

