Inspiration
Athena was inspired by the challenge that students face in trying to manage and engage with large volumes of lecture content. Traditional study methods often involve reading dense notes or watching long videos, making it difficult for students to retain and process the information effectively. We wanted to create a solution that would not only streamline the learning process but also make it more engaging, personalized, and efficient. Athena was designed to bridge the gap between static educational materials and interactive, AI-driven learning tools.
What it does
Athena is an intelligent, AI-powered app that helps students manage and interact with their lecture content in a more personalized and effective way. Students can upload their course notes and video links into the app, where the content is processed and transformed into useful learning resources like:
1) AI-generated educational reels: Short, engaging video snippets curated based on course materials to help students quickly review key concepts. 2) Personalized quizzes: Custom quizzes generated based on uploaded content to help students test their knowledge. 3) Summarized content: AI-driven summarization of lengthy notes and videos to make the material easier to digest.
By offering these features, Athena helps students optimize their study sessions and make learning more engaging and interactive.
How we built it
Building Athena involved combining a variety of modern technologies and AI models to create a seamless, user-friendly experience.
1) Backend We chose Python (FastAPI) for the backend because of its speed, simplicity, and ability to handle asynchronous requests. It serves as the foundation for the app, powering everything from user authentication to processing requests.
2) AI Integration For AI-powered features, we used Gemini and Vertex AI to drive key functionalities like summarization, study guide creation, and quiz generation. Gemini’s large language models (LLMs) allowed us to process and understand course materials at a semantic level, enabling Athena to generate meaningful summaries, images and quizzes based on the uploaded content.
3) Data Storage We used Firestore to store user data, uploaded content, quiz scores, and other real-time data. Firestore is a NoSQL database that integrates seamlessly with Firebase, providing us with scalable and flexible data storage. For structured storage of notes and videos, we used AlloyDB. It stores the vector embeddings, document IDs, user data, and the actual text of the chunks from notes or videos, enabling us to efficiently manage and retrieve content.
4) File Storage & Authentication For file storage, Firebase Storage handles the upload and management of large files, such as lecture notes and videos. Firebase Authentication ensures that users can securely log in, protecting their data and content. The authentication system also ensures that users have access only to their own uploaded materials.
Cloud Services To process and analyze images or extract text from documents, we used Google Cloud Platform (GCP)'s OCR capabilities. This allowed us to handle a wide variety of course content, including scanned documents and images containing text, and make it accessible for further AI-driven processing.
Challenges we ran into
1) AI accuracy and relevancy: Fine-tuning the Gemini models using few-shot learning to generate high-quality, relevant summaries and quizzes was challenging. We needed to ensure that the AI models understood the context of the course material accurately to provide meaningful outputs.
2) Handling large files: Uploading and processing large video files and notes required efficient handling, both in terms of storage and processing power. We had to ensure that file uploads were fast, secure, and easily retrievable when needed.
3) Integrating multiple APIs: Integrating Gemini for semantic video search and ensuring the educational reels were contextually relevant was tricky. We had to make sure that the video snippets matched the user’s specific study needs.
4) User data security: Ensuring that user data was securely stored and handled, particularly with Firebase Authentication and Firestore, was a top priority. We had to implement strict access control to protect user privacy.
Accomplishments that we're proud of
We’re incredibly proud of how Athena seamlessly combines AI, cloud services, and real-time data management to create a truly personalized learning experience. Some of our key accomplishments include:
1) Athena’s ability to tailor quizzes and educational reels to individual students based on their uploaded materials is a major achievement.
2) The integration of Gemini AI to summarize content and generate quizzes has allowed us to offer meaningful insights from course materials to make learning new and challenging concepts easier for students.
3) We’re proud of how intuitive and easy-to-use the app is. One of the standout features is the ability to upload course materials and immediately receive AI-generated educational reels. These short, engaging video snippets are tailored to the student’s course content, providing quick and digestible overviews of key concepts.
What we learned
Building Athena taught us a great deal about integrating different technologies and leveraging AI in real-world applications. Some key takeaways include:
1) We learned how to use few-shot learning with large language models (LLMs) to meet specific needs and improve accuracy.
2) Using Firebase and Google Cloud Platform deepened our understanding of cloud services for file storage, data management, and scaling.
3) We improved our skills in integrating third-party APIs, ensuring smooth data flows and making the app robust and responsive.
What's next for Athena
Looking ahead, we have several exciting plans for Athena:
1) We plan to further enhance the app’s personalization features by adding adaptive learning paths, which can adjust based on a student’s performance.
2) We will continue improving the AI models to increase the accuracy and depth of the summaries, quizzes, and educational reels.
Log in or sign up for Devpost to join the conversation.