马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
Hermes Agent SubAgent 子署理使用教程
一个大型项目同时遇到代码 bug、文档错误和性能瓶颈,岂非要逐一列队处置处罚?假如能把差别使命同时交给多个 "AI 助手" 并行处置处罚就好了。SubAgent(子署理)就是 Hermes Agent 为此提供的核心本事——通过 delegate_task 工具可将复杂、并行或隔离的使命委派给独立子署理实验,实现 上下文隔离、并行处置处罚、主会话轻量化,大幅提拔多使命处置处罚服从与复杂标题办理本事。本文从核心原理、底子用法、并行使命、高级设置、实战场景到最佳实践,带你全面把握 SubAgent 委派用法。
一、SubAgent 核心原理
1.1 什么是 SubAgent 委派
SubAgent 是独立隔离的轻量级 Agent 实例,通过 delegate_task 工具由主署理(父署理)创建,拥有独立上下文、终端会话与受限工具集,使命完成后仅将终极择要返回给主署理,不污染主会话汗青。
1.2 核心代价
- ✅ 上下文完全隔离:子署理无父代分析话汗青,制止上下文膨胀与干扰。
- ✅ 并行使命处置处罚:默认支持 3 个子署理并发,大幅提拔多使命服从。
- ✅ 轻量化主会话:仅返回关键结果,淘汰主会话 Token 斲丧。
- ✅ 模子资本优化:子署理可指定自制模子,低沉复杂使命推理资本。
- ✅ 风险隔离:子署理独立实验,错误 / 非常不影响主署理。
1.3 关键特性
- 无影象继续:子署理完全 “空缺”,仅继续父署理的 API 密钥与凭据设置。
- 工具集受限:可自界说子署理可用工具,克制递归委派、内存修改等高风险操纵。
- 深度限定:默认仅支持 1 级委派(父→子),防止无穷递归。
- 制止流传:主署理制止时,全部生动子署理同步停止。
图1:SubAgent 委派架构图
graph TB PARENT[主署理 Parent Agent] -->|delegate_task| CHILD1[子署理 1
独立上下文 / 工具集] PARENT -->|delegate_task| CHILD2[子署理 2
独立上下文 / 工具集] PARENT -->|delegate_task| CHILD3[子署理 3
独立上下文 / 工具集] subgraph "完全隔离 | 仅返回择要" CHILD1 CHILD2 CHILD3 end CHILD1 -->|终极择要| PARENT CHILD2 -->|终极择要| PARENT CHILD3 -->|终极择要| PARENT从架构图可以看出,子署理完全隔离于主署理。下面从最底子的单个使命委派开始,把握 SubAgent 的核心用法。
二、底子用法:单个使命委派
单个使命委派实用于复杂调试、代码查察、单主题研究等独立使命,子署理串行实验。
2.1 核心语法
- delegate_task(
- goal="任务目标(清晰具体)",
- context="任务上下文(完整背景、约束、依赖)",
- toolsets=["可用工具集"]
- )
复制代码 2.2 实操示例:代码调试委派
将测试失败调试使命委派给子署理,隔离实验环境:- delegate_task(
- goal="调试 test_foo.py 第42行断言失败问题",
- context="项目路径:~/myproject,Python 3.11。错误:assertEqual 预期200实际500,接口/api/health 响应异常",
- toolsets=["terminal", "file"]
- )
复制代码 2.3 关键注意:上下文必须完备
子署理无父署理汗青,必须通报全部须要信息,制止暗昧形貌:
- ❌ 错误:goal="修复接口错误"(无上下文,子署理无法实验)
- ✅ 准确:goal="修复/api/health接口500错误" + 完备错误日记/项目信息
单个使命委派办理了独立标题,而当须要同时处置处罚多个不干系的使命时,并行委派能大幅提拔服从。
三、高级用法:并行批量委派
并行批量委派支持最多 3 个子署理同时实验,实用于多主题研究、多文件重构、多模块查察等并行场景。
3.1 核心语法
- delegate_task(tasks=[
- {"goal="任务1", "context="上下文1", "toolsets=["工具集1"]},
- {"goal="任务2", "context="上下文2", "toolsets=["工具集2"]},
- {"goal="任务3", "context="上下文3", "toolsets=["工具集3"]}
- ])
复制代码 3.2 实操示例:并行技能研究
同时委派 3 个子署理,分别研究 WebAssembly、RISC-V、量子盘算 2025 盼望:- delegate_task(tasks=[
- {
- "goal": "研究2025年WebAssembly浏览器与非浏览器支持情况",
- "context": "重点:主流浏览器兼容性、Node.js/wasmtime运行时、语言支持(Rust/Go)",
- "toolsets": ["web"]
- },
- {
- "goal": "研究2025年RISC-V服务器与嵌入式 adoption 现状",
- "context": "重点:服务器芯片厂商、嵌入式生态、软件适配(Linux/RTOS)",
- "toolsets": ["web"]
- },
- {
- "goal": "研究2025年量子计算纠错与实际应用进展",
- "context": "重点:纠错技术突破、金融/材料应用、头部厂商路线",
- "toolsets": ["web"]
- }
- ])
复制代码 3.3 并行使命特性
- 并发限定:默认最大 3 个,可通过 delegation.max_concurrent_children 设置调解。
- 结果排序:按使命输入序次返回,与完成时间无关。
- 进度实时体现:CLI 树状视图展示各子署理工具调用与完成状态。
图2:并行使命实验时序图
sequenceDiagram participant 主署理 participant 子署理1 participant 子署理2 participant 子署理3 主署理->>子署理1: delegate_task(使命1) 主署理->>子署理2: delegate_task(使命2) 主署理->>子署理3: delegate_task(使命3) par 并行实验 子署理1->>子署理1: 独立研究 WebAssembly 子署理2->>子署理2: 独立研究 RISC-V 子署理3->>子署理3: 独立研究 量子盘算 end 子署理1-->>主署理: 返回择要 子署理2-->>主署理: 返回择要 子署理3-->>主署理: 返回择要 Note over 主署理: 结果按使命输入序次返回并行实验让服从倍增,但要想充实发挥 SubAgent 的潜力,还须要按需调解模子、工具集、超时等设置。
四、子署理设置与优化
4.1 自界说子署理模子
为子署理指定自制 / 轻量模子,低沉资本、提拔速率:- # ~/.hermes/config.yaml
- delegation:
- model: "google/gemini-flash-2.0" # 子代理专用模型
- provider: "openrouter" # 模型提供商
复制代码 4.2 工具集风雅化控制
子署理默认克制高风险工具,可按需设置可用工具集:
工具集实用场景["terminal", "file"]代码调试、文件编辑、构建使命["web"]研究、文档查询、毕竟核查["file"]只读代码查察、设置分析["terminal"]体系运维、进程管理默认克制工具:delegation(递归)、memory(内存修改)、send_message(跨平台推送)。
4.3 迭代与超时控制
- 最大迭代:限定子署理工具调用次数(默认 50),制止无穷循环:
- delegate_task(
- goal="快速检查配置文件",
- context="查看~/config.yaml语法正确性",
- toolsets=["file"],
- max_iterations=10 # 限制10轮内完成
- )
复制代码
- 超时时间:默认 600 秒(10 分钟),超时自动停止:
- delegation:
- child_timeout_seconds: 300 # 5分钟超时
复制代码 4.4 嵌套委派(高级)
默认子署理不可递归委派,可通过 role="orchestrator" 开启二级委派(最多 3 层):- delegate_task(
- goal="统筹代码审查与修复",
- context="管理3个子代理:审查、修复、测试",
- toolsets=["terminal", "file"],
- role="orchestrator" # 允许二级委派
- )
复制代码 设置优化完成后,将 SubAgent 应用到现实开辟中,才华真正体现其代价。
五、实战场景示例
5.1 代码查察 + 修复(串行)
委派子署理查察认证模块并修复安全毛病:- delegate_task(
- goal="审查并修复Flask认证模块安全问题",
- context="项目路径:~/webapp,文件:src/auth/login.py/jwt.py。重点:SQL注入、JWT验证、密码处理,修复后执行pytest测试",
- toolsets=["terminal", "file"]
- )
复制代码 5.2 多文件重构(串行)
委派子署理批量更换 Python 项目 print 为日记模块:- delegate_task(
- goal="重构src目录所有Python文件,替换print为logging",
- context="使用logging模块,按日志级别替换,不修改测试文件,重构后执行pytest验证",
- toolsets=["terminal", "file"]
- )
复制代码 5.3 体系巡检(并行)
并行委派 3 个子署理,分别查抄 CPU、内存、磁盘状态:- delegate_task(tasks=[
- {"goal": "检查服务器CPU使用率,超过90%告警", "context": "Linux系统,top命令", "toolsets":["terminal"]},
- {"goal": "检查内存占用,超过85%告警", "context": "free -h命令", "toolsets":["terminal"]},
- {"goal": "检查磁盘使用率,超过80%告警", "context": "df -h命令", "toolsets":["terminal"]}
- ])
复制代码 通过实战可以看到,SubAgent 善于须要推理的复杂使命,这与单纯的代码实验工具有本质区别。
六、SubAgent 与 execute_code 区别
特性SubAgent(delegate_task)代码实验(execute_code)推理本事完备 LLM 推理,支持多步决议仅实验脚本,无推理上下文独立会话,支持复杂配景无会话,仅脚本实验并行性最多 3 个并发单个实验实用场景需判断、推理的复杂使命机器式脚本使命资本较高(LLM 调用)较低(仅实验)明确了 SubAgent 与代码实验的定位差别后,末了总结几项最佳实践,帮你用得更加得心应手。
七、最佳实践与注意事项
7.1 最佳实践
- 上下文完备化:通报目的、配景、束缚、依赖,制止暗昧形貌。
- 模子分层:简朴使命用自制模子,复杂使命用高性能模子。
- 工具集最小化:仅授予须要工具,低沉安全风险。
- 并行分组:同类使命并行,制止跨范例干扰。
- 结果精简:子署理返回择要,淘汰主会话冗余。
7.2 注意事项
- 无影象继续:子署理完全空缺,不继续父代分析话。
- 不可递归:默认克制子署理再委派,制止无穷循环。
- 制止同步:主署理制止时,全部子署理停止。
- 结果汇总:仅终极择要返回,中央过程不污染主会话。
- 安全隔离:子署理独立实验,错误不影响主署理。
八、总结
SubAgent 委派是 Hermes Agent 多使命处置处罚的核心本事,通过上下文隔离、并行实验、资本优化,可高效处置处罚复杂调试、并行研究、批量重构等场景。公道设置模子、工具集与迭代限定,团结完备上下文通报,能最大化发挥子署理代价,大幅提拔使命处置处罚服从与主会话轻量化。
免责声明:如果侵犯了您的权益,请联系站长及时删除侵权内容,谢谢合作!qidao123.com:ToB企服之家,中国第一个企服评测及软件市场,开放入驻,技术点评得现金. |