版本:V2.0 | 编制日期:2026年7月 | 密级:内部公开
本系统不是简单的文档管理系统(DMS),而是企业知识资产化的核心基础设施。其战略价值体现在三个层面:
| 维度 | 量化目标 |
|---|---|
| 覆盖范围 | 支撑≥10个一级组织,≥100个知识库,≥500万份文档入库 |
| 解析精度 | 原生PDF结构化字段准确率≥95%,扫描件OCR文字识别率≥90%(中英文) |
| 检索性能 | 语义检索P99≤800ms,全文检索P99≤300ms |
| 系统可用性 | 年度可用性≥99.9%,RPO≤15分钟,RTO≤30分钟 |
| API吞吐 | 单组织QPS≥200,支持突发流量10倍弹性扩展 |
┌─────────────────────────────────────────────────────────────────┐
│ 接入层(统一网关) │
│ 管理端(Web/运营后台) │ 客户端(Web/App) │ OpenAPI │
└─────────────────────────────────────────────────────────────────┘
│
┌─────────────────────────────────────────────────────────────────┐
│ 业务服务层 │
│ 组织权限 │ 文档资源 │ 知识目录 │ 溯源审计 │ RAG问答 │
└─────────────────────────────────────────────────────────────────┘
│
┌─────────────────────────────────────────────────────────────────┐
│ 智能解析与索引层(核心能力池) │
│ 解析调度引擎 → 专项Worker集群 → 结构化输出 → 向量化/索引构建 │
└─────────────────────────────────────────────────────────────────┘
│
┌─────────────────────────────────────────────────────────────────┐
│ 混合存储层(多模数据) │
│ MySQL │ Elasticsearch │ Milvus │ MinIO │ Redis │
└─────────────────────────────────────────────────────────────────┘
│
┌─────────────┐ ┌─────────────┐ ┌─────────────┐
│ 运维体系 │ │ 安全体系 │ │ 监控体系 │
│ 日志·链路·│ │ 加密·鉴权·│ │ 指标·告警·│
│ 备份·恢复 │ │ 审计·脱敏 │ │ 链路追踪 │
└─────────────┘ └─────────────┘ └─────────────┘
| 决策点 | 选定方案 | 备选方案 | 决策依据与权衡 |
|---|---|---|---|
| PDF/扫描解析 | MinerU(主)+ PyMuPDF(降级) | 自研OCR+版面分析 | MinerU开源且Apache2.0,精度业内领先,但GPU消耗较大,需独立算力池 |
| 向量数据库 | Milvus(分布式) | Qdrant / pgvector | Milvus支持多组织物理分区、百万级向量检索性能稳定,社区活跃 |
| 检索引擎 | Elasticsearch + 向量混合检索 | OpenSearch | ES生态完善,支持全文+向量混合查询,且团队熟悉度高 |
| 消息队列 | RabbitMQ(持久化+死信) | RocketMQ / Pulsar | RabbitMQ轻量稳定,死信机制成熟,满足异步重试和降级需求 |
| 对象存储 | MinIO(集群模式) | Ceph / 华为OBS | MinIO兼容S3,部署简单,支持多租户桶隔离,适合私有化场景 |
| 网关 | Kong / APISIX /nginx | 集成JWT+API Key双鉴权 |
org_id作为一级分区键,全局拦截器在DAO层自动注入过滤条件,上层业务代码完全无感。 ┌───────────┐
│ 文件上传 │
└─────┬─────┘
▼
┌───────────┐
│ 类型识别 │
└─────┬─────┘
│
┌───────────────┼───────────────┐
▼ ▼ ▼
┌───────────┐ ┌───────────┐ ┌───────────┐
│PDF队列 │ │Office队列 │ │图片队列 │
└─────┬─────┘ └─────┬─────┘ └─────┬─────┘
▼ ▼ ▼
┌───────────┐ ┌───────────┐ ┌───────────┐
│MinerU集群 │ │Tika+POI │ │PaddleOCR │
│(GPU×4) │ │集群(CPU) │ │集群(CPU) │
└─────┬─────┘ └─────┬─────┘ └─────┬─────┘
└───────────────┼───────────────┘
▼
┌─────────────────────┐
│ 统一结构化输出格式 │
│ (JSON + Markdown) │
│ + 溯源元数据固化 │
└─────────────────────┘
关键设计细节:
(file_id, page_num, bbox, snapshot_url),前端直接高亮定位。| 阶段 | 周期 | 核心交付 | 验收标准 |
|---|---|---|---|
| 一期:基础底座+核心解析 | 基础设施部署、MinerU集群搭建、PDF/Office解析上线、组织权限模型 | 支持10份混合PDF解析,结构化输出准确率≥85% | |
| 二期:检索+溯源+API | 混合检索引擎、全链路溯源、OpenAPI网关、管理后台 | 检索响应<1s,溯源信息完整率100%,API通过安全扫描 | |
| 三期:AI增强+高可用 | RAG问答服务、向量库集群、主从切换、监控告警体系 | QPS≥100,可用性≥99.9%,故障自动恢复<5min | |
| 四期:规模化+优化 | 存量文档批量导入、性能压测调优、运维SOP文档、培训推广 | 支撑百万级文档,P99达标,通过等保二级测评 |
| 组件 | 配置建议 | 数量 | 年估算成本(万元) |
|---|---|---|---|
| MinerUp解析节点 | GPU:A10/RTX4090,CPU:8C,内存:32G | 2~4(弹性扩缩) | 8~15 |
| CPU解析节点(Office/OCR) | CPU:16C,内存:64G | 3~5 | 4~6 |
| 业务微服务节点 | CPU:8C,内存:16G | 6(3主3备) | 3~5 |
| MySQL/RDS | 16C64G SSD,主从+只读 | 2主4从 | 4~6 |
| Elasticsearch集群 | 16C64G SSD,3热2温节点 | 5 | 5~8 |
| Milvus向量库 | 16C64G SSD,3分片2副本 | 6 | 6~10 |
| MinIO集群 | 8C32G,4T HDD×3节点 | 3 | 2~3 |
| Redis缓存 | 16G内存,主从+哨兵 | 2 | 1~2 |
| 合计(首年) | 33~55万 |
注:可根据实际文档量按需缩减,初期可合并节点,后续线性扩展。
| 风险类别 | 具体描述 | 缓解措施 | 应急预案 |
|---|---|---|---|
| 解析性能瓶颈 | 高峰期大量PDF上传导致MinerU队列积压 | 独立GPU队列+最大并发控制(每节点2任务)+超时熔断 | 自动降级为PyMuPDF快速提取,延迟入库,事后补解析 |
| 数据越权泄露 | 跨组织检索或API返回其他组织数据 | 三层过滤(SQL注入org_id、ES索引分区、MinIO桶隔离)+ 定期渗透测试 | 实时告警+自动冻结涉嫌API Key,人工审计 |
| 向量/索引不一致 | 文档更新后旧向量未清理 | 采用“软删除+异步清理”机制,事务性更新MySQL状态后,MQ触发清理任务 | 每日凌晨全量对账,发现差异自动修复 |
| 服务雪崩 | 依赖组件(ES/Milvus)故障导致整体不可用 | 缓存热点数据+熔断降级(检索失败返回缓存结果) | 自动摘除故障节点,切换至备用集群(冷备) |
| AI生成幻觉 | RAG问答生成不实内容 | 强制检索结果作为上下文,生成内容附引用源,置信度阈值过滤 | 人工抽检+反馈闭环,模型定期微调 |
本方案在企业级知识库领域具备三个核心差异化优势:
建议决策路径: