设置 Gemini Code Assist

在您可以使用 Gemini Code Assist 之前,您的团队需要执行本文档中所述的设置步骤:

  1. 订阅 Gemini Code Assist

  2. 为贵组织中的个别用户分配许可

  3. 在 Google Cloud 项目中启用 Gemini for Google Cloud API

  4. 在 Google Cloud 项目中授予 Identity and Access Management (IAM) 角色

  5. 贵组织的用户安装 Gemini Code Assist 插件,以便在 IDE 中使用 Gemini Code Assist。

购买 Gemini Code Assist 订阅

如需查看每个版本提供的功能列表,请参阅支持的功能

在 2025 年 3 月 31 日之前,Gemini Code Assist Enterprise 的价格为每位用户每月 19 美元(承诺使用期限为 12 个月)。请与我们的销售团队联系,以享受此促销优惠。

如果您与 Google Cloud 签订了现有合约,请先与我们的销售团队联系,然后再购买订阅。

注意:您必须拥有 consumerprocurement.orders.place Identity and Access Management (IAM) 权限,才能购买 Gemini 订阅。consumerprocurement.orders.place 权限包含在 roles/billing.admin IAM 角色roles/consumerprocurement.orderAdmin 角色中。或者,您也可以为自定义角色添加此权限。
  1. 前往 Gemini for Google Cloud 页面。

    前往 Gemini for Google Cloud

    系统随即会打开 Gemini for Google Cloud 页面。

  2. 选择获取 Gemini Code Assist。如果您的项目已安装 Gemini Code Assist,则此文本会显示 Manage Gemini Code Assist

    系统随即会打开获取 Gemini Code Assist 订阅页面。

  3. Select Gemini Code Assist subscription Edition(选择 Gemini Code Assist 订阅版本)中,选择 Gemini Code Assist 版本。选择比较 Gemini Code Assist 版本,查看每个版本提供的功能的详细列表。

    然后,选择继续

  4. 配置订阅中,填写相应字段以配置订阅,包括以下字段:

    • 订阅名称。
    • 订阅中的许可数量。请注意,如果您购买的是企业版,则必须购买至少 10 个许可。
    • 订阅期(按月或按年)。包年订阅可享受折扣价,且采用按月付款方式,而不是一次性付款。
    • 在包月或包年合约期结束后自动续订。自动续订可确保您的订阅和许可保持有效。 如果订阅未自动续订,则会在当前期限结束时终止,届时您需要重新完成购买流程并重新分配许可。
  5. 如要确认订阅,请选择继续

  6. 如果您同意这些条款,请选择我同意接受此购买的条款,然后选择确认订阅

  7. 选择下一步:管理 Gemini 许可分配

Gemini Code Assist 的订阅现已购买。现在,您需要管理贵组织中的 Gemini 许可分配。

分配许可

在使用 Gemini Code Assist 之前,贵组织中的每个用户都需要获得许可。

控制台

如需在 Google Cloud 控制台中向个别用户分配 Gemini 许可,您必须拥有以下权限:

  • billing.accounts.get
  • consumerprocurement.orders.get
  • consumerprocurement.licensePools.get
  • consumerprocurement.licensePools.enumerateLicensedUsers
  • consumerprocurement.licensePools.assign
  1. 前往 Gemini 的管理页面。

    前往 Gemini 管理中心

  2. 选择要更改的订阅,然后点击修改订阅

  3. 点击分配许可。系统会显示用户选择对话框。如需搜索特定用户,请在搜索框中输入其姓名。

  4. 从列表中选择一个或多个用户,然后点击下一步

  5. 选择您要为其分配许可的 Gemini 服务。

  6. 点击分配许可

API

如需使用 API 分配 Gemini 许可,您必须拥有 consumerprocurement.licensePools.assign 权限。

HTTP 方法:POST

网址:https://cloudcommerceconsumerprocurement.googleapis.com/v1/billingAccounts/BILLING_ACCOUNT_ID/orders/ORDER_ID/licensePool:assign/

替换以下内容:

  • BILLING_ACCOUNT_ID:结算账号 ID
  • ORDER_ID:IAM 政策

请求正文:

    {
        "usernames": [
                  "dana@example.com",
                  "lee@example.com"
        ]
    }

输出类似于以下内容:

{}

如果许可已成功分配,则响应为空。

现在,您需要在与此结算账号关联的一个或多个项目中启用 Gemini for Google Cloud API。在您至少在一个项目中启用 Gemini Code Assist 之前,用户不会看到 Gemini Code Assist。

在 Google Cloud 项目中启用 Gemini for Google Cloud API

本部分介绍了在 Google Cloud 项目中启用 Gemini for Google Cloud API 所需的步骤。

控制台

  1. 如需启用 Gemini for Google Cloud API,请前往 Gemini for Google Cloud 页面。

    前往 Gemini for Google Cloud

  2. 在项目选择器中,选择一个项目。

  3. 点击启用

    页面会更新,并显示状态为已启用。现在,具有所需 IAM 角色的所有用户都可以在所选 Google Cloud 项目中使用 Gemini。

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

  2. 在项目选择器菜单中,选择一个项目。

  3. 使用 gcloud services enable 命令为 Gemini 启用 Gemini for Google Cloud API:

    gcloud services enable cloudaicompanion.googleapis.com
    

    如果您想在其他 Google Cloud 项目中启用 Gemini for Google Cloud API,请添加 --project 参数:

    gcloud services enable cloudaicompanion.googleapis.com --project PROJECT_ID
    

    PROJECT_ID 替换为您的 Google Cloud 项目 ID。

    输出类似于以下内容:

    Waiting for async operation operations/acf.2e2fcfce-8327-4984-9040-a67777082687 to complete...
    Operation finished successfully.
    

现在,具有所需 IAM 角色的所有用户都可以在指定的 Google Cloud 项目中使用 Gemini for Google Cloud。

面向防火墙后面用户的必需 API

除了启用 Gemini for Google Cloud API 之外,在防火墙后面的用户可能还需要启用以下 API:

  • oauth2.googleapis.com:用于登录 Google Cloud。
  • serviceusage.googleapis.com:用于检查用户的 Gemini Code Assist 项目是否配置正确。
  • cloudaicompanion.googleapis.com:适用于 Google Cloud 的主要 Gemini API 端点。
  • cloudcode-pa.googleapis.com:提供与 IDE 相关功能的内部 API。
  • cloudresourcemanager.googleapis.com:在 IDE 中用于项目选择器。如果项目已在 settings.json 文件中明确配置,则可能不需要 Resource Manager API。
  • people.googleapis.com:提供对个人资料和联系人相关信息的访问权限。
  • firebaselogging-pa.googleapis.com:一个内部 API,用于发送产品遥测数据,包括有关用户是否接受了建议的事件。
  • feedback-pa.googleapis.com:用于提交 IDE 内反馈的内部 API。
  • apihub.googleapis.com:供 Cloud Code API 浏览器功能使用。

可选:配置 VPC Service Controls

如果贵组织有服务边界,则必须将以下资源添加到边界:

  • Gemini for Google Cloud API
  • Gemini Code Assist API

如果您是在服务边界之外使用 Gemini Code Assist,则还需要修改入站政策,以允许访问这些服务。

如需了解详情,请参阅为 Gemini 配置 VPC Service Controls

在 Google Cloud 项目中授予 IAM 角色

本部分介绍了向用户授予 Gemini for Google Cloud User 和 Service Usage Consumer IAM 角色所需的步骤。

控制台

  1. 如需授予使用 Gemini 所需的 IAM 角色,请前往 IAM 和管理页面。

    进入“IAM 和管理”

  2. 主账号列中,找到要向其授予 Gemini 访问权限的主账号,然后点击该行中的 修改主账号

  3. 修改权限窗格中,点击  添加其他角色

  4. 选择角色中,选择 Gemini for Google Cloud User

  5. 点击添加其他角色,然后选择 Service Usage Consumer

  6. 点击保存

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

  2. 在项目选择器菜单中,选择一个项目。

  3. 授予 Gemini for Google Cloud User 角色:

    gcloud projects add-iam-policy-binding  PROJECT_ID \
        --member=PRINCIPAL --role=roles/cloudaicompanion.user
    

    PRINCIPAL 替换为主账号的标识符。标识符的格式为 user|group|serviceAccount:emaildomain:domain,例如 user:cloudysanfrancisco@gmail.comgroup:admins@example.comserviceAccount:test123@example.domain.comdomain:example.domain.com

    输出是一个政策绑定列表,其中包含以下内容:

    - members:
      - user:PRINCIPAL
      role: roles/cloudaicompanion.user
    
  4. 授予 Service Usage Consumer 角色:

    gcloud projects add-iam-policy-binding  PROJECT_ID \
        --member=PRINCIPAL --role=roles/serviceusage.serviceUsageConsumer
    

    输出是一个政策绑定列表,其中包含以下内容:

    - members:
      - user:PRINCIPAL
      role: roles/serviceusage.serviceUsageConsumer
    

如需了解详情,请参阅授予单个角色和 gcloud projects add-iam-policy-binding

所有被授予这些角色的用户都可以在指定项目的 Google Cloud 控制台中访问 Gemini for Google Cloud 功能。如需了解详情,请参阅 Gemini for Google Cloud 概览

在 IDE 中安装 Gemini Code Assist 插件

贵组织的用户在其首选 IDE 中安装 Gemini Code Assist。如需了解详情,请参阅以下内容:

高级设置任务

您可以执行以下任一操作,而不是使用 Google Cloud 控制台或 gcloud CLI 授予预定义的 IAM 角色:

  • 使用 IAM REST APIIAM 客户端库授予角色。

    如果您使用这些接口,请使用完全限定的角色名称:

    • roles/cloudaicompanion.user
    • roles/serviceusage.serviceUsageConsumer

    如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限

  • 创建和授予自定义角色。

    您创建的任何自定义角色都需要具备以下权限,您才能访问 Gemini Code Assist:

    • cloudaicompanion.companions.generateChat
    • cloudaicompanion.companions.generateCode
    • cloudaicompanion.instances.completeCode
    • cloudaicompanion.instances.completeTask
    • cloudaicompanion.instances.generateCode
    • cloudaicompanion.instances.generateText
    • serviceusage.services.enable
  • 分配和管理许可。

    您创建的任何自定义角色都需要具备以下权限,您才能访问 Gemini Code Assist:

    • consumerprocurement.orders.get
    • consumerprocurement.orders.licensePools..*
    • consumerprocurement.orders.licensePools.update
    • consumerprocurement.orders.licensePools.get
    • consumerprocurement.orders.licensePools.assign
    • consumerprocurement.orders.licensePools.unassign
    • consumerprocurement.orders.licensePools.enumerateLicensedUsers

另请注意,如需上述任何权限正常运行,您需要在分配各项权限的同一 Google Cloud 项目中启用 Gemini for Google Cloud API。

后续步骤