2532 字
7 分钟
Super Agent架构设计
Super Agent 核心架构设计文档
一、核心设计哲学
Super Agent 是面向企业场景的 Agent 系统,核心设计理念为 确定性编排 + 场景化执行:
- 不将所有问题交由 Agent 自主决策,优先通过确定性逻辑完成路由、改写、拆分等前置处理
- 仅将需要自主探索的开放式任务交给 Agent 执行
- 企业级场景下,可控比聪明更重要,优先保障系统稳定性、可解释性与可追溯性
二、整体请求完整链路
用户请求从进入系统到返回结果,共经过 6 个核心阶段,全链路埋点 Trace 追踪耗时、决策结果与 Token 消耗:
- 会话记忆加载:从 MySQL 读取历史对话,按配置策略(无记忆/滑动窗口/摘要压缩)组装上下文
- 前置编排决策:通过 LLM 完成路由判定、问题改写、歧义检测、子问题拆分、知识域收缩五步决策
- 执行器分发:依据编排结果,匹配对应执行器(歧义追问/RAG知识问答/ReAct Agent)
- 回答生成:执行器完成检索、推理等操作,生成最终回答
- SSE 流式输出:分片返回回答正文,结束后补发引用来源与推荐追问
- 会话记忆更新:持久化本轮对话,按需触发历史摘要压缩
三、三层执行器分流机制
按照 歧义澄清 > RAG知识问答 > ReAct Agent 的优先级路由,兼顾稳定性与能力边界:
| 执行器类型 | 触发条件 | 处理方式 |
|---|---|---|
| 歧义追问执行器 | 用户问题信息不足,意图不明确 | 生成澄清问题,引导用户补充信息 |
| RAG 知识问答执行器 | 问题可在知识库中找到答案 | 证据驱动生成回答,附带可追溯的来源引用 |
| ReAct Agent 执行器 | 需要联网搜索、多步工具推理的开放式任务 | 自主决策+工具调用+多轮推理循环 |
Agent 生产安全防护
针对 Agent 自主推理的不确定性,设置多层阈值与异常处理机制:
- 调用次数限制:单次请求模型调用上限 8 次、工具调用上限 6 次;单会话累计模型调用 40 次、工具调用 30 次,防止死循环与资源滥用
- 失败重试机制:工具调用失败采用指数退避重试(最多 2 次,延迟 200~1200ms,带随机抖动)
- 异常兜底降级:工具最终调用失败时优雅降级,不直接抛出异常中断对话
- 并行工具执行:支持最多 4 个工具并行执行,提升推理效率
- 状态持久化:Agent 状态 Checkpoint 存入 MySQL,应用重启后可恢复会话
四、前置编排器
编排层输出结构化 ConversationExecutionPlan 执行计划,作为编排层与执行层的标准契约,实现两层逻辑解耦。
核心能力
- 路由判定:通过 LLM 结构化输出判断执行器类型,相比规则路由更适配模糊边界场景
- 问题改写:完成指代消解与上下文补全,将省略、指代的口语化问题改写为完整可检索的问句
- 子问题拆分:将复合问题拆分为独立子任务(单轮最多 4 个),分别处理后合并结果
- 知识域收缩:限定检索的文档领域范围,减少检索噪声,提升检索速度与精准度
- 歧义检测:识别信息缺失的问题,触发澄清追问,避免错误输出
执行计划核心字段
| 字段 | 说明 | 示例 |
|---|---|---|
| executionMode | 执行模式 | CLARIFY / RAG_CHAT / REACT_AGENT |
| rewrittenQuestion | 改写后的完整问题 | MinIO 对象存储怎么配置连接参数? |
| subQuestions | 拆分后的子问题列表 | [‘退款规则是什么’, ‘审批流程怎么走’] |
| knowledgeDomains | 知识域范围 | [‘产品手册’, ‘运维文档’] |
| clarifyQuestion | 澄清问题(仅 CLARIFY 模式) | 请问你想了解的是哪个产品的配置? |
五、RAG 检索链路设计
摒弃单一向量检索方案,采用精细化多环节检索流程,兼顾召回率与准确率。
1. 双通道并行检索
- 向量检索 + 关键词检索 双路并行,分别覆盖语义匹配与精确匹配场景
- 采用 RRF(排名倒数融合算法) 合并两路结果,无需对齐分数量纲
- 向量通道设置最低相似度阈值,关键词通道设置相对阈值,过滤弱命中结果
- 支持外接 Rerank 重排模型,进一步优化排序效果
2. 父子块聚合机制
- 检索阶段使用 Child 小块,语义集中,提升召回命中率
- 回答生成阶段聚合为 Parent 大块,保证上下文完整性
- 核心思路:检索用小块保精度,回答用大块保完整性
3. 证据管控机制
- 无有效证据时直接短路返回,告知用户无相关信息,从源头规避幻觉
- 设置证据字符预算上限,避免占用过多模型上下文窗口
- 回答强制标注证据来源编号,实现可追溯
证据预算控制参数
| 参数 | 默认值 | 说明 |
|---|---|---|
| 单子问题证据上限 | 2200 字符 | 防止单个子问题证据过多 |
| 全部证据总预算 | 5200 字符 | 控制注入 Prompt 的总证据量 |
| 单父块最大字符 | 2200 字符 | 限制单个父块的上下文长度 |
| 向量检索最低相似度 | 0.45 | 过滤低质量向量匹配 |
| 关键词检索相对阈值 | 0.35 | 过滤弱命中关键词结果 |
六、文档处理异步流水线
文档上传至可检索采用 Kafka 驱动的全异步流水线,支持多格式解析与组合式切块,拒绝一刀切分块。
- 上传与解析:文件存入 MinIO,通过 Apache Tika 解析 PDF/Word/PPT 等多格式文档,支持配置知识域、标签等元数据
- 切块策略推荐:根据文档类型与内容特征,自动推荐最优切块策略组合,支持人工调整
- 组合式切块引擎:
- 结构切块(主干):按标题、章节、段落切分,保留文档天然边界
- 递归分块(兜底):结构块过大时继续裁剪,控制块大小
- 语义分块(优化):精修切块边界,优化语义完整性
- LLM 智能切块(增强):处理低质量复杂文档,默认关闭
- 向量化与索引构建:分别构建向量库与倒排索引,支撑双通道检索,全流程日志可追溯
七、会话记忆策略
平衡 Token 成本与上下文完整性,提供三种记忆策略,所有数据持久化至 MySQL:
| 策略 | Token 成本 | 上下文完整性 | 适用场景 |
|---|---|---|---|
| 无记忆 | 最低 | 无 | 一次性查询、FAQ 问答 |
| 滑动窗口 | 中等 | 最近 N 轮完整 | 短期连续追问、调试场景 |
| 摘要压缩 | 可控 | 长期摘要 + 近期原文 | 生产环境长对话(推荐) |
摘要压缩方案细节
- 保留最近 4 轮完整对话原文,不做压缩
- 更早历史采用增量摘要,单次最多处理 6 轮,融合进已有摘要,成本不随对话长度线性增长
- 最近原文窗口最大 2200 字符,长期摘要最大 1400 字符
八、工具与能力扩展
通过两层抽象实现 Agent 能力的标准化、可扩展集成。
1. MCP 工具协议
基于 Anthropic 提出的 MCP(Model Context Protocol)标准,实现工具调用标准化:
- 支持动态工具发现,启动时自动扫描注册可用工具
- 标准化输入输出,兼容主流 MCP Server 生态
- 支持多工具编排、前后串联调用
- 内置安全沙箱,具备超时限制与异常隔离
- 新增工具仅需部署 MCP-Server,无需修改业务代码
2. Skills 能力抽象
面向领域能力的上层封装,解决专业能力扩展问题:
- 声明式定义:通过
SKILL.md文件描述能力边界、触发条件与执行逻辑 - 目录化管理:按领域分类组织,支持嵌套分类
- 零配置加载:新增 Skill 放入对应目录即可自动生效
- 能力组合:单个 Skill 可调用多个 MCP 工具,支持多 Skill 协同
MCP 解决工具如何调用的问题;Skills 解决领域能力如何定义的问题,二者互补。
九、全链路可观测
基于 AOP 实现全链路追踪,观测面板可查看:
- 每轮对话各阶段耗时、执行模式
- Token 消耗与费用估算
- 路由决策、改写结果、工具调用进度
- 完整执行阶段时间线,支持故障精准定位
十、核心设计总结
Super Agent 围绕企业级场景的核心诉求,通过「前置确定性编排分层分流 + 场景化执行器精准处理 + 全链路管控与可观测」的架构设计,在大模型的能力边界内,最大化保障系统的可控性、稳定性与可维护性,平衡智能体验与生产可用性。
分享
如果这篇文章对你有帮助,欢迎分享给更多人!
Super Agent架构设计
https://mizuki-master-1vt.pages.dev/posts/super_agent架构设计/ 部分信息可能已经过时
相关文章 智能推荐





