https://github.com/simoncwang/ragquiz
A personalized quiz system using retrieval augmented generation.
https://github.com/simoncwang/ragquiz
Last synced: 11 months ago
JSON representation
A personalized quiz system using retrieval augmented generation.
- Host: GitHub
- URL: https://github.com/simoncwang/ragquiz
- Owner: simoncwang
- Created: 2024-12-05T17:37:17.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-01-08T22:44:44.000Z (over 1 year ago)
- Last Synced: 2025-01-08T23:46:05.072Z (over 1 year ago)
- Language: Python
- Size: 10.7 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# RAGQuiz
[**🌐 Blog Post**](https://simoncwang.github.io/projects/personalrag.html)
A personalized quiz system using retrieval augmented generation.
## Instructions
First, **clone this repository** to your local machine:
git clone https://github.com/simoncwang/RAGQuiz.git
Then, **create a Python environment**
Conda:
conda create -n rag-quiz python=3.12
**activate the environment** with
Conda:
conda activate rag-quiz
Next, **install the required packages** with:
pip install -r requirements.txt
Finally, **launch the app** by running:
python3 app.py
which should launch a Gradio demo, follow the url given to the web app.
## Usage
Below is a screenshot example of the UI, once running it will contain some instructions to use the app! (detailed instructions will be updated in the future)

NOTE: You can submit multiple files to be stored in the system, and the generate quiz function will randomly select a file from your list to create a question! Files can be uploaded directly from your computer, OR through URL (content is scraped using Selenium).
### Launching a public demo
By default, the app.py script launches a demo running on a local server. If you would like to create a share-able public link, on the last line of app.py add the "share=True" argument to the Gradio demo launch. This will create a link that lasts for 72 hours as long as you leave the script running, and can be shared with others.
demo.launch(server_name='0.0.0.0', share=True)