VivaVoce is a web application designed to facilitate remote examinations and assessments. It allows teachers to create tests, students to participate in exams, and provides automated evaluation and feedback using google cloud vertex ai utilizing gemini 1.5x model.
- Teacher Dashboard: Teachers can create tests, manage questions, and review student submissions.
- Student Dashboard: Students can join exams using a unique code, answer questions, and receive instant feedback.
- Automated Evaluation: The application automatically evaluates student responses, providing scores and feedback.
- Speech-to-Text Integration: Allows students to answer questions using speech input, which is converted to text for evaluation.
- Text-to-Speech Integration: Provides audio feedback for students' answers and exam results.
- Secure Authentication: Uses Firebase Authentication for secure user authentication and data management.
-
Vertex AI: Vertex AI is a managed machine learning (ML) platform provided by Google Cloud. In the application, it's used for generative models for text comparison and feedback generation.
-
Pyrebase: Pyrebase is a Python wrapper for the Firebase platform, which provides tools and services for building web and mobile applications.
-
Google Cloud Speech-to-Text (STT): Google Cloud Speech-to-Text is a service that converts speech into text for further processing and analysis.
-
Streamlit: Streamlit is a Python library used for building interactive web applications with simple Python scripts.
-
gTTS (Google Text-to-Speech): gTTS is a Python library and CLI tool to interface with Google Translate's text-to-speech API.
These technologies collectively enable various functionalities within the VivaVoce application, such as creating tests, managing questions, evaluating student responses, providing feedback, and handling authentication.
- Clone this repository to your local machine.
git clone https://github.com/yourusername/vivavoce.git
- Install the required dependencies.
pip install -r requirements.txt
- Run the Streamlit application.
streamlit run app.py
- Teacher Login: Teachers can log in using their credentials to access the dashboard.
- Teacher Dashboard: Create a new test by providing test name, questions, and correct answers.
- Student Login: Students log in using their credentials or sign up if they are new users.
- Student Dashboard: Enter the examination code provided by the teacher to start the exam.
- Answer Questions: Students can answer questions using text input or speech-to-text.
- Submit Answers: Submit the answers once completed to receive instant feedback and scores.
This project is licensed under the MIT License.