Welcome to our repository! This project demonstrates an end-to-end solution for automatically grading student essays using advanced machine learning techniques, from initial data analysis to deployment. Our application accepts an essay image and outputs the text and its corresponding grade, leveraging a fine-tuned transformer model available on the Hugging Face platform.
The repository is organized into several key areas:
app/
: Contains the user interface for essay submission and grading display.data/
: Datasets used in model training and evaluation.endpoints/
: FastAPI implementation for deploying machine learning models as endpoints.ml/
: Core machine learning code including exploratory data analysis, data preprocessing, and training scripts.
-
ML Folder: Focuses on machine learning model development.
preprocessing/
: Data preprocessing techniques, including exploratory data analysis and sampling methods.training/
: Model training scripts, exploring different machine learning algorithms and transformer models.error_analysis/
: Banchmark and error analysis of the most relevant model.
-
Endpoints: Contains FastAPI code for model deployment, allowing real-time essay grading.
-
App: A user-friendly interface for submitting essays and receiving grades.
To get started with this project, clone the repository and install the required dependencies:
git clone https://github.com/mlengineershub/LazyTeacher
cd LazyTeacher
pip install -r requirements.txt
Refer to individual READMEs in each directory for more detailed instructions on running each component.
This diagram illustrates the comprehensive workflow of our project, from data handling and model training to deployment and user interaction.
Here is a look of our front end application :
Navigate through the project using the following links to understand and interact with the different components:
We encourage contributions to this project! Please consider the following steps to contribute:
- Fork the repository.
- Create your feature branch (
git checkout -b feature/AmazingFeature
). - Commit your changes (
git commit -m 'Add some AmazingFeature'
). - Push to the branch (
git push origin feature/AmazingFeature
). - Open a Pull Request.
We hope you find this project useful and we welcome any contributions or feedback!