Copilot Studio 允许通过使用 技能来扩展代理。 如果组织中已生成并部署代理(针对特定方案使用 Microsoft 365 代理 SDK 和支持代码工具),则可以将这些机器人转换为技能并在 Copilot Studio 代理中注册该技能。
备注
您可以从 Microsoft Teams 中的 Copilot Studio 应用添加技能,但是您必须有 Microsoft Copilot Studio 独立订阅。
本文适用于熟悉 技能的系统管理员或 IT 专业人员。 向 Copilot Studio 助手注册技能后,可以在 对话中无缝触发技能操作。
先决条件
重要提示
Copilot Studio 智能体仅支持使用旧版 Bot Framework SDK 版本 4.12.0+ 和 Microsoft 365 智能体 SDK v1.0.0+ 生成的技能。 应使用 Microsoft 365 代理 SDK 构建新技能。
若要配置某个技能,应在 Microsoft Entra ID 中将与该技能相关的应用注册设置为单租户配置。
流操作和技能操作
下表可帮助确定何时为对话使用技能。
| 流操作 | 技能操作 | |
|---|---|---|
| 角色 | 代理创作者可以构建可重复使用的流,嵌入到任何代理对话中。 | 开发人员可以在自己的环境中创建、部署和托管自定义技能。 |
| 对话 | 将流用于简单的单回合操作。 例如,下订单或获取订单状态。 | 将技能用于复杂的多回合操作。 例如,安排会议或预订航班。 |
| 响应 | 使用流发出代理响应。 例如,显示个性化的消息或内联图像。 | 使用技能可发出任何受支持的代理响应。 例如,显示自适应卡或发送随机响应。 |
| 操作 | 使用流触发服务器端单回合操作。 例如,调用 HTTP API 或触发自定义连接器。 | 使用技能触发服务器端和客户端事件和操作。 例如,在代理响应时导航到页面。 |
配置技能
首先,使用 Copilot Studio 创建代理 ,并使用支持代码工具创建技能并将其部署到组织中。 请参阅以下示例:
在注册技能之前,请向技能开发人员提供代理的 ID,以授权代理调用技能中的操作。 了解有关技能允许列表的详细信息。 您可以从添加技能窗口获取代理的 ID。
为您的代理添加技能:
在左侧导航窗格中,展开设置并选择技能。
在技能页面顶部,选择添加技能。
复制您的代理 ID 并提供给技能开发人员。
输入技能清单的 URL。 技能清单包含代理在技能中触发操作所需的信息。
合规性注意事项
为了保护用户隐私,我们要求将技能作为应用注册到已登录用户的 Microsoft Entra ID 租户中。
诊断技能注册期间的错误
将对 URL 进行一系列验证检查。 这些检查可确保添加到代理中的技能的合规性、管理性和可用性。 在注册技能之前,必须修复这些错误。
| 错误消息 | 疑难解答/缓解 |
|---|---|
| 获取技能清单时遇到问题。 ( MANIFEST_FETCH_FAILED) |
请尝试在 Web 浏览器中打开您的清单 URL。 如果该 URL 在 10 秒钟内呈现页面,请重新注册技能。 |
| 清单不兼容。
( MANIFEST_MALFORMED) |
(a) 检查清单是否是有效的 JSON 文件。
(b) 检查清单是否包含所需的属性 例如,( name、msaAppId、单个 endpoint、activities/id、activities/description、activities/type(仅支持 event 或 message))。 |
| 终结点中存在不匹配 ( MANIFEST_ENDPOINT_ORIGIN_MISMATCH) |
检查技能终结点是否与 Microsoft Entra ID 应用程序注册的 Publisher domain(首选)或 Home page URL 字段匹配。
详细了解为终结点设置主页。 |
| 要添加技能,必须首先进行注册 ( APPID_NOT_IN_TENANT) |
检查技能的应用程序 ID 是否已经在组织的 Microsoft Entra ID 租户中注册。 |
| 链接无效;链接必须以 https:// 开头 ( URL_MALFORMED、URL_NOT_HTTPS) |
重新输入安全 URL 形式的链接。 |
| 此清单太大; ( MANIFEST_TOO_LARGE) |
检查清单的大小。 必须小于或等于 500KB。 |
| 此技能已添加到您的代理中。
( MANIFEST_ALREADY_IMPORTED) |
删除技能,然后重试注册。 |
| 技能不能超过 100 个操作。
( LIMITS_TOO_MANY_ACTIONS) |
技能清单中定义的技能操作过多。 删除操作,然后重试。 |
| 操作不能超过 25 个输入。
( LIMITS_TOO_MANY_INPUTS) |
技能操作输入参数太多。 删除参数,然后重试。 |
| 操作不能超过 25 个输出。
( LIMITS_TOO_MANY_OUTPUTS) |
技能操作输出参数太多。 删除参数,然后重试。 |
| 您的代理最多可以拥有 100 个技能。
( LIMITS_TOO_MANY_SKILLS) |
添加到代理中的技能过多。 删除一个现有技能,然后重试。 |
| 似乎出现了问题。 ( AADERROR_OTHER) |
验证技能时出现暂时性错误。 请重试。 |
| 检查技能时出错。
( ENDPOINT_HEALTHCHECK_FAILED、 HEALTH_PING_FAILED) |
检查技能终结点是否已联机且正在响应消息。 此外,检查单一租户技能的应用注册是否已部署到同一租户。 |
| 此技能不允许添加到您的代理 ( ENDPOINT_HEALTHCHECK_UNAUTHORIZED) |
检查您的代理是否已加入技能允许列表。 |