You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AI Platform部署自定义预测版本时指定服务账号被忽略求助

解决AI Platform跨项目GCS桶部署模型的权限问题

看起来你踩了一个很容易混淆的AI Platform权限误区——你指定的serviceAccount字段是模型运行预测时使用的身份,但部署阶段拉取模型文件时,AI Platform会用项目默认的Cloud ML服务账号(就是报错里的service-******@cloud-ml.google.com.iam.gserviceaccount.com),而不是你自定义的那个账号,这就是为什么你指定了服务账号但还是报错的核心原因。

下面给你两种可行的解决方案:

方案一:给默认Cloud ML服务账号添加GCS桶读取权限

这是最直接的解决方式,步骤如下:

  • 登录GCP控制台,切换到桶所在的项目gcp-project-2
  • 进入「Cloud Storage > 浏览器」,找到目标桶gs://[bucket-gcp-project-2]
  • 点击「权限」标签,点击「添加」按钮
  • 在「新成员」输入框中填入报错里的那个默认服务账号:service-******@cloud-ml.google.com.iam.gserviceaccount.com
  • 选择角色:存储 > 存储对象查看器(Storage Object Viewer)(这个权限足够让它读取桶里的模型文件)
  • 保存配置,等待1-2分钟让权限生效后重新部署

方案二:使用自定义服务账号完成部署(进阶)

如果你不想给默认账号授权,可以通过配置让AI Platform在部署阶段使用你的自定义服务账号,需要两步配置:

  1. 给自定义服务账号添加桶权限:在gcp-project-2的GCS桶权限中,添加你的自定义账号my-service-account@[gcp-project-1].iam.gserviceaccount.com,同样授予存储对象查看器权限
  2. 允许默认账号扮演自定义账号:在gcp-project-1中,找到默认的Cloud ML服务账号(就是报错里的那个),给它添加服务账号令牌创建者(Service Account Token Creator)角色,这个权限允许它临时扮演你的自定义账号去拉取模型文件
  3. 重新提交部署请求,确保serviceAccount字段正确填写你的自定义账号

额外验证步骤

可以用gsutil命令确认权限是否正确配置:

gsutil iam get gs://[bucket-gcp-project-2]

查看输出的权限列表,确认对应的服务账号已经被添加并拥有正确的角色。

内容的提问来源于stack exchange,提问作者klesouza

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.14 08:41:42