智能知识库问答系统-SpringRAG
智能知识库问答系统 — 基于 Spring AI 构建,集成大语言模型、向量数据库和 RAG(检索增强生成)全链路,实现文档驱动的精准问答。
技术亮点
1. 分层记忆设计
借鉴认知科学的分层思路:短期记忆(当前对话上下文) + 实体记忆(用户关键信息持久化到 H2)。每次只加载相关记忆,避免无关历史干扰 LLM 判断。
2. 双模型架构
主力模型 DeepSeek(远程 API)用于生产,Ollama 本地模型用于链路验证和冒烟测试。兼顾性能与开发效率。
3. 分层 RAG 优化
从基础向量搜索逐层叠加:文本清洗 → 递归分块 → LLM 查询重写 → MMR 去重 → 自动元数据分类,每层解决一个具体痛点,不一步到位过度设计。
4. Redis 短期记忆层
对话记忆从项目内存迁移至 Redis,利用 Redis 的 TTL 机制实现短期记忆自动过期,appendonly 持久化保证重启不丢。
5. RabbitMQ 异步处理层
引入 RabbitMQ 将耗时操作异步化:文件上传后先落盘再发 MQ,消费者异步完成清洗→分块→向量化存储;审计日志异步落库不阻塞接口响应。通过 prefetch=1 + max-concurrency=3 控制 LLM API 并发,天然削峰。
人工智能