使用Google Bard/Gemini API时遇DefaultCredentialsError问题求助
解决Google Generative AI(PaLM/Gemini)API的DefaultCredentialsError错误
修复步骤
1. 升级Google Generative AI库
旧版本库可能存在认证逻辑缺陷,先升级到最新版:
pip install --upgrade google-generativeai
2. 验证API密钥加载
- 硬编码密钥测试:直接将API密钥写入代码,排除环境变量问题:
运行代码,若仍报错,说明问题不在密钥加载环节。palm.configure(api_key="你的Google AI Studio API密钥") - 检查环境变量读取:添加打印语句确认环境变量是否生效:
若输出为空,重新设置环境变量:import os print("Loaded API Key:", os.environ.get('GOOGLE_API_KEY')) palm.configure(api_key=os.environ.get('GOOGLE_API_KEY'))- Windows Cmd:
set GOOGLE_API_KEY=你的密钥 - Windows PowerShell:
$env:GOOGLE_API_KEY="你的密钥" - Linux/macOS:
export GOOGLE_API_KEY="你的密钥"
- Windows Cmd:
3. 清除冲突的认证环境变量
如果环境中设置了GOOGLE_APPLICATION_CREDENTIALS(用于Google Cloud服务账号),会触发默认凭证查找逻辑,导致冲突:
- Windows:
set GOOGLE_APPLICATION_CREDENTIALS= - Linux/macOS:
unset GOOGLE_APPLICATION_CREDENTIALS
4. 显式配置客户端选项(极端场景)
若上述方法无效,尝试通过客户端选项显式指定API密钥:
import google.generativeai as palm from google.api_core.client_options import ClientOptions client_options = ClientOptions(api_key="你的API密钥") palm.configure(client_options=client_options)
关键注意事项
- API密钥需从Google AI Studio获取,而非Google Cloud服务账号的JSON文件,两者用途不同。
text-bison-001是PaLM 2文本模型,若切换到Gemini模型,需将模型名称改为gemini-pro或gemini-pro-vision。
内容的提问来源于stack exchange,提问作者Zach Fornero
相关产品推荐
相关产品推荐

