Inspiration
We were inspired by the protégé effect, which demonstrates that people retain more knowledge when they teach others. This led us to envision a platform where users could teach an AI, reinforcing their own understanding through interaction. Our goal was to enhance traditional learning methods by creating a personalized, dynamic learning experience that adapts to individual needs and encourages deeper engagement with the material.
What it does
Protégé allows users to input a list of topics they wish to learn and guides them through a structured teaching process. The system leverages a knowledge graph to organize these topics, ensuring users learn fundamental concepts before progressing to more advanced ones. This structured sequence helps users build a solid foundation and gradually deepen their understanding.
In addition to topic input, users can upload their personal notes in PDF format which are processed to extract both text and images. The extracted content is then divided into semantically meaningful chunks, which are converted into vector embeddings using machine learning techniques. These embeddings, stored in a vectorized database, allow Protégé to efficiently retrieve and compare information based on the user’s specific topics and queries.
As users begin teaching, Protégé engages them with two AI agents:
- Learner Agent: This agent listens to the user's explanation of a topic and asks clarifying questions. Using cosine similarity, the Learner Agent compares the user’s input with the vector embeddings stored in the database, ensuring that the questions it generates are directly relevant to the user’s personal notes and curriculum. The difficulty of the questions adapts dynamically based on how well the user answers, creating a personalized and responsive learning experience.
- Assessor Agent: This agent evaluates the user's responses, determining whether they are correct, partially correct, or incorrect. If the user makes a mistake, the Assessor Agent communicates with the Learner agent and tell it to ask easier questions to the student.
By combining the notes stored in the vectorized database with a structured knowledge graph, Protégé tailors the learning process to each individual, ensuring that users move through topics in an organized, efficient way. This method not only reinforces knowledge retention but also personalizes the learning experience, making it more relevant and effective.
How we built it
We built Protégé using a variety of tools and frameworks:
- Frontend: HTML, CSS, JavaScript to create a user-friendly interface.
- Backend: Python with Flask to manage data flow and API calls.
- Machine Learning: Leveraged LangChain to build two distinct AI agents – one for learning and one for assessment.
- RAG (Retrieval-Augmented Generation): Incorporated PyPDF2 and Tesseract OCR for processing user-submitted notes, and stored them in MongoDB after vectorization.
- Knowledge Graph: AI was used to build a knowledge graph of topics, and we devised a traversal algorithm for optimized topic sequencing.
What's next for Protégé
We envision several improvements and new features for Protégé:
- Personalized quizzes: Instead of displaying incorrect answers at the end, we’ll generate quizzes tailored to users’ misconceptions to reinforce learning.
- Enhanced analytics: Incorporate detailed insights for users to track their progress over time.
Log in or sign up for Devpost to join the conversation.