企业知识库

一套面向企业的检索增强生成(RAG)平台,覆盖从文档接入到流式问答的完整链路,把分散的文档沉淀为可对话、可追溯的知识资产。

技术栈

Vue3 Spring Boot LLM RAG Elasticsearch 向量数据库 Redis

核心功能

  • 1 文档上传与解析:支持 PDF、Word、Markdown、网页等多格式接入,自动抽取正文、表格与标题层级结构。
  • 2 Chunk 切分与 Embedding:按语义边界与标题层级智能分块,调用 Embedding 模型向量化,写入向量库并由 Elasticsearch 双写索引。
  • 3 混合检索:向量语义召回与 Elasticsearch 关键词(BM25)检索融合,兼顾语义理解与精确匹配。
  • 4 Rerank 重排:用 Cross-Encoder 对召回候选做精细排序,显著提升 Top-K 相关性与答案质量。
  • 5 Prompt 组装与 LLM 回答:拼接系统提示、检索上下文与引用来源,调用大模型生成基于证据的答案。
  • 6 SSE 流式输出:服务端通过 SSE 逐字推送,前端打字机式渲染,回答同步附带来源引用与可点击溯源。

实现亮点

双写存储与混合检索

向量库负责语义召回,Elasticsearch 负责结构化过滤与关键词召回,二者并行查询后融合排序,兼顾召回率与准确率;ES 同时承载权限过滤与元信息查询,减少额外联表。

Rerank 与引用溯源

在召回后引入轻量重排模型精筛候选,并把命中片段与原文位置绑定。流式回答中可点击跳转出处,配合"仅基于检索内容作答"的约束,显著降低幻觉。

遇到的挑战

长文档切分导致上下文割裂:简单按字数切块会切断表格与跨段逻辑。改用滑动窗口 + 标题继承 + 结构感知切分后,检索命中更完整。

检索延迟与高并发:ES 与向量并行查询,并用 Redis 缓存热门问题与 Embedding 结果,P95 延迟明显下降。

幻觉与引用不准:通过强制"仅基于检索内容作答"的系统约束、引用高亮与可点击溯源,显著提升答案可信度。

后续计划

  • 多租户与细粒度权限隔离,支持部门级知识空间。
  • 图表、图片与公式的多模态检索与问答。
  • 将知识库封装为 MCP / Tool,供 AI Agent 工作台直接调用。