配置 Gemini Code Assist 发布渠道

本文档介绍了如何使用 Google Cloud 控制台或 API 为项目配置 Gemini Code Assist 发布渠道。

我们通过不同的发布渠道发布 Gemini Code Assist 功能。您可以根据自己对功能可用性和稳定性之间平衡的考量,为每个 Google Cloud 项目设置单个发布渠道。 组织中在本地 IDE 中使用 Gemini Code Assist 的用户可以使用基于为项目配置的发布渠道的功能和模型。

您可以使用以下发布渠道:

  • 正式版。默认发布渠道。可让您使用正式版模型和功能。请注意,您也可以通过其他预览版注册机制来访问某些预览版功能,而无需选择加入预览版渠道。这些功能可在正式版渠道中使用,但仍受正式发布前产品条款的约束。
  • 预览。可让您访问 Gemini Code Assist 的某些预览版功能,并可选择性地提供反馈和使用情况数据,帮助 Google 改进未来版本。请注意,目前预览版发布渠道中没有独特的功能。

    为项目启用预览版发布渠道,即表示您代表客户同意,在该项目中使用 Gemini Code Assist 的所有情况都受Google Cloud 平台专用服务条款的非正式版产品条款的约束。 请勿将此渠道用于不适合与非正式版产品搭配使用的项目和资源。

以下部分介绍了设置或更改 Gemini Code Assist 发布渠道所需的步骤。

准备工作

所需的角色

如需获得创建用于控制发布渠道的设置和绑定的所需权限,请让您的管理员为您授予项目的 Gemini for Google Cloud Settings Admin (roles/cloudaicompanion.settingsAdmin) 角色。

如需查看所需的确切权限,请展开所需权限部分:

所需权限

  • cloudaicompanion.releaseChannelSettings.create
  • cloudaicompanion.releaseChannelSettings.delete
  • cloudaicompanion.releaseChannelSettings.get
  • cloudaicompanion.releaseChannelSettings.list
  • cloudaicompanion.releaseChannelSettings.update
  • cloudaicompanion.dataSharingWithGoogleSettings.create
  • 使用 API 配置发布渠道:
    • cloudaicompanion.settingBindings.releaseChannelSettingsCreate
    • cloudaicompanion.settingBindings.releaseChannelSettingsDelete
    • cloudaicompanion.settingBindings.releaseChannelSettingsGet
    • cloudaicompanion.settingBindings.releaseChannelSettingsList
    • cloudaicompanion.settingBindings.releaseChannelSettingsUpdate
    • cloudaicompanion.settingBindings.releaseChannelSettingsUse
  • 使用 API 配置提示和回答分享:
    • cloudaicompanion.settingBindings.dataSharingWithGoogleSettingsCreate
    • cloudaicompanion.settingBindings.dataSharingWithGoogleSettingsUse
  • 查看 Gemini for Google Cloud 管理员设置:
    • cloudaicompanion.instances.queryEffectiveSetting
    • cloudaicompanion.instances.queryEffectiveSettingBindings

配置 Gemini Code Assist 发布渠道

从下列选项中选择一项:

控制台

  1. 在 Google Cloud 控制台中,前往 Gemini 管理中心页面。

    前往 Gemini for Google Cloud

    系统会加载 Gemini for Google Cloud 页面。

  2. 点击导航菜单中的设置

    系统会加载设置页面。

  3. 本地 IDE 中 Gemini Code Assist 的发布渠道部分,选择最符合您需求的发布渠道:

    预览

    1. 选择预览
    2. 查看预览版发布渠道详情和可信测试人员计划条款,然后点击保存更改

    正式版

    1. 选择 GA
    2. 点击保存更改

API

  1. 创建发布渠道设置及其专用值:

    1. 获取身份验证令牌。您必须使用 gcloud CLI 身份验证进行身份验证才能获取该令牌:

      TOKEN=$(gcloud auth print-access-token)
      
    2. 创建设置。以下说明使用 cURL 调用 API 方法:

        curl -H "Authorization: Bearer $TOKEN" -H 'Content-Type: application/json' -d '{
            "release_channel": "RELEASE_CHANNEL",
          } ' -X POST "https://cloudaicompanion.googleapis.com/v1/projects/CONTAINER_PROJECT_NAME/locations/global/releaseChannelSettings?release_channel_setting_id=RC_SETTING_ID"
      

      替换以下内容:

      • RELEASE_CHANNEL:发布渠道,可以是 EXPERIMENTAL(预览版)或 STABLE(正式版)。
      • CONTAINER_PROJECT_NAME:存储绑定资源的项目的项目 ID。这是绑定的父级项目。
      • RC_SETTING_ID:唯一的设置名称,例如输入 rc1 作为 Release Channel 的名称。

      输出显示 releaseChannel 设置为 RELEASE_CHANNEL

      {
        "name": "projects/CONTAINER_PROJECT_NAME
      /locations/global/releaseChannelSettings/RC_SETTING_ID",
        "createTime": "2025-01-23T15:22:49.717166932Z",
        "updateTime": "2025-01-23T15:22:49.717166932Z",
        "releaseChannel": RELEASE_CHANNEL
      }
      
    3. 创建发布渠道设置绑定:

        curl \
        -H "Authorization: Bearer $TOKEN" \
        -H 'Content-Type: application/json' \
        -d '{
            "target": "projects/TARGET_PROJECT_NAME",
            "product": "GEMINI_CODE_ASSIST"
          }' \
        -X POST "https://cloudaicompanion.googleapis.com/v1/projects/CONTAINER_PROJECT_NAME/locations/global/releaseChannelSettings/RC_SETTING_ID/settingBindings?setting_binding_id=RC_BINDING_ID"
      

      替换以下内容:

      • TARGET_PROJECT_NAME:绑定的目标项目。这通常与容器项目相同。不过,您可以将某项设置绑定到多个项目,以便不必复制设置资源。
      • CONTAINER_PROJECT_NAME:存储绑定资源的项目的项目 ID。这是绑定的父级项目。
      • RC_SETTING_ID:与您创建设置时使用的 RC_SETTING_ID 相同,但附加了 b1。例如,对于 Release Channel,使用 rc1b1
      • RC_BINDING_ID:设置绑定的唯一名称,例如 rc_binding

      输出包含以下格式的操作元数据:

      {
        "name": "projects/CONTAINER_PROJECT_NAME/locations/global/operations/operation-RC_BINDING_OPERATION_ID",
        "metadata": {
          "@type": "type.googleapis.com/google.cloud.cloudaicompanion.v1.OperationMetadata",
          "createTime": "2025-01-23T15:27:50.076075570Z",
          "target": "projects/TARGET_PROJECT_NAME/locations/global/releaseChannelSettings/RC_SETTING_ID/settingBindings/RC_BINDING_ID",
          "verb": "create",
          "requestedCancellation": false,
          "apiVersion": "v1"
        },
        "done": false
      }
      
    4. 可选:检查发布渠道设置绑定创建的状态:

      curl -H "Authorization: Bearer $TOKEN" \
      https://cloudaicompanion.googleapis.com/v1/projects/CONTAINER_PROJECT_NAME/locations/global/operations/operation-RC_BINDING_OPERATION_ID
      

      替换以下内容:

      • CONTAINER_PROJECT_NAME:存储绑定资源的项目的项目 ID。这是绑定的父级项目。
      • RC_BINDING_OPERATION_ID:上一步中响应中提供的发布渠道设置绑定创建操作 ID。
  2. 可选:创建提示和回答分享设置及其专用值:

    1. 获取令牌:

      TOKEN=$(gcloud auth print-access-token)
      
    2. 创建设置:

      curl -H "Authorization: Bearer $TOKEN" -H 'Content-Type: application/json' -d '{
          "enable_preview_data_sharing": true,
        } ' -X POST "https://cloudaicompanion.googleapis.com/v1/projects/CONTAINER_PROJECT_NAME/locations/global/dataSharingWithGoogleSettings?data_sharing_with_google_setting_id=DSWG_SETTING_ID"
      

      替换以下内容:

      • CONTAINER_PROJECT_NAME:父项目 ID
      • DSWG_SETTING_ID:唯一的设置名称,例如输入 dswg1 作为 Data Sharing with Google 的名称

      输出显示 enablePreviewDataSharing 设置为 true

      {
        "name": "projects/CONTAINER_PROJECT_NAME
      /locations/global/dataSharingWithGoogleSettings/DSWG_SETTING_ID",
        "createTime": "2025-01-23T15:22:49.717166932Z",
        "updateTime": "2025-01-23T15:22:49.717166932Z",
        "enablePreviewDataSharing": true
      }
      
    3. 创建提示和回答设置绑定:

        curl \
        -H "Authorization: Bearer $TOKEN" \
        -H 'Content-Type: application/json' \
        -d '{
            "target": "projects/TARGET_PROJECT_NAME",
            "product": "GEMINI_CODE_ASSIST"
          }' \
        -X POST "https://cloudaicompanion.googleapis.com/v1/projects/CONTAINER_PROJECT_NAME/locations/global/dataSharingWithGoogleSettings/DSWG_SETTING_ID/settingBindings?setting_binding_id=DSWG_BINDING_ID"
      

      替换以下内容:

      • TARGET_PROJECT_NAME:应应用该设置的目标项目。
      • CONTAINER_PROJECT_NAME:父项目 ID。
      • DSWG_SETTING_ID:与您创建设置时使用的 DSWG_SETTING_ID 相同,但附加了 b1。例如,对于 Data Sharing with Google,使用 dswg1b1
      • DSWG_BINDING_ID:设置绑定的唯一名称,例如 dswg_binding

      输出包含以下格式的操作元数据:

      {
      "name": "projects/CONTAINER_PROJECT_NAME/locations/global/operations/operation-DSWG_BINDING_OPERATION_ID",
      "metadata": {
        "@type": "type.googleapis.com/google.cloud.cloudaicompanion.v1.OperationMetadata",
        "createTime": "2025-01-23T15:27:50.076075570Z",
        "target": "projects/TARGET_PROJECT_NAME/locations/global/dataSharingWithGoogleSettings/DSWG_SETTING_ID/settingBindings/DSWG_BINDING_ID",
        "verb": "create",
        "requestedCancellation": false,
        "apiVersion": "v1"
      },
      "done": false
      }
      
    4. 可选:检查提示和回答设置绑定创建的状态:

      curl -H "Authorization: Bearer $TOKEN" \
      https://cloudaicompanion.googleapis.com/v1/projects/CONTAINER_PROJECT_NAME/locations/global/operations/operation-DSWG_BINDING_OPERATION_ID
      

      替换以下内容:

      • CONTAINER_PROJECT_NAME:存储绑定资源的项目的项目 ID。这是绑定的父级项目。
      • DSWG_BINDING_OPERATION_ID:上一步的响应中提供的提示和响应设置绑定创建操作 ID。

后续步骤