https://github.com/aliktk/mcq-generator
The MCQ Generator web app leverages OpenAI's language models via LangChain to generate multiple-choice questions (MCQs) from uploaded PDF or text files. Users can customize settings such as the number of questions, subject, and difficulty level. The app provides real-time feedback on complexity and displays the MCQs in a clear, easy formate.
https://github.com/aliktk/mcq-generator
llms mcq-test openai-api streamlit
Last synced: 3 months ago
JSON representation
The MCQ Generator web app leverages OpenAI's language models via LangChain to generate multiple-choice questions (MCQs) from uploaded PDF or text files. Users can customize settings such as the number of questions, subject, and difficulty level. The app provides real-time feedback on complexity and displays the MCQs in a clear, easy formate.
- Host: GitHub
- URL: https://github.com/aliktk/mcq-generator
- Owner: Aliktk
- License: apache-2.0
- Created: 2024-09-15T18:14:44.000Z (9 months ago)
- Default Branch: main
- Last Pushed: 2024-09-16T18:48:41.000Z (9 months ago)
- Last Synced: 2025-01-22T08:37:17.319Z (5 months ago)
- Topics: llms, mcq-test, openai-api, streamlit
- Language: Jupyter Notebook
- Homepage:
- Size: 31.3 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# **MCQ Generator: AI-Powered Multiple-Choice Question Creator**
[](https://www.linkedin.com/in/ali-nawaz-khattak/)
## Overview
The **MCQ Generator** is an AI-driven project that automates the generation of multiple-choice questions (MCQs) from a given text, evaluates their difficulty, and presents them through an interactive web interface. This tool combines OpenAI's language models with LangChain and Streamlit to deliver a seamless experience for creating and interacting with educational content.
---
## 📝 Table of Contents
- [**MCQ Generator: AI-Powered Multiple-Choice Question Creator**](#mcq-generator-ai-powered-multiple-choice-question-creator)
- [Overview](#overview)
- [📝 Table of Contents](#-table-of-contents)
- [📁 Project Structure](#-project-structure)
- [✨ Features](#-features)
- [💻 Installation](#-installation)
- [🚀 Usage](#-usage)
- [⚙️ Configuration](#️-configuration)
- [📊 Data](#-data)
- [🔬 Experiments](#-experiments)
- [🙏 Acknowledgements](#-acknowledgements)---
## 📁 Project Structure
```bash
MCQ-Generator/
├── .gitignore
├── README.md
├── mcq_training_data.txt
├── requirements.txt
├── response.json
├── setup.py
├── streamlit.py
├── experiments/
│ ├── data/Machine_Learning_Quiz.csv
│ └── mcq.ipynb
└── src/
├── __init__.py
└── mcqgenerator/
├── MCQgenerator.py
├── logger.py
└── utils.py
```## ✨ Features
- **MCQ Generation**: Generate MCQs from provided text using advanced natural language processing techniques.
- **Complexity Evaluation**: Assess the complexity of the generated MCQs.
- **Web Interface**: User-friendly web interface to interact with the MCQ generator.## 💻 Installation
To install the necessary dependencies, run the following command:
```bash
pip install -r requirements.txt
```## 🚀 Usage
To use the MCQ generator, run the `streamlit.py` script:
```bash
streamlit run streamlit.py
```## ⚙️ Configuration
* Adjust project settings in `setup.py`.
* Manage logging configurations in `src/mcqgenerator/logger.py`.You can configure various aspects of the project in the `setup.py` file and adjust logging settings in `src/mcqgenerater/logger.py`.
## 📊 Data
* Sample training data is available in `mcq_training_data.txt`.
* Example responses are provided in `response.json`.## 🔬 Experiments
The `experiments` directory contains a Jupyter notebook (`mcq.ipynb`) and a CSV file with machine learning quiz data (`machine_learning_quiz.csv`).
## 🙏 Acknowledgements
A huge thanks to the teams behind LangChain and Streamlit for providing robust tools. Special appreciation to ineuron for the project opportunity.