RAG 智能问答系统

新建文件夹ing

基于 Spring AI Alibaba 构建的检索增强生成(RAG)系统。采用 KNN 向量召回 + BM25 文本匹配 + Cross-Encoder 重排的三阶段混合搜索策略,结合组织标签权限控制,实现对私有知识库的精准问答。支持多模型动态切换、WebSocket 流式对话,有效解决 LLM 幻觉问题,提供可溯源的答案。

项目架构

技术栈
Spring Boot Spring AI Alibaba Spring Security Redis MySQL MinIO Elasticsearch Kafka WebSocket
核心功能
  • 分片上传:支持MinIO的大文件分片上传、断点续传与秒传检测,结合 Kafka 异步处理向量化任务以提高上传效率
  • 混合语义搜索:结合 KNN 向量召回、BM25 关键词匹配与 Cross-Encoder Rerank 精排,进行三阶段检索优化,提升搜索精准度
  • 多模型切换:支持 DeepSeek 和 Qwen 模型的动态切换,通过 WebSocket 流式响应实现实时对话
  • 权限控制:基于组织标签实现三级权限控制(私有、组织、公开),提供细粒度的文档访问与管理权限
  • 答案溯源:展示原文出处及文件来源,支持一键下载原始文档以便查看详细信息
系统架构
分片上传 Tika 解析 HanLP 分块 Embedding 向量化 ES 混合索引
用户提问 意图识别 混合召回 权限熔断过滤 Cross-Encoder 精排 LLM 生成