Python代码中OpenAI身份验证失败问题求助
解决OpenAI API身份验证错误:No API key provided
问题根源
你代码里的os.getenv("sk-**********************************************9Q")用法错误。os.getenv()的作用是读取环境变量的值,参数应该是环境变量的名称(比如OPENAI_API_KEY),而不是直接传入API key字符串。这会导致openai.api_key被赋值为None,所以触发了"No API key provided"的错误。
两种修复方案
方案1:直接赋值API key(快速测试用)
把API key直接赋值给openai.api_key,不需要通过os.getenv:
import os import openai openai.organization = "org-CXk0SUzbnyzzCLcaSBCFAV64" openai.api_key = "sk-**********************************************9Q" openai.Model.list()
方案2:使用环境变量(推荐生产环境)
- 先在系统/终端中设置环境变量:
- Windows(命令提示符):
set OPENAI_API_KEY=sk-**********************************************9Q - Windows(PowerShell):
$env:OPENAI_API_KEY="sk-**********************************************9Q" - Linux/macOS(终端):
export OPENAI_API_KEY=sk-**********************************************9Q
- Windows(命令提示符):
- 代码中读取环境变量:
import os import openai openai.organization = "org-CXk0SUzbnyzzCLcaSBCFAV64" openai.api_key = os.getenv("OPENAI_API_KEY") openai.Model.list()
额外检查项
- 确认API key没有过期,且在OpenAI后台处于启用状态
- 检查组织ID是否正确,若不需要组织ID可以直接删除该行(个人账号通常不需要)
内容的提问来源于stack exchange,提问作者Arenosa
相关产品推荐
相关产品推荐

