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 生成