基于RAG的私有知识库智能问答系统-rag

项目描述 基于RAG的私有知识库智能问答系统
基于 RAG(检索增强生成)的私有知识库智能问答系统。用户上传 PDF 文档后,系统自动解析、分块并向量化入库;提问时从知识库检索最相关内容交给大模型生成带引用来源的回答,知识库外问题自动拒答,适合构建私有文档问答场景。

项目功能

– PDF 上传入库:解析提取文本、按中文标点分块、调用 Embedding 向量化后存入 Chroma
– 双模式问答:RAG 模式走固定“检索→重排→生成”链路;Agent 模式由 LLM 自主决策是否调用检索工具
– 两阶段检索:向量粗筛召回 Top-20,Rerank 精排取 Top-3,重排失败自动回退
– 多知识库:基于 Chroma collection 物理隔离,支持切换
– 会话管理:多轮对话历史存 MySQL,支持指代消解的问题改写、流式输出
– MCP 协议支持:内置 MCP Server,可对外暴露知识库检索工具
– 附评估脚本:自建测试集与 CRUD-RAG 公开基准,回答准确率 95.65% / 85%

运行环境
Windows / Linux,Python 3.10+,MySQL 8.0,阿里云百炼 API Key(LLM、Embedding、Rerank 共用);无需下载本地模型与数据集,向量库为 Chroma 本地文件存储;依赖装在隔离 venv 中,后端 uvicorn 启动 8000 端口,Streamlit 前端 8502 端口。

 

项目技术
FastAPI(异步接口与统一异常处理)、LangChain + LangGraph(RAG 链路与 Agent 工具调度)、OpenAI 兼容协议对接通义千问(qwen3.8-max LLM、qwen3.7-text-embedding、qwen3.7-text-rerank)、Chroma 持久化向量库、SQLAlchemy 异步 + aiomysql、pdfplumber 解析、tenacity 重试、Streamlit 前端、Docker Compose 一键部署。

以上系统源码经过技术整理与调试,确保能正常运行

提供最优质的资源集合

立即查看 了解详情