← Back to Home
Python Streamlit Docker Compose Data Engineering Β· Toolkit

🧰 Checker Auxiliary Toolkit

checker_tools β€” 4-in-1 Streamlit toolbox covering the full pipeline: data ingestion β†’ bad-case generation β†’ model evaluation β†’ training export

Overview

A data engineering companion to exam_smart_checker / exam_checker_agent, packaging the four most common data pipeline operations into independently accessible Streamlit web tools. Launch all at once via a unified script; Docker Compose ready for production.

Use Cases: Data preparation, quality evaluation, and training set construction for AI review systems

4 Sub-tools

πŸ“„ pdf2text

Port 8302

Extracts question text from PDF exam papers, handling multi-column and mixed image/text layouts. Outputs structured JSON/JSONL.
PyMuPDFpdfplumber
πŸ”¬ process_badcase

Port 8303

Bad-case factory: organizes, classifies and annotates error cases from review results to generate alignment data for model fine-tuning.
LLMData Annotation
πŸ“Š evaluation

Port 8304

AI review evaluation tool: computes precision, recall, F1 and other metrics; supports human annotation comparison and batch evaluation reports.
Eval MetricsLLM Judge
πŸ“‹ excel_merger

Port 8305

Merges multiple Excel annotation files, deduplicates, and converts to JSONL format compatible with mainstream training frameworks.
pandasopenpyxl

Tech Stack

Python Streamlit (sub-tool UIs) Docker Compose (container deployment) PowerShell start_all.ps1 (Windows) Shell start.sh (Linux/Mac) PyMuPDF / pdfplumber pandas / openpyxl

Architecture & Deployment

checker_tools/ β”œβ”€β”€ main.py # Streamlit nav home (hub launcher) β”œβ”€β”€ pdf2text/ # Tool 1: PDF parsing β†’ port 8302 β”œβ”€β”€ process_badcase/ # Tool 2: bad-case factory β†’ port 8303 β”œβ”€β”€ evaluation/ # Tool 3: model evaluation β†’ port 8304 β”œβ”€β”€ excel_merger/ # Tool 4: Excelβ†’JSONL β†’ port 8305 β”œβ”€β”€ start_all.ps1 # Windows one-click launch β”œβ”€β”€ start.sh # Linux/Mac one-click launch └── docker-compose.yml # container deployment

Core Design

Full-Pipeline Data Coverage

The four tools cover the complete data engineering pipeline for an AI review system: PDF parsing (ingestion) β†’ bad-case generation (negative samples) β†’ model evaluation (quality validation) β†’ JSONL export (training delivery).

Unified Hub Launcher

main.py serves as a navigation homepage for entering any sub-tool. start_all.ps1 / start.sh launches all 4 services in parallel. docker-compose.yml enables one-command container deployment.

Innovations / My Contributions

  • Designed and implemented all 4 standalone Streamlit tools covering the full data engineering pipeline
  • Built a unified hub launcher with a clean port allocation scheme
  • Wrote Docker Compose config for production containerized one-command deployment
  • Implemented Excel β†’ JSONL batch conversion compatible with mainstream training frameworks
  • Implemented LLM-as-Judge evaluation framework for automated review quality metrics

Screenshots

Hub home
Hub homepage β€” 4 tools at a glance
pdf2text
pdf2text β€” batch PDF question extraction
evaluation
evaluation β€” AI review metric assessment
excel_merger
excel_merger β€” Excel merge & JSONL training data export

Links

GitHub Profile View README