python - 设置 OpenAI API 访问时为 "Malformed API key in .env"

标签 python python-os openai-api

我正在尝试使用 OpenAI 的 API 来处理他们提供的一些示例。但是,当我加载我的 API key 时,出现错误。我创建了一个“.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 key 格式不正确。我也可以删除第 3 行,我得到了同样的错误,它是格式错误的,但我将它直接复制到网站上的 .env 文件中。另外,如果我直接在 Python 中设置 key ,它似乎工作得很好:

openai.api_key = "XYZ-123"

但为了安全起见,我宁愿在我的 Python 代码中看不到 key 。关于如何解决这个问题有什么建议吗?

最佳答案

我建议使用 dotenv为此目的:

pip install python-dotenv

使用示例:

import dotenv

config = dotenv.dotenv_values(".env")
openai.api_key = config['OPENAI_API_KEY']

它非常灵活,无论何时将 secret 存储在 .env 文件中,它都能很好地工作。不要忘记将它们添加到 .gitignore 或使用 .env.local(默认忽略)!

关于python - 设置 OpenAI API 访问时为 "Malformed API key in .env",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73859621/

相关文章:

python - 重写mysql中的日期时间

python - matplotlib 股票代码 FuncFormatter

python - 如何使用 Python 找出我的微调模型?

c# - OpenAI ChatGPT (GPT-3.5) API 错误 400 : "Bad Request" when adding multiple questions

Python 图像库 - 文本渲染

python - 值错误: Cannot Convert to Excel

python - Python错误处理无法正常工作

python - 如果文件名是字符串列表的子字符串,则使用父字符串重命名文件

Python os.path.join 错误地附加路径

php - OpenAI ChatGPT (GPT-3.5) API : How do I extract the message content from the response?