面向高校学生事务咨询的知识库问答系统:校内制度文档切分入库,学生用自然语言提问,系统先检索最相关条款、再基于资料作答并给出引用来源;资料不足时明确说明并记录未命中问题。三层兜底(敏感词 / 检索阈值 / 接口异常降级)控制幻觉,未配置大模型密钥也能离线运行(检索模式)。
技术栈
Python、Django、jieba、RAG、大模型接口、MySQL
功能模块
- 文档切分入库:每段约 160 字符、相邻重叠 40 字符,避免条款被切断;片段带分词缓存
- 可解释检索:jieba 分词 + TF-IDF(BM25-lite)+ 字段加权,给出相关度分数
- 阈值标定:20 条相关问题命中 20/20、14 条无关问题误命中 0/14(阈值 5.5)
- 两条回答通道:检索模式(离线可用,引用条款原文)与大模型模式(基于资料生成)
- 三层兜底:敏感词固定话术 → 检索低于阈值引导换问法 → 接口异常自动降级为检索
- 引用溯源:回答附来源卡片(文档标题 / 段落 / 相关度),可逐条核对原文
- 闭环改进:未命中问题自动累计、赞踩反馈进入同一清单,补充知识库后即可命中
- 问答统计:命中率、回答方式分布、FAQ 命中排行、负面反馈明细、问答记录
运行环境
- 编程语言:Python 3.8 及以上
- Web 框架:Django 4.2
- 分词检索:jieba + 自研 TF-IDF(BM25-lite),纯 Python、可解释
- 生成(可选):OpenAI 兼容大模型接口(配置 LLM_API_KEY 启用;未配置时用检索模式)
- 数据库:MySQL 5.7 及以上(交付默认 SQLite,免安装)
- 可视化:ECharts 5(已内置本地文件,离线可用)
- 操作系统:Windows / macOS / Linux
- 启动方式:双击一键脚本,或 python manage.py runserver
界面截图










文档预览
交付的任务书、开题报告与论文均为 Word 文档,下面是真实页面预览:



交付内容
- 完整源码(已跑通,含演示知识库 26 条 FAQ + 3 份制度文档与演示问答记录)
- 可复用的知识库切分 / 检索模块与提示词模板
- 毕业设计任务书(Word)
- 开题报告(Word)
- 毕业论文(Word,七章制,含检索设计与幻觉控制章节)
- 系统使用与二次开发说明(Word + md)
- 10 张系统运行截图