← 返回首页
Python Streamlit Docker Compose 数据工程 · 工具集

🧰 审校辅助工具集

checker_tools — 覆盖数据摄取→坏例生成→模型评测→训练集导出全链路的 4 合 1 Streamlit 工具箱

项目概览

本项目是配套 exam_smart_checker / exam_checker_agent 的数据工程工具集, 将数据管道中最常用的 4 个独立操作封装为可独立访问的 Streamlit Web 工具, 通过统一启动器一键拉起,也支持 Docker Compose 容器化部署。

应用场景:AI 审校系统的数据准备、质量评估、训练集构建全流程支持

4 个子工具

📄 pdf2text

端口 8302

从 PDF 试卷中提取题目文本,支持多栏版面与图文混排,输出结构化 JSON/JSONL。
PyMuPDFpdfplumber
🔬 process_badcase

端口 8303

负样本/坏例工厂:对审校结果中的错误案例进行整理、分类、标注,生成可用于模型微调的对齐数据。
LLM数据标注
📊 evaluation

端口 8304

AI 审校结果评测工具:计算精确率、召回率、F1 等指标,支持人工标注对比与批量评估报告。
评测指标LLM Judge
📋 excel_merger

端口 8305

Excel 合并 → JSONL 训练数据导出:将多份 Excel 标注结果合并、去重、格式转换为下游训练框架可用的 JSONL 格式。
pandasopenpyxl

技术栈

Python Streamlit(各子工具 UI) Docker Compose(容器部署) PowerShell start_all.ps1(Windows 启动) Shell start.sh(Linux/Mac 启动) PyMuPDF / pdfplumber pandas / openpyxl

架构与部署

checker_tools/ ├── main.py # Streamlit 导航首页 (hub launcher) ├── pdf2text/ # 子工具 1:PDF 解析 → port 8302 ├── process_badcase/ # 子工具 2:坏例工厂 → port 8303 ├── evaluation/ # 子工具 3:模型评测 → port 8304 ├── excel_merger/ # 子工具 4:Excel→JSONL → port 8305 ├── start_all.ps1 # Windows 一键启动 ├── start.sh # Linux/Mac 一键启动 └── docker-compose.yml # 容器化部署

核心设计

全链路数据管道覆盖

4 个工具覆盖了 AI 审校系统数据工程的完整链路: PDF 解析(数据摄取)→ 坏例生成(负样本构建)→ 模型评测(质量验证)→ JSONL 导出(训练集交付)。

统一 Hub 启动器

main.py 作为导航首页,一键进入任意子工具; start_all.ps1 / start.sh 并行启动全部 4 个服务, docker-compose.yml 支持一键容器化。

创新点 / 我做了什么

  • 设计并实现 4 个独立 Streamlit 工具,覆盖数据工程全链路
  • 构建统一 Hub 启动器与端口分配方案
  • 编写 Docker Compose 配置,支持生产环境容器化一键部署
  • 实现 Excel → JSONL 批量转换,兼容主流训练框架输入格式
  • 实现 LLM-as-Judge 评测框架,自动化计算审校质量指标

效果截图

工具集导航首页
工具集导航首页 — 4 个子工具一览
PDF 题目提取
pdf2text — PDF 题目批量提取工具
AI 审校评测
evaluation — AI 审校指标评估工具
Excel 合并导出
excel_merger — Excel 合并与 JSONL 训练数据导出

相关链接

GitHub 主页 查看 README