Skip to content

设计并关联子代理

智能体开发服务平台(AgentWorks)允许主智能体关联已有智能体实例,并在运行时按需委托任务。为了获得稳定、可核对的委托结果,先明确目标实例要处理的任务,再独立验证该实例,最后建立关联。

已有实例符合任务要求时可以直接复用;需要不同的模型、提示词、能力、权限或职责边界时,可以创建一个专门的智能体实例。两种方式都先得到一个可以独立运行的实例,再把它关联为子代理。

设计并验证目标实例

先明确专业任务和实例边界,再选择复用或创建实例,并确认目标实例可以独立完成预期任务。

明确要委托的专业任务

先把子代理当作一个可以独立完成专业任务的智能体来设计。至少明确以下内容:

设计内容需要说明的问题合同审查示例
职责这个子代理处理什么任务检查输入的合同条款
输入主智能体需要提供哪些信息合同条款正文和适用地区
结果主智能体需要取得什么内容风险条款、风险等级和判断依据
边界哪些请求不应交给它不修改合同,不执行审批,不回答合同之外的问题
能力完成任务需要哪些模型、知识或工具合同知识库和只读条款检索工具

职责越清楚,主智能体越容易选择正确的目标并使用返回结果。一个候选实例同时承担多个无关任务时,先拆清职责,再决定是否需要单独创建实例。

选择复用还是创建实例

选择标准是候选实例是否已经适合目标委托,而不是它是否已经出现在选择器中。

情况建议做法
已有实例的职责、输入、输出、能力和权限都符合目标任务,并且已经通过独立测试复用该实例,并用当前委托场景的固定输入重新验证
已有实例职责过宽,或者目标任务需要不同的模型、提示词、能力、凭证或权限创建专门的智能体模板和实例
暂时无法判断已有实例是否适合先直接测试该实例;测试结果稳定后再建立关联

创建专门实例是一种提高职责清晰度和验证可靠性的设计选择,不是 AgentWorks 对每个子代理的强制要求。

准备并独立验证目标实例

以下步骤由构建者在 AgentWorks 控制台中完成。通过渠道或 API 使用智能体的用户不需要参与这些配置。

  1. 根据上一节的选择,打开已有智能体模板,或者为专业任务创建一个智能体模板。
  2. 配置模型、系统提示词和完成任务所需的能力。系统提示词应说明输入、预期结果和不处理的情况。
  3. 创建目标智能体实例;复用已有实例时,先将来源智能体模板的最新配置更新到该实例。
  4. 直接运行目标实例,使用固定输入验证正常结果、边界输入和能力失败时的处理。
  5. 填写能够区分职责的实例名称和描述,让构建者可以在关联时识别正确目标,也让主智能体在运行时判断这个实例适合处理什么任务。具体写法参见让主智能体看懂每个子代理适合做什么

需要配置模型和提示词时,参见配置模型、提示词与上下文压缩;需要知识、工具、记忆、Skill 或沙箱时,参见为智能体添加能力

子代理需要在 AgentWorks 内执行关键工具时,为目标实例配置平台工具包、MCP 或沙箱。用户工具包由 Invoke API 或 WebSocket 接入的业务系统执行;主智能体不会代替该系统响应子代理运行中的用户工具中断。

决定是否让用户直接使用目标实例

专门接收主智能体委托的目标实例通常不需要绑定渠道。使用 Playground 验证它能够独立完成预期任务即可;不绑定渠道不会影响主智能体向它委托任务。

只有同时希望用户不经过主智能体,直接与这个实例对话时,才为它配置飞书、QQ 或 WebSocket 渠道。配置前确认:

  • 用户直接向该实例提出的问题具有明确范围;
  • 没有主智能体补充任务背景时,该实例仍能理解输入并给出合适结果;
  • 该实例的工具、凭证和权限适合直接开放给目标用户;
  • 用户能够分清什么时候使用主智能体,什么时候直接使用这个专业实例;
  • 这条直接使用路径有明确的维护者和验证方式。

用户直接通过渠道访问目标实例时,不再经过主智能体负责的任务路由、上下文补充和结果汇总,也可能绕过只配置在主智能体上的安全约束。如果目标实例的系统提示词只适合接收结构化委托输入,或者它拥有不适合直接开放给用户的工具权限,绑定渠道反而容易产生混乱和操作风险。

如果没有独立的用户群、使用目标或权限设计,建议不为目标实例绑定渠道。需要把智能体作为独立入口提供给用户时,参见通过渠道提供智能体

配置主智能体如何委托

目标实例准备完成后,在主智能体中说明何时选择它、怎样提供输入以及如何使用返回结果,再建立实例关联。

让主智能体看懂每个子代理适合做什么

AgentWorks 会在运行时向主智能体提供已关联子代理的名称和描述。主智能体根据这些信息、自身的系统提示词和当前请求判断是否委托。它不会自动读取子代理的完整系统提示词、模型、插件或权限,因此,使用具体职责、输入和结果要求,比“专业助手”或“处理复杂任务”等宽泛描述更容易得到稳定选择。

配置时需要分别处理以下三类信息:

配置内容建议写法作用
子代理名称使用可以区分职责的名称,例如“合同条款审查”或“工单分类”帮助主智能体快速区分多个子代理
子代理描述说明处理的任务、所需输入、返回结果和不处理的情况限定委托范围,减少不必要的调用
主智能体系统提示词说明何时直接回答、何时委托,以及取得多个结果后如何汇总明确何时委托以及怎样使用返回结果

描述可以按照以下顺序组织:

language-text
处理 [任务];
需要 [输入];
返回 [结果或格式];
不处理 [边界]。

例如,可以把合同审查子代理描述为:

检查输入的合同条款,返回风险条款、风险等级和判断依据。需要完整的待审查条款。不修改合同,不执行审批,也不回答合同之外的问题。

主智能体系统提示词可以进一步说明:合同条款问题交给“合同条款审查”,普通产品问答直接回答;收到审查结果后,先列出高风险条款,再概括其他发现。

名称和描述只帮助主智能体选择目标,不会授予或限制子代理权限。需要禁止写入、删除或其他高风险操作时,应在目标实例的工具、权限、凭证和沙箱配置中实施限制,不能只依赖描述。名称和描述会提供给模型,不要在其中填写凭证、Token、个人信息或其他敏感内容。

将实例关联到主智能体

目标实例通过独立测试后,再把它添加到主智能体模板。

  1. 创建或编辑主智能体模板。
  2. 打开 插件配置,单击 添加插件
  3. 类型 中选择 子代理
  4. 选择智能体实例 中选择已经验证的目标实例。
  5. 按需添加其他子代理。如果正在创建主智能体模板,选择 创建智能体模板;如果正在编辑主智能体模板,选择 保存修改
  6. 在主智能体模板详情页打开 插件,确认每个子代理关联的实例名称和 ID。
  7. 创建主智能体实例,或者把模板的最新配置更新到已有主智能体实例。

子代理 选择的是已有智能体实例,不会从智能体模板自动创建新实例。修改目标实例来源的智能体模板后,先更新并重新测试目标实例,再验证主智能体的委托结果。

验证委托选择和汇总结果

配置完成后,使用固定输入覆盖以下情况:

  • 主智能体可以直接完成:主智能体直接回答,没有发起子代理委托。
  • 任务只属于一个子代理:主智能体选择预期实例,并在最终回答中使用返回结果。
  • 多个任务彼此独立:主智能体选择预期的多个实例,并正确汇总所需结果。
  • 多个子代理职责相近:使用容易混淆的边界输入,确认主智能体仍能根据名称和描述选择预期实例。
  • 缺少必要输入:主智能体先补充信息或说明无法完成,不把缺少关键输入的任务直接交给子代理。
  • 输入超出子代理边界:主智能体不把任务交给不适合的实例,或者明确说明无法完成。
  • 子代理失败或等待审批:主智能体不把未完成结果当作成功结果。

模型可能对相似输入作出不同选择。不要只凭一次成功调用判断配置已经稳定;应保留一组固定输入,在修改主智能体或子代理后重新测试。

修改目标实例的模型、系统提示词、插件或权限后,还要检查名称和描述是否仍准确反映实际能力。更新相关实例后,重新执行直接回答、明确匹配、职责相近和范围外输入测试,避免主智能体继续依据已经过时的能力说明进行委托。

需要在实际渠道中验证、查看后台任务、处理确认审批或排查失败时,参见运行和管理子代理委托