【问题标题】:GCP Vertex AI Training Custom Job : User does not have bigquery.jobs.create permissionGCP Vertex AI 训练自定义作业:用户没有 bigquery.jobs.create 权限
【发布时间】:2021-08-27 22:04:45
【问题描述】:

我正在努力从 Google Cloud Platform 的 Vertex AI 训练自定义作业中使用 Bigquery python 客户端执行查询。

我已经构建了一个包含此 python 代码的 Docker 映像,然后我已将其推送到 Container Registry (eu.gcr.io)

我正在使用这个命令来部署

      gcloud beta ai custom-jobs create --region=europe-west1 --display-name="$job_name" \
        --config=config_custom_container.yaml \
        --worker-pool-spec=machine-type=n1-standard-4,replica-count=1,container-image-uri="$docker_img_path" \
        --args="${model_type},${env},${now}"  

我什至尝试使用选项 --service-account 来指定具有管理员 Bigquery 角色的服务帐户,但没有成功。

根据这个链接 https://cloud.google.com/vertex-ai/docs/general/access-control?hl=th#granting_service_agents_access_to_other_resources

AI Platform Custom Code Service Agent (Vertex AI) 的 Google 管理的服务帐户已经有权访问 BigQuery,所以我不明白为什么我的工作会因此错误而失败

google.api_core.exceptions.Forbidden: 403 POST https://bigquery.googleapis.com/bigquery/v2/projects/*******/jobs?prettyPrint=false: 
Access Denied: Project *******:
User does not have bigquery.jobs.create permission in project *******.

我已将 id 替换为 *******


编辑: 我已经尝试了几个配置,我最后一个配置 YAML 文件只包含这个

baseOutputDirectory:
  outputUriPrefix:

与 --service-account 选项不同,使用字段serviceAccount 似乎不会编辑实际配置


2021 年 6 月 14 日编辑:快速修复

就像@Ricco.D 所说的

尝试在您的 bigquery 代码中明确定义 project_id 还没有这样做。

bigquery.Client(project=[your-project])

解决了我的问题。我仍然不知道原因。

【问题讨论】:

  • 您是否在 yaml 文件中定义了要使用的服务帐户?如果可能,您可以编辑您的帖子并显示您的 yaml 吗?
  • 使用字段 serviceAccount 似乎不会编辑实际配置,不像 --service-account 选项我添加了我的配置文件
  • 您使用--service-account 尝试过哪些服务帐户?比如自定义服务账号、顶点ai默认服务账号等
  • 我使用了自定义服务帐号。我猜如果我不明确提及它,它将使用 Google 管理的 AI Platform 服务帐户
  • 您使用的 BigQuery 数据集是否是在您调用自定义作业的同一项目中创建的?要解决问题,您可以尝试将vertex service agent 的角色更改为 Editor 并检查它是否有效。

标签: google-cloud-platform google-cloud-ml gcp-ai-platform-training


【解决方案1】:

要解决此问题,需要在 Bigquery 代码中明确指定项目 ID。

例子:

bigquery.Client(project=[your-project], credentials=credentials)

【讨论】:

    猜你喜欢
    • 2022-10-15
    • 2022-10-06
    • 2019-07-25
    • 1970-01-01
    • 2020-07-18
    • 2021-08-08
    • 1970-01-01
    • 1970-01-01
    • 2022-10-06
    相关资源
    最近更新 更多