【发布时间】:2023-01-03 16:53:22
【问题描述】:
我正在尝试使用 OpenAI 的 API 来处理他们拥有的一些示例。但是,当我加载我的 API 密钥时,出现错误。我创建了一个“.env”文件并做了:
OPENAI_API_KEY=XYZ-123
然后在 Python 中我有以下内容:
import os
import openai
openai.api_key_path = ".env"
openai.api_key = os.getenv("OPENAI_API_KEY")
print(openai.Model.list())
每次它告诉我我的 API 密钥格式错误。我也可以删除第 3 行,我得到了同样的错误,它是格式错误的,但我将它直接复制到网站上的 .env 文件中。另外,如果我直接在 Python 中设置密钥,它似乎工作得很好:
openai.api_key = "XYZ-123"
但为了安全起见,我宁愿在我的 Python 代码中看不到密钥。关于如何解决这个问题的任何建议?
【问题讨论】:
-
1)相关文件? 2)
"./.env"? 3) 将 env 值用引号引起来? -
文档在这里:beta.openai.com/docs/api-reference/authentication 可悲的是,这些建议都没有奏效。
-
当我在那个页面上搜索
api_key_path时,什么也没有出现。也许链接到相关的源代码? -
也许我们可以只依赖于使用
os.getenv设置api_key而不是api_key_path(删除它),正如文档所建议的那样。 1)您是否通过打印或其他方式验证它正在正确读取环境变量? 2) 你试过先设置openai.organization = "YOUR_ORG_ID"再设置openai.api_key吗? 3)你能分享更多关于错误本身的信息吗?