ExQuizMe.Demo.mp4
This project provides a Flask API for processing video files to generate text transcriptions using the Open AI's Speech to Text Whisper model and subsequently creating quizzes with the transcriptions using Mistral-7b LLM.
In today's digital era, the abundance of educational video content presents both opportunities and challenges for learners. This AI Video Summarization and Quiz Generation Tool addresses the need for efficient educational tools by leveraging state-of-the-art Large Language Models (LLMs) to extract key concepts from educational videos, generate concise summaries, and create quizzes to reinforce learning.
The project aims to enhance the learning experience by providing a comprehensive platform that combines video summarization with interactive quiz generation, making it easier for learners to grasp and retain essential information from educational videos.
- Video content extraction and processing
- Speech-to-text conversion using OpenAI's whisper-large-v3
- Key concept extraction and summarization
- Quiz generation based on video content using Mistral-7B-Instruct-v0.1 LLM
- User-friendly interface for video upload and interaction
- Cloud-based deployment on AWS EC2, Microsoft Azure
- Speech-to-Text Model: OpenAI Whisper ("openai/whisper-large-v3")
- Quiz Generation Model: Mistral AI ("mistralai/Mistral-7B-Instruct-v0.2")
- Cloud Infrastructure: AWS EC2, Azure Virtual Machine
- Programming Language: Python
- Web Framework: Flask (for backend API)
- Frontend: HTML, CSS, JavaScript
-
Clone the repository:
-
Create and activate a virtual environment:
- Navigate to the project directory:
cd path/to/project
- Create a virtual environment:
python -m venv venv
- Activate the virtual environment:
- On Windows:
.\venv\Scripts\activate
- On macOS/Linux:
source venv/bin/activate
- On Windows:
- Install dependencies:
With the virtual environment activated, install the requirements using:
pip install -r requirements.txt
To start the Flask server, run:
Change domain = 'enter-your-hostname' in templates/index.html
Use Ec2 instance public address or local host.
python run.py
This command launches the server, typically accessible at http://127.0.0.1:5000/
.
- Make sure
ffmpeg
is installed on your system as it's required for the audio extraction functionality. - Adjust paths and configurations as necessary according to your setup.
You can use CLI as showcased in the videos or you can enter your token in the following codes in mixtral_wrapper.py.
from huggingface_hub import login
login(token="enter-your-token")
- VCPU's : >16
- RAM : >32Gb
- GPU Required: Yes!!!
- Storage Requirement: >=100Gb