这是一个基于 Python (Streamlit) 和 LaTeX 的自动化高中数学题库管理与智能组卷系统。专为中学数学教师及教研团队设计,旨在彻底解决海量 LaTeX 题目的碎片化管理、高效排版以及智能化组卷问题。
- 📝 题库管理与自动化归档:
- 一键批量读取题目源文件,按「板块/年份」智能分类归档。
- 题干、答案、解析深度分离:采用标准的 LaTeX 环境(
\begin{problem},\begin{answer},\begin{solutions}),结构化存储每一道题,方便检索与独立调用。
- 🤖 AI 智能化工作流 (基于阿里云 Qwen-VL-Plus):
- AI 自动打标签与评级:在题目单题/批量录入时,AI 自动分析 LaTeX 内容,生成知识点标签和难度星级评定。
- AI OCR 与“教学审核”:高精度识别题目截图,自动转换为规范的 LaTeX 代码。首创“教学审核”逻辑:若原图解答存在逻辑错误,AI 会输出原错并在文末附加
(【AI 纠错】:...)进行订正。 - 严苛的 LaTeX 排版规范:强制约束
\displaystyle分数显示、\left\right括号匹配、中英文混排空格以及公式后的标准英文句号。
- 🧠 智能组卷引擎 v1.0:
- 多层级条件检索:支持题型(选择/填空/解答)、默认全文检索,且支持回车键 (
Enter) 极速触发。 - 分层抽样与规则组卷:内置高考范围映射,支持按指定知识板块、题目数量、目标难度分布(正态分布或试卷标准比例)进行智能抽样组卷。
- AI 意图润色:提供自然语言组卷需求输入框,一键呼叫 AI 润色命题意图。
- 多层级条件检索:支持题型(选择/填空/解答)、默认全文检索,且支持回车键 (
- 🎨 专业级 SaaS 界面体验:
- 采用现代化的三栏式布局(左侧检索/筛选,中间编辑,右侧预览/AI助手)。
- 全局浏览视图采用紧凑型徽章(Badge)布局,优雅展示星级、标签和备注信息。
- 📐 TikZ 绘图深度整合:
- 内置本地系统(
xelatex+PyMuPDF)的 TikZ 代码实时编译服务,复杂几何图形代码实时转为 PNG 预览。
- 内置本地系统(
- 前端界面与交互:Streamlit (响应式框架,多列布局,回调机制)
-
排版与编译引擎:
$\LaTeX$ (核心依赖xelatex编译器) -
底层脚本与处理:Python (
re文本处理,fitzPDF图像解析, 抽样算法) - 大语言模型支持:阿里云百炼 (Qwen-VL-Plus 模型)
- 版本控制:Git/GitHub (配置代理优化大文件传输同步)
-
确保您的电脑已安装 Python 3.8+ 以及以下依赖库:
pip install streamlit pymupdf python-dotenv requests
-
确保本地已安装完整的
$\LaTeX$ 编译环境(例如 TeX Live),且xelatex命令已加入系统环境变量中。 -
在项目根目录的
.env文件中配置您的 AI 模型密钥(如阿里云 API KEY)。 -
双击运行
启动程序.bat,或者在终端执行:python 启动程序.py
即可自动在浏览器中打开工作台。
├── chapters/ # 存放按学科板块和年份分类的 LaTeX 题库源文件 (.tex)
├── utils/ # 系统核心工具库 (配置、文件读写、TikZ 渲染、抽样算法)
├── ocr_prompt.txt # AI OCR 与排版约束的系统提示词(热重载)
├── question_bank_app.py # Streamlit 主程序入口 (包含 UI 布局与核心逻辑)
├── 启动程序.py # 守护进程与服务启动脚本
└── log.csv # 批量题目处理与归档日志