实现在 Copilot Studio 中使用的技能

适用于: SDK v4

技能是指可供另一个机器人使用的机器人。 通过这种方式,可以创建一个面向用户的机器人,并使用一个或多个技能对其进行扩展。 你可以在技能概述中了解有关技能的详细信息,并了解如何在实现技能中生成技能。 或者,虚拟助理模板包含一组预先构建的技能,你可以自定义和部署,而不是从头开始构建。

如果预计你的技能将从 Copilot Studio copilot 中使用,则必须考虑到你的技能存在一些其他限制。

清单限制

Copilot Studio 对你可以在技能清单中声明的内容施加了限制。

  • 只能声明 100 个或更少的操作。
  • 每个操作仅限 25 个或更少的输入或输出。
  • 不能将数组类型用于输入或输出。

相同租户限制

为了确保注册用于 Copilot Studio 中的自定义技能的合规性和充分治理,你的技能机器人必须是 Microsoft Entra ID 中注册的应用程序。 添加技能时,我们会验证技能的应用程序 ID 是否位于已登录用户的租户中,以及技能终结点是否与已注册应用程序的 Home Page URL 匹配。

在 Copilot Studio 中将你的机器人注册为技能之前,你必须确保该机器人的 Azure 门户主页设置为机器人的技能清单 URL。

注册技能期间执行的验证

当最终用户尝试从其 Copilot 连接到技能时,他们首先需要将技能导入 Copilot Studio。 你的技能需要经过一系列验证检查。 如果其中一项检查失败,可能会导致此表中所述的错误消息。

验证步骤 错误代码 错误消息 描述或缓解操作
清单 URL 有效 URL_MALFORMEDURL_NOT_HTTPS 链接无效;链接必须以 https:// 开头 重新输入安全 URL 形式的链接。
清单可检索 MANIFEST_FETCH_FAILED 获取技能清单时遇到问题。 验证你的清单 URL 是指向清单的链接;尝试在 web 浏览器中打开清单 URL。 如果 URL 在 10 秒内呈现页面,请重新注册你的技能。
清单可读 MANIFEST_TOO_LARGE 清单太大。 清单的大小必须为 500 KB 或更小。
清单可读 MANIFEST_MALFORMED 清单不兼容。 检查清单是否为有效的 JSON 文件。 检查清单是否包含必需的属性,如 namemsaAppId 等。 有关详细信息,请参阅清单限制
尚未注册技能 MANIFEST_ALREADY_IMPORTED 已将此技能添加到机器人。 删除技能并再次注册。
清单终结点和主页域名匹配 MANIFEST_ENDPOINT_ORIGIN_MISMATCH 技能终结点不匹配。 Microsoft Entra ID 应用的主页 URL 域和清单 URL 域必须匹配。 请参阅相同租户限制
技能托管在已注册用户的租户中 APPID_NOT_IN_TENANT 若要添加技能,必须先注册。 全局管理员必须将技能注册到已注册用户的组织中。
操作受到限制 LIMITS_TOO_MANY_ACTIONS 技能限制为 100 个操作。 技能清单中定义的技能操作过多。 删除操作,然后重试。
操作输入参数受到限制 LIMITS_TOO_MANY_INPUTS 操作限制为 25 个输入。 技能操作输入参数过多。 请删除参数,然后重试。
操作输出参数受到限制 LIMITS_TOO_MANY_OUTPUTS 操作限制为 25 个输出。 技能操作输出参数过多。 请删除此参数,然后重试。
技能计数受到限制 LIMITS_TOO_MANY_SKILLS 机器人最多可以有 25 个技能。 机器人中添加了太多的技能。 请删除现有技能,然后重试。
安全令牌有效 AADERROR_OTHER 似乎出现了问题。 获取安全令牌以触发技能时可能会出现暂时性错误。 重新导入技能。
技能正常 ENDPOINT_HEALTHCHECK_FAILEDHEALTH_PING_FAILED 检查技能时出现一些问题。 Copilot Studio 在向你的技能发送 EndOfConversation 活动时收到未知响应。 请确保技能正在运行并正确响应。
已授权技能 ENDPOINT_HEALTHCHECK_UNAUTHORIZED 此技能不允许列出你的机器人。 检查你的机器人是否在技能的允许列表中。 有关详细信息,请参阅 Copilot Studio 如何配置技能。