借助 Agent Registry,您可以检查、更新和管理独立技能,从而控制智能体可以使用哪些技能版本和生命周期状态。注册独立技能后,您可以查看其详细信息、更新其说明或默认修订版本、转换其生命周期状态,或将其从智能体注册表中删除。您还可以列出和查看 Google 管理的 skill,这些 skill 在您设置代理注册表后即可使用。
准备工作
- 设置 Agent Registry。
如需使用本文档中的 Google Cloud CLI 命令,请设置 gcloud CLI 环境。
所需的角色
如需获得在 Agent Registry 中管理技能所需的权限,请让管理员向您授予已启用 Agent Registry 的治理项目的以下 IAM 角色:
-
列出和查看技能:Agent Registry API Viewer (
roles/agentregistry.viewer) -
更新、转换生命周期状态和删除技能:Agent Registry User (
roles/agentregistry.user) -
管理技能和其他 Agent Registry 资源:Agent Registry API Editor (
roles/agentregistry.editor)
如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限。
其他 Agent Registry 角色也可能包含查看、更新和删除技能所需的权限。如需了解详情,请参阅 Agent Registry 角色和权限。
列出和查看技能
您可以浏览所有已注册的技能,也可以搜索特定功能:
控制台
- 在 Google Cloud 控制台中,前往 Agent Registry 页面:
- 选择技能标签页。
- 查看技能列表。您可以使用位置或状态菜单过滤显示内容。
- 点击任意技能名称即可打开其技能详情页面,其中会显示名称、说明、有效版本、技能标识符、上次更新时间、自定义元数据和修订历史记录。
gcloud
如需列出某个位置中的所有技能,请使用 gcloud alpha agent-registry skills list 命令:
gcloud alpha agent-registry skills list \
--project=PROJECT_ID \
--location=LOCATION
如需查看特定技能的详细信息,请使用 gcloud alpha agent-registry skills describe 命令:
gcloud alpha agent-registry skills describe SKILL_ID \
--project=PROJECT_ID \
--location=LOCATION
替换以下内容:
SKILL_ID:您要查看的技能的 ID。 对于手动注册的技能,请添加private-前缀,例如private-my-skill。PROJECT_ID:项目 ID。LOCATION:注册表位置。
REST
如需检索所有技能的列表,请发送 GET 请求:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://agentregistry.googleapis.com/v1alpha/projects/PROJECT_ID/locations/LOCATION/skills"
如需检索单个技能容器,请发送 GET 请求:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://agentregistry.googleapis.com/v1alpha/projects/PROJECT_ID/locations/LOCATION/skills/SKILL_ID"
替换以下内容:
PROJECT_ID:项目 ID。LOCATION:注册表位置。SKILL_ID:您要查看的技能的 ID。 对于手动注册的技能,请添加private-前缀,例如private-my-skill。
更新技能元数据或默认修订版本
您可以修改技能的显示名称、说明,或手动更改默认修订版本指针以部署其他版本。如需创建新的技能修订版本,请参阅管理技能修订版本。
如需更新技能元数据或特定技能的默认修订版本,请按以下步骤操作:
控制台
- 在 Google Cloud 控制台中,前往 Agent Registry 页面:
- 选择技能标签页。
- 查看技能列表。您可以使用位置或状态菜单过滤显示内容。
- 点击任意技能名称即可打开其技能详情页面,其中会显示名称、说明、有效版本、技能标识符、上次更新时间、自定义元数据和修订历史记录。
从以下选项中进行选择:
更新技能元数据:
- 点击 修改。
- 在修改技能面板中,更新技能的显示名称或说明。
- 点击保存。
更新默认修订版本:
- 找到版本记录表格。
- 找到要设为有效版本的修订版本。
- 在操作列中,点击启用版本。
gcloud
如需更新技能的元数据,请使用
gcloud alpha agent-registry skills update命令:gcloud alpha agent-registry skills update SKILL_ID \ --project=PROJECT_ID \ --location=LOCATION \ --display-name="DISPLAY_NAME" \ --description="DESCRIPTION"如需更新技能的默认服务修订版本,请使用
gcloud alpha agent-registry skills update命令并指定目标修订版本的资源名称:gcloud alpha agent-registry skills update SKILL_ID \ --project=PROJECT_ID \ --location=LOCATION \ --default-revision="projects/PROJECT_ID/locations/LOCATION/skills/SKILL_ID/revisions/REVISION_ID"
替换以下内容:
SKILL_ID:要更新的技能的 ID。 对于手动注册的技能,请添加private-前缀,例如private-my-skill。PROJECT_ID:项目 ID。LOCATION:注册表位置。DISPLAY_NAME:更新后的显示名称。DESCRIPTION:更新后的说明。REVISION_ID:要设为默认版本的技能修订版本的 ID。
REST
发送 PATCH 请求,指定要更新的字段:
curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-d '{
"displayName": "DISPLAY_NAME",
"description": "DESCRIPTION",
"defaultRevision": "projects/PROJECT_ID/locations/LOCATION/skills/SKILL_ID/revisions/REVISION_ID"
}' \
"https://agentregistry.googleapis.com/v1alpha/projects/PROJECT_ID/locations/LOCATION/skills/SKILL_ID?updateMask=displayName,description,defaultRevision"
替换以下内容:
DISPLAY_NAME:技能的更新显示名称。DESCRIPTION:技能的更新说明。PROJECT_ID:项目 ID。LOCATION:注册表位置。SKILL_ID:要更新的技能的 ID。 对于手动注册的技能,请添加private-前缀,例如private-my-skill。REVISION_ID:要激活的技能修订版本的 ID。
管理技能生命周期状态
如需控制技能在运行时的解析方式,您可以更改技能的目标状态:
- 有效:技能已提供且完全可解析。如需将技能设置为有效,需要将其
defaultRevision字段指向有效的技能修订版本。 - 已停用:创建技能时的默认初始状态。技能不会在运行时提供,技能解析会立即失败,并且载荷下载会被阻止。如果技能的
defaultRevision指针被清除或其默认修订版本被删除,技能也会处于已停用状态。与已停用状态不同,您可以通过设置有效的defaultRevision并将其目标状态更新为有效来启用已停用的技能。 - 已弃用:技能仍可加载和下载,但表示该技能将被停用。
- 已停用:技能已永久停用,不再提供,并且无法还原为有效或任何其他状态。技能只有在弃用后才能停用。在停用技能之前,请留出足够的时间进行迁移。由于此状态是最终状态,因此请谨慎使用。
如需转换技能的生命周期状态,请执行以下操作:
控制台
- 在 Google Cloud 控制台中,前往 Agent Registry 页面:
- 选择技能标签页。
- 查看技能列表。您可以使用位置或状态菜单过滤显示内容。
- 点击任意技能名称即可打开其技能详情页面,其中会显示名称、说明、有效版本、技能标识符、上次更新时间、自定义元数据和修订历史记录。
- 使用状态控制按钮可转换目标状态。页面上显示的按钮取决于技能的当前状态,例如启用、停用、弃用或退役。
gcloud
使用 gcloud alpha agent-registry skills update 命令和 --target-state 标志更新技能容器:
gcloud alpha agent-registry skills update SKILL_ID \
--project=PROJECT_ID \
--location=LOCATION \
--target-state=DISABLED
替换以下内容:
SKILL_ID:要更新的技能的 ID。 对于手动注册的技能,请添加private-前缀,例如private-my-skill。PROJECT_ID:项目 ID。LOCATION:注册表位置。
目标状态的允许值包括:
ACTIVEDISABLEDDEPRECATEDDECOMMISSIONED
REST
发送 PATCH 请求,在正文和更新掩码中指定 targetState:
curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-d '{
"targetState": "TARGET_STATE_DISABLED"
}' \
"https://agentregistry.googleapis.com/v1alpha/projects/PROJECT_ID/locations/LOCATION/skills/SKILL_ID?updateMask=targetState"
替换以下内容:
PROJECT_ID:项目 ID。LOCATION:注册表位置。SKILL_ID:要更新的技能的 ID。 对于手动注册的技能,请添加private-前缀,例如private-my-skill。
目标状态的允许值包括:
TARGET_STATE_ACTIVETARGET_STATE_DISABLEDTARGET_STATE_DEPRECATEDTARGET_STATE_DECOMMISSIONED
删除技能
删除技能容器会永久删除 Skill 资源和所有关联的不可变 SkillRevision 资源。尝试解析已删除的技能标识符的代理会在运行时失败。
控制台
- 在 Google Cloud 控制台中,前往 Agent Registry 页面:
- 选择技能标签页。
- 查看技能列表。您可以使用位置或状态菜单过滤显示内容。
- 点击要删除的技能的名称。
- 在技能详情页面中,点击 删除。
- 在确认对话框中,输入
DELETE,然后点击删除。
gcloud
如需删除技能,请使用 gcloud alpha agent-registry skills delete 命令:
gcloud alpha agent-registry skills delete SKILL_ID \
--project=PROJECT_ID \
--location=LOCATION
替换以下内容:
SKILL_ID:要删除的技能的 ID。 对于手动注册的技能,请添加private-前缀,例如private-my-skill。PROJECT_ID:项目 ID。LOCATION:注册表位置。
REST
如需删除技能,请发送 DELETE 请求:
curl -X DELETE \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://agentregistry.googleapis.com/v1alpha/projects/PROJECT_ID/locations/LOCATION/skills/SKILL_ID?force=true"
替换以下内容:
PROJECT_ID:项目 ID。LOCATION:注册表位置。SKILL_ID:要删除的技能的 ID。 对于手动注册的技能,请添加private-前缀,例如private-my-skill。
后续步骤
- 了解如何上传新修订版本和下载软件包。
- 了解用于管理技能的角色和权限。