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.
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
- 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.
To install the necessary dependencies, run the following command:
pip install -r requirements.txt
To use the MCQ generator, run the streamlit.py
script:
streamlit run streamlit.py
- 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
.
- Sample training data is available in
mcq_training_data.txt
. - Example responses are provided in
response.json
.
The experiments
directory contains a Jupyter notebook (mcq.ipynb
) and a CSV file with machine learning quiz data (machine_learning_quiz.csv
).
A huge thanks to the teams behind LangChain and Streamlit for providing robust tools. Special appreciation to ineuron for the project opportunity.