This repository contains the code of an AI app, which is able to generate MCQs quiz, based on the data, difficulty & subject provided by the user. The AI Model is fine-trained & is made on top of GPT-4o & LangChain. The UI is made using Streamlit. This AI application is helpful for eduactional purposes, resulting in increase of knowledge, in particular domain.
👉 MCQ Generation from Documents: Users can upload PDF or text files, and the app generates multiple-choice questions (MCQs) based on the content using GPT-4.
👉 Customizable Question Count: Users can specify the number of MCQs they want to generate from the document.
👉 Subject and Tone Selection: Users can provide the subject and specify the complexity level of the questions for tailored quiz generation.
👉 Automatic Quiz Table: Generated MCQs are automatically displayed in a table format using Pandas, allowing users to easily review and analyze them.
👉 Detailed Review Section: The app generates a review of the MCQs, assessing the complexity and providing feedback.
👉 PDF and Text File Support: Users can upload both PDF and text files as input for quiz generation.
👉 Streamlined Interface: Built with Streamlit, the app provides a user-friendly interface for easy navigation and interaction.
👉 Real-time Cost & Token Usage Monitoring: Displays token usage and cost of the API call to OpenAI, ensuring transparency for users.
- Python - Programming Language
- LangChain - LLM Framework
- GPT-4o - OpenAI Model
- Streamlit - Python Framework
To get started with this project, follow these steps:
- Clone the repository:
git clone https://github.com/Mubassim-Khan/QuizMaster-AI.git
-
Open the project in your preferred code editor.
-
Create a virtual environment of suitable python version using:
conda create -p venv python=3.x -y`
- Activate environment using:
`source activate ./venv` or `conda activate ./venv`
- Install the project dependencies using pip:
pip install -r requirements.txt
- Set Up Environment Variables by creating a new file named
.env
in the root of your project and add the following variables:
OPENAI_API_KEY="your credentials"
- Run the project
`streamlit run StreamlitApp.py` or `python -m streamlit run StreamlitApp.py`
- Open http://localhost:8501 to view it in your browser.
This project is licensed under the MIT License.
Contributions to this project are welcome. If you find any issues or have suggestions for improvements, please open an issue or submit a pull request.
- Copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
If you have any questions, suggestions, or feedback, you can reach out to the project maintainer:
- LinkedIn : Mubassim Ahmed Khan
- Email: [email protected]