我在尝试使用OpenAI API进行一些简单的Python函数测试时遇到了错误:
我有一个有效的API密钥,并且已经在使用它。
代码如下:
>>> import os>>> import openai>>> openai.api_key = os.getenv("我在这里放置了密钥")>>> response = openai.Completion.create(model="text-davinci-003", prompt="Say this is a test", temperature=0, max_tokens=7)
回答:
选项1:OpenAI API密钥未设置为环境变量
将这个…
openai.api_key = os.getenv('sk-xxxxxxxxxxxxxxxxxxxx')
…改为这个…
openai.api_key = 'sk-xxxxxxxxxxxxxxxxxxxx'
选项2:将OpenAI API密钥设置为环境变量(推荐)
有两种方法可以将OpenAI API密钥设置为环境变量:
- 使用
.env
文件(更简单,但别忘了创建.gitignore
文件)或 - 使用Windows环境变量。
方法1:使用.env
文件
将这个…
openai.api_key = os.getenv('sk-xxxxxxxxxxxxxxxxxxxx'
)
…改为这个…
openai.api_key = os.getenv('OPENAI_API_KEY')
另外,别忘了使用python-dotenv
包。你的最终Python文件应如下所示:
# main.pyimport osfrom dotenv import load_dotenvfrom openai import OpenAI# 从.env文件加载环境变量load_dotenv()# 使用环境变量中的API密钥初始化OpenAI客户端client = OpenAI( api_key=os.getenv("OPENAI_API_KEY"),)
重要的是,你需要创建一个.gitignore
文件,以免将.env
文件推送到你的GitHub/GitLab并泄露你的OpenAI API密钥!
# .gitignore.env
方法2:使用Windows环境变量(来源)
步骤1:打开系统属性并选择高级系统设置
步骤2:选择环境变量
步骤3:选择新建
步骤4:添加你的名称/密钥值对
变量名: OPENAI_API_KEY变量值: sk-xxxxxxxxxxxxxxxxxxxx
步骤5:重启你的电脑(重要!)
你的最终Python文件应如下所示:
# main.pyimport osfrom dotenv import load_dotenvfrom openai import OpenAI# 初始化OpenAI客户端# 它将自动使用通过Windows环境变量设置的OpenAI API密钥client = OpenAI()