使用Vertex AI text-embedding-004时遭遇403权限拒绝问题
解决Vertex AI text-embedding-004 403权限不足问题
针对你遇到的aiplatform.endpoints.predict权限被拒问题,按以下步骤排查:
确认账号权限配置
找到代码使用的身份(.env对应的服务账号,或gcloud登录的用户账号),进入Google Cloud控制台的IAM页面,检查该账号是否拥有包含aiplatform.endpoints.predict权限的角色:- 推荐直接添加
Vertex AI User(roles/aiplatform.user)角色,该角色包含调用模型预测的必要权限; - 也可单独添加
aiplatform.endpoints.predict权限到账号。
- 推荐直接添加
验证凭证加载正确性
- 检查.env文件中的环境变量名是否正确,比如
GOOGLE_APPLICATION_CREDENTIALS是否指向服务账号密钥文件的正确路径,路径是否存在拼写错误; - 排查是否有其他环境变量或代码逻辑覆盖了凭证配置,比如代码中是否硬编码了其他凭证,导致.env中的配置未生效;
- 可在代码中临时打印当前使用的凭证信息(如服务账号邮箱),确认是否为预期的身份。
- 检查.env文件中的环境变量名是否正确,比如
核对资源参数准确性
确认代码中指定的项目ID、区域(us-central1)、模型名称(text-embedding-004)完全正确,没有拼写错误或区域不匹配的情况。等待权限生效与重新验证
IAM权限变更可能存在1-2分钟的延迟,若刚添加完权限,等待片刻后再测试;
重新登录gcloud(gcloud auth login)并刷新凭证,或重启应用程序,确保新的权限配置被加载。排查凭证优先级冲突
Google客户端库的凭证加载优先级为:GOOGLE_APPLICATION_CREDENTIALS环境变量 > gcloud默认凭证 > 应用默认凭证。若之前使用gcloud登录的账号权限被撤销,而代码未明确指定使用.env中的服务账号,可能会自动切换到无权限的账号,需确保代码优先使用.env中的凭证配置。
内容的提问来源于stack exchange,提问作者Sirben
相关产品推荐
相关产品推荐

