architecture
核对日期:2026-05-13。
1. 架构目标
本系统优先保证:
- 输出有依据。
- 失败可观察。
- 权限可控制。
- 成本可估算。
- 关键动作可回滚。
2. 总体架构
3. 核心模块
| 模块 | 职责 | 输入 | 输出 | 失败处理 |
|---|---|---|---|---|
| UI | 收集任务、展示结果和引用 | 用户输入 | 请求、反馈 | 表单校验、重试提示 |
| API | 鉴权、任务管理、限流 | 请求 | 任务结果 | 错误分类、trace id |
| Context Builder | 组织指令、上下文和约束 | 任务、检索结果 | prompt/messages | 超长截断、缺信息拒答 |
| RAG/工具层 | 检索证据或调用工具 | query / tool args | 文档片段 / 工具结果 | 权限过滤、空结果 |
| 模型网关 | 调用模型、路由、fallback | messages | 原始模型输出 | 超时、重试、降级 |
| Parser | 结构化解析和校验 | 模型输出 | 可用结果 | schema 校验失败重试 |
| Trace | 记录调用、成本、延迟 | 执行事件 | 日志和指标 | 脱敏、采样 |
4. 数据流
- 用户提交任务。
- 系统做身份校验和输入校验。
- 系统根据任务构造检索 query 或工具调用参数。
- 检索层返回带 metadata 的证据。
- Context Builder 组装模型输入。
- 模型返回结果。
- Parser 做结构化校验。
- 系统展示结果、引用、风险提示和反馈入口。
5. 控制流
6. 权限和审计
| 资源或动作 | 权限要求 | 审计字段 | 人工确认 |
|---|---|---|---|
| 读取公开知识库 | 登录用户 | user id、doc id、query | 否 |
| 读取内部文档 | 文档权限 | user id、doc id、permission | 否 |
| 执行业务工具 | 工具级权限 | tool name、args hash、result status | 视风险 |
| 写入或外发 | 高权限 | approver、payload summary、trace id | 是 |
7. 状态和存储
| 数据 | 存储位置 | 保留时间 | 脱敏要求 |
|---|---|---|---|
| 会话记录 | [存储] | [时间] | 移除敏感字段 |
| 任务 trace | [存储] | [时间] | 参数摘要化 |
| 评测结果 | [存储] | 长期 | 不含真实隐私数据 |
| 失败样例 | [存储] | 长期 | 用合成或脱敏样例 |
8. 回滚和停用
至少准备:
- 关闭模型功能的开关。
- 降级到规则或人工流程的路径。
- 回滚 prompt 版本的方法。
- 回滚模型版本或 provider 的方法。
- 清理错误缓存或污染索引的方法。