``` flowchart TB subgraph Layer1["1. 用户侧"] UI["对话框"] end subgraph Layer2["2. 智能体编排层"] Router@{ label: "意图识别与分发
语义路由,小模型更好,选择题)" } Planner["Agent 规划与调度 (ReAct)"] LLM["大模型 (LLM)"] end subgraph Layer3["3. 工具检索引擎 (Tool-RAG) ⭐️"] Embedding["Embedding 模型
(文本转向量)"] VectorDB[("向量数据库
(Milvus / pgvector)
存储插件语义")] RelationalDB[("关系型数据库
(MySQL)
存储接口物理配置")] SchemaBuilder["Schema 组装器
(仅组装 Top-K 工具)"] end subgraph Layer4["4. 拦截与执行层"] Interceptor["高危操作拦截器
(审批效果,这个需要和前端沟通方案)"] HttpExecutor["通用 HTTP 执行器
(动态请求第三方组)"] IBS["IBS / CDN / DNS 系统"] end UI -- "1. 输入: 查一下流量" --> Router Router -- "2. 业务请求" --> Embedding Embedding -- "3. 提取语义向量" --> VectorDB VectorDB -- "4. 返回相似度 Top-3 的插件 ID" --> SchemaBuilder RelationalDB -. "5. 根据 ID 拉取详细配置URL等" .-> SchemaBuilder SchemaBuilder -- "6. 动态注入这 3 个工具说明" --> Planner Planner <-- "7. 仅带 3 个工具进行交互
提取并完善参数" --> LLM Planner -- "8. 决定调用某工具+参数" --> Interceptor Interceptor -- "9. 放行/审批" --> HttpExecutor HttpExecutor -- "10. 动态发起真实请求" --> IBS Register["管理员注册新插件"] -. "A. 存入运行配置" .-> RelationalDB Register -. "B. 向量化插件描述" .-> VectorDB Router@{ shape: rect} Embedding:::vector VectorDB:::vector RelationalDB:::plugin SchemaBuilder:::vector classDef core fill:#e1f5fe,stroke:#01579b,stroke-width:2px classDef plugin fill:#fff3e0,stroke:#e65100,stroke-width:2px classDef vector fill:#e8f5e9,stroke:#2e7d32,stroke-width:2px classDef highlight fill:#ffebee,stroke:#c62828,stroke-width:2px ```