[本文为预发布文档,可能会发生变化。]
Copilot Studio 让您可以通过将智能体连接到其他智能体来增强智能体,从而允许智能体移交用户交互或响应自动触发器。 通过使用针对特定任务或数据集定制的模块化代理,高效高效地横向扩展解决方案。
添加的所有代理都会显示在 “代理 ”页上。
重要
本文包含 Microsoft Copilot Studio 预览文档,并可能会更改。
预览功能不适用于生产用途,并且可能具有受限功能。 这些功能在正式发布之前可用,以便你可以提前访问并提供 反馈。
如果要生成生产就绪的代理,请参阅 Microsoft Copilot Studio 概述。
创建子代理或连接到现有代理
在决定是否应在主代理中创建子代理或将代理连接到单独的代理时,以下注意事项非常重要。
子代理是位于主代理中的轻型代理。 它类似于智能体中的工具和主题。
连接的智能体是一个完全成熟的智能体,独立于主智能体。 Copilot Studio 目前支持连接同一环境中存在的其他 Copilot Studio 代理,并Microsoft Fabric 数据代理。
在以下情况下,在智能体中创建子智能体:
- 单个开发人员或小型的凝聚力团队管理整个代理解决方案。
- 您希望将工具、指令和知识逻辑地分组到更大智能体中明确定义的子智能体。
- 对于子代理,无需单独的配置设置、身份验证或部署功能。
- 你不希望单独发布这些代理或使其独立可用。
- 无需在多个代理之间重复使用同一个代理。
在以下情况下连接现有智能体:
- 多个团队或开发人员独立管理不同的代理。
- 您需要单独发布和维护智能体,并使其直接在独立渠道中提供。
- 代理必须有自己的专用设置,包括身份验证。
- 每个代理都需要独立的应用程序生命周期管理(ALM)进程。
- 您希望让智能体可以重复使用。
可以在解决方案中混合连接代理和子代理。 例如,可以将解决方案的各个部分分解为用户也可以直接访问的单独代理。 其中每个智能体都可以有自己的子智能体来用于关键目的。
创建子代理
转到主代理的 “代理 ”页,然后选择“ 添加代理”。
选择“ 创建代理”。
输入新代理的名称。
确定应何时使用代理。 默认情况下,代理会根据其说明响应用户或触发器。
- 如果要使用默认行为(代理选择),请输入代理用途的简要说明。
- 否则,请在“ 何时使用” 下展开列表,然后选择所需的行为。 有关支持的行为的详细信息,请参阅 “确定何时应使用代理”。
输入您希望智能体在被调用时遵从的清晰指令。 若要在说明中引用工具、变量或添加 Power Fx 公式,请输入斜杠(/)并从显示的菜单中选择所需的选项。
重要
在说明中引用现有工具时,请确定主要代理应直接访问该工具,还是仅在指令中显式调用时才能访问该工具。 将工具的使用限制为显式指令引用有助于防止出现类似工具或代理时的混淆。 例如,如果你有“检查帐户余额”代理和类似的“获取帐户余额”工具,请限制仅由代理调用的工具以避免重叠。 若要将工具限制为仅在从另一个代理引用时可用,请清除允许代理在工具详细信息页上的“其他详细信息”部分中动态决定何时使用此工具属性。
(可选)添加仅此子代理可以使用的知识和工具:
如果您不希望此智能体被触发,关闭已启用。 稍后可以 激活子代理 。
选择“保存”。
确定何时应使用代理
默认情况下,代理会根据其说明响应用户查询。 您还可以配置代理来拦截其他事件并对其进行响应。
| 活动 | DESCRIPTION |
|---|---|
| 收到消息 | 在接收到一种活动类型 message 时调用——这是最常见的活动类型。 当用户向代理键入或说出某些内容时收到。 默认情况下,代理将响应任何消息。 若要将代理响应限制为特定类型的消息,请使用“其他详细信息”下的“活动类型”列表。 |
| 出现自定义客户端事件 | 当收到event类型的活动时调用。 默认情况下,代理会响应任何事件。 若要将代理响应限制为特定事件,请使用“其他详细信息”下的“事件名称”属性。 |
| 出现活动 | 在收到任何类型的活动时调用。 若要将代理响应限制为特定类型的活动,请使用“其他详细信息”下的“活动类型”列表。 |
| 对话更改 | 当收到conversationUpdate类型的活动时调用。 例如,当用户加入对话时,Teams 会发送此类活动。 |
| 它已被调用 | 当收到invoke类型的活动时调用。 最常从 Teams 频道接收-例如,当用户与 Teams 中的消息或搜索扩展交互时。 |
| 它已被重定向到 | 从主题中显式调用智能体时调用。 尚不支持。 |
| 用户处于非活动状态一段时间 | 在配置一段时间后,用户未与主代理交互时调用。 从“其他详细信息”下的“非活动持续时间”列表中选择所需的非活动阈值。 |
| 计划完成 | 当主代理完成执行所有计划的步骤以响应用户查询或自治触发器时调用。 |
| AI生成的响应即将发送 | 在主代理在调用一个或多个主题、作或知识源后为用户生成响应时调用。
Response.FormattedText使用系统变量查看生成的响应。 请将ContinueResponse变量设置为 false,如果您想阻止发送编排响应(也就是说,如果修改消息并使用消息节点发送您自己的消息)。 |
其他详细信息
根据选择 何时使用此选项?,可能有更多属性可用。 以下属性始终可用。
条件
指定必须满足的条件才能调用代理。 例如,您可能只希望在员工使用的频道是 Microsoft Teams 时才呼叫代理人。
如果需要更复杂的条件,可以切换到 Power Fx 公式编辑器:选择生成器,然后选择公式。
优先度
单个传入活动(如消息)可以触发多个智能体。 默认情况下,您为何时使用选择的选项确定智能体触发的顺序。
子智能体和主题共享它们可以响应的同一组触发器或事件。 如果代理和主题配置为响应同一事件(例如用户不活动),则可以使用优先级属性来确定应首先执行哪些作。
执行顺序:
- 已收到活动
- 已收到消息 / 事件 / 对话更新 / 调用
- 通过智能体
如果必须基于发生相同类型的事件调用多个代理或主题,则会按创建顺序(最早先调用)。
可以显式设置 Priority 属性。 较小的数字表示优先级较高。
连接现有智能体
将现有智能体连接到您的智能体:
在 “代理 ”页上,选择“ 添加代理”。
选择要连接到的智能体类型:
- Copilot Studio,适用于 Copilot Studio 智能体。
- Microsoft Fabric,适用于 Microsoft Fabric 数据智能体。
选择添加代理。
添加后,您的智能体会显示在智能体列表中,您可以通过在测试聊天中询问一些应该会引发智能体被调用的问题来立即对智能体进行测试。
注释
如果对连接的代理进行更改,请务必发布这些更改, 主代理只能在发布后使用最新版本。 此外,请记住:一旦代理连接,您可以在本地控制其描述。 原始智能体说明的任何更新都不会自动与主智能体同步。 如果要反映这些更改或进行任何其他更改,则必须手动更新说明。
连接 Copilot Studio 智能体
若要将主智能体连接到另一个智能体,另一个智能体必须是:
- 在与主智能体相同的环境中
- 已发行
- 配置为允许来自其他智能体的连接
将现有智能体连接到您的智能体:
从可用智能体列表中选择所需的智能体。 将显示代理的名称、指示和说明。
调整说明(如果需要),使其对主智能体更具上下文(也就是说,如果有其他工具或智能体,使说明更具体,说明可能重叠)。 建议更新说明,以确保 Copilot Studio 可以了解何时调用此代理。 了解如何 编写有效的元数据。
如果要在调用会话历史记录时阻止将会话历史记录传递到此代理,请清除“ 将此会话历史记录传递到此代理 ”框。 此方法将传递给代理的信息仅限于主代理希望其他代理完成的显式任务。
连接 Microsoft Fabric 数据智能体
从可用连接列表中选择所需的连接,或者在 Microsoft Fabric 和 Copilot Studio 智能体之间创建新的连接。
选择“下一步”。
从有权访问的 Fabric 数据智能体列表中选择所需的智能体。
调整说明(如果需要),使其对主智能体更具上下文(也就是说,如果有其他工具或智能体,使说明更具体,说明可能重叠)。 建议更新说明,以确保 Copilot Studio 可以了解何时调用此代理。 了解如何 编写有效的元数据。
使 Copilot Studio 代理可供其他代理使用
默认情况下,任何代理都可以在同一环境中连接另一个代理。
转到您的智能体的设置页面。
打开让其他智能体连接到并使用此智能体(如果未打开)。
如果要阻止其他代理连接到此代理,请关闭此选项。
在主智能体的指令中引用智能体
能够引用您创建的子智能体或您连接的其他智能体,这可能很有用,特别是对于自主智能体。 使用此方法,可以将代理的长指令集分解为较小的重点部分。
转到主智能体的概述页面。
在 “说明 ”字段中,输入斜杠(/)并选择所需的代理。 Copilot Studio 会自动保存说明。
测试您的智能体。 在 Copilot Studio 中使用测试面板时,您应该会在活动映射中看到引用的智能体。
管理子智能体和连接的智能体
你可以使任何子代理或连接的代理暂时不可用,或者完全从解决方案中删除它。
打开或关闭智能体
在主代理的 “代理 ”页上,使用要打开或关闭的代理旁边的 “已启用 ”开关。
关闭子代理或连接的代理会使它处于非活动状态,这意味着它不会响应用户或触发器。
删除子代理
在主代理的 “代理 ”页上,选择要删除的子代理旁边的 “更多 ”图标(...),然后选择“ 删除”。
删除连接的代理
在主代理的 “代理 ”页上,选择要删除的连接代理旁边的 “更多 ”图标(...),然后选择“ 断开连接代理”。
已知的限制
以下限制适用于子智能体和连接的智能体。
重定向节点不支持重定向到子代理和连接的代理。
子代理传递给主代理的信息可能缺少引文。 考虑使用子智能体的说明作为一种解决方法。 例如,指示子代理始终在找到用户问题的答案后立即发送消息:“搜索知识并找到答案后,始终立即发送包含答案的消息。还可以指示子代理在生成摘要的任何摘要中维护引文:“生成摘要时,请始终保留所有引文并将其包含在摘要中。
虽然子智能体和连接的智能体遵循主智能体的使用常识设置,不会将常识用作内置知识工具生成的答案的一部分,但它们有时可能会在生成问题或消息时使用基础 LLM 知识。
无法连接到已与其他智能体连接的现有智能体。