MLH Quizzet
This is a smart Quiz Generator that generates a dynamic quiz from any uploaded text/PDF document using NLP. This can be used for self-analysis, question paper generation, and evaluation, thus reducing human effort.
Features
- implements automatic question generation (AQG) techniques > Automatic question generation (AQG) is concerned with the construction of algorithms for producing questions from knowledge sources, which can be either structured (e.g. knowledge bases (KBs) or unstructured (e.g. text))
- helps in resource saving(time, money, and human effort)
- enables the enrichment of the teaching process, adapt learning to student knowledge and needs, as well as drill and practice exercises
- presents an automatic mechanism to assemble exams or to adaptively select questions from a question bank
WorkFlow

Input
- Input in the form of a text/PDF file that consists of English text data
- The English text must preferably be over a single broad topic with multiple smaller subtopics
- The helps in generating a good quiz for the user to practice on
Text Pre-processing
- Text is pre-processed so it can be in a format as expected by the natural-language models
- non-alphanumeric characters(except full stops) are dropped
- This also helps improve the output of the natural language model
Named Entity Recognition + Entity Ranking
- Spacy’s NER model is used to find the named entities from the given text. These consist of people’s names, dates, places, quantities, etc.
- These entities are good candidate questions and are ranked based on their TF-IDF score ( a metric used to weigh a word across multiple documents )
Incorrect Option Generation
- A Word2Vec model implemented in gensim is used to find the top 10 similar entities for a given entity. We then pick the least 4 entities as alternate options.
- We can also pick words from the given text itself if the entity is not present in the model vocabulary
Technology Stack:
- Frontend: HTML, CSS, Vanilla JS
- Backend: Flask
- IDE: VS Code
- Design: Canva
- Version Control: Git and GitHub
- Database: Sqllite3
Browser Support
- Firefox: version 4 and up
- Chrome: any version
- Safari: version 5.2 and up
- Internet Explorer/Edge: version 8 and up
- Opera: version 9 and up > Note: Support for modern mobile browsers is experimental. The website is not responsive in mobile devices until now.
MLH Fellowship( Fall 2020)
This is a hackathon project made by MLH Fellows(Fall 2020) - Pod 1.0.0 i.e. Fantastic Falcons
Team:
"Alone we can do so little; together we can do so much."
| S.No. | Name | Role | GitHub Username:octocat: |
|---|---|---|---|
| 1. | Pragati Verma | Frontend Developer | @PragatiVerma18 |
| 2. | Kshitij Kotasthane | Backend Developer | @kshitij86 |
| 3. | Vignesh S | ML | @telescopic |

Contributors ✨
Thanks goes to these wonderful people (emoji key):
Pragati Verma 💻 |
Kshitij Kotasthane 💻 |
Vignesh S 💻 |
This project follows the all-contributors specification. Contributions of any kind welcome!
Built With
- complexityintelligence-named-entity-recognition
- css
- flask
- html
- javascript
- jinja
- mlh
- natural-language-processing
- python
- quiz-generator
- spacy
- werkzeug



Log in or sign up for Devpost to join the conversation.