项目介绍
AI 在线考试系统覆盖「题库 → 组卷 → 考试 → 判分 → 阅卷 → 统计」全链路,分为管理端与考生端两个独立前端工程,共用一个考试后端。
管理端负责出题、组卷、发布考试、指派考生、阅卷与统计;考生端负责在线答题、断线续考、交卷、成绩与错题本。两端通过登录落点与权限码隔离。
技术栈
- 后端:Java 17、Spring Boot 3.5、MyBatis-Plus
- 数据:MySQL 8(somp)、Redis
- 前端:Vue 3、Vite、Element Plus
- AI:OpenAI 兼容接口(DeepSeek / 通义 / 智谱 / vLLM / Ollama)
- 接入:Sa-Token SSO、多租户与数据权限
功能清单
| 模块 | 功能 |
|---|---|
| 题库 | 知识点树、单选/多选/判断/填空/简答、Excel 导入导出、题干查重、题库盘点 |
| 组卷 | 固定组卷、规则抽题、预览校验、重新抽题、平行卷 |
| 考试 | 发布/撤回/结束状态机、组织批量指派、名单导入、到时自动结束 |
| 答题 | 组卷快照、答案实时暂存、断线续考、服务端权威超时、交卷防重 |
| 判分 | 客观题自动判分、简答题人工阅卷、按答卷/按题批阅、批量给分 |
| 统计 | 通过率、平均分、分数段、知识点掌握度、组织对比、Excel 导出 |
| 监考 | 切屏检测、禁止复制、全屏约束、异常答卷识别 |
| 学习闭环 | 错题本、随机练习、富媒体题目、答题回顾 |
| AI 能力 | AI 出题、解析生成、语义查重、智能组卷、AI 试评、错题讲解 |
| 成本治理 | AI 调用流水、每日配额、场景区分、失败也记流水 |
技术架构
exam-admin-ui :3002
exam-student-ui :3003
↓
exam-app :18004
├─ MySQL somp
├─ Redis
├─ iam-app :18003(SSO)
└─ 大模型(OpenAI 兼容)
答题过程中的答案先写 Redis,交卷时落库;超时以服务端截止时间为准,不信任前端倒计时。考生端接口不登记权限点,通过登录拦截、答卷归属校验与业务状态校验三层保证边界。