automatic-grading-using-llm
A collection of LLM-based studies aimed at developing automated grading solutions for my master's project.
Science Score: 44.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (12.8%) to scientific vocabulary
Repository
A collection of LLM-based studies aimed at developing automated grading solutions for my master's project.
Basic Info
- Host: GitHub
- Owner: anand-kamble
- License: mit
- Language: Python
- Default Branch: main
- Size: 2.49 MB
Statistics
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
- Releases: 0
Metadata Files
README.md
Automatic Grading Using LLMs
This repository contains the code and configurations for a project exploring the use of Large Language Models (LLMs) in automating grading in educational contexts. The project leverages distributed processing, retrieval-augmented generation (RAG), and scalability techniques to assess model accuracy and performance across a range of tasks.
Repository Structure
- LICENSE: License for the repository.
- README.md: Documentation and instructions for the repository.
chapter_4/: Code for initial experiments with LangChain and Llama.cpp, including Docker configuration.
- Dockerfile: Docker setup for deploying the Llama.cpp environment.
- README.md: Detailed instructions for Chapter 4.
- docker-compose.yaml: Docker Compose file for container management.
- langchain_experiment.py: Experimentation script using LangChain.
- run_server.sh: Script to run the Llama.cpp server.
- utils.py: Utility functions for the experiments.
chapter_6/: Evaluation techniques and tools used in assessing system performance.
- Evaluation-Implementation.py: Implementation for evaluating the grading model.
- Langsmith-Tracing.py: Tracing implementation using Langsmith.
- Phoenix-Evaluation.py: Evaluation script for Phoenix RAG framework.
- README.md: Documentation for Chapter 6.
- Testset-Generation.py: Script for generating synthetic test data with Ragas.
- Trulens-Evaluation.py: Evaluation script using TruLens.
chapter_7/: Distributed processing and scalability implementation for handling high query volumes.
- MasternodeScript.sh: Script to initialize distributed Ollama servers across classroom machines.
- PerfCounterTimer.py: Timer utility to measure task execution performance.
- README.md: Documentation for Chapter 7.
- TaskScheduler.py: Task scheduler for distributing tasks using round-robin scheduling.
- main.py: Main script for executing distributed query processing.
- ollama_script.sh: Script for setting up Ollama servers on remote machines.
logo/: Contains logos or images used in the project.
Project Overview
Objective
This project aims to explore the feasibility of LLMs in automated grading by setting up a scalable, efficient, and accurate grading system using distributed LLM instances across multiple machines.
Key Features
- Scalability: Distributed processing setup to handle high volumes of grading queries.
- Evaluation Techniques: Assessment of grading accuracy using tools like Phoenix, TruLens, and LangSmith.
- Synthetic Data Generation: Test dataset generation using Ragas TestsetGenerator for robust system evaluation.
Setup and Usage
Prerequisites
- Python 3.10 or higher.
- Docker and Docker Compose.
- SSH access for distributed processing across networked machines.
Installation
- Clone this repository:
bash git clone https://github.com/anand-kamble/automatic-grading-using-llm cd automatic-grading-using-llm
Citation (CITATION.cff)
cff-version: 1.2.0
message: >
If you use this code or data in your research, please cite this work as follows:
title: "Automatic Grading Using LLMs"
version: 1.0.0
repository-code: https://github.com/anand-kamble/automatic-grading-using-llm
keywords:
- large language models
- automated grading
- distributed processing
- scalability
- educational technology
authors:
- family-names: "Kamble"
given-names: "Anand"
email: "anandmk837@gmail.com"
orcid: "0000-0003-4003-702X" # Replace with actual ORCID if available
affiliation: "Department of Scientific Computing, Florida State University"
date-released: 2024-11-14
license: "MIT"
abstract: >
This repository contains code and configurations for an automated grading system
using large language models (LLMs) in an educational context. The project explores
scalability, retrieval-augmented generation (RAG), distributed processing, and synthetic data
generation techniques to enhance accuracy and efficiency in automated grading.
GitHub Events
Total
- Push event: 11
- Create event: 2
Last Year
- Push event: 11
- Create event: 2