Inspiration
Ever faced existential crises and imposter syndrome from College workload? You're not alone! Picking up content at the pace your lecturers expect is nigh impossible, but we're here to help.
What it does
Erudite helps users learn better by providing structure and self-guided learning when preparing for a class. We achieve this through 3 main features.
Reducing Cognitive Leaps
By structuring a student's learning journey through topical segregation and concept decomposition, Erudite makes content mastery easier. Leveraging LLM's abilities to decompose questions into more digestible subsets, Erudite cultivates a learner's critical thinking capabilities. This enables users to learn how to solve questions instead of just blindly throwing themselves against the wall
Topologically Sorting Topics
By feeding course content into our LLM, we are also able to generate the relevant dependencies between the different topics taught in a class. This allows users to scope their revision to the topic level and allows a more targeted approach to addressing weak points. This also creates the opportunity for users to catch up on and practice content that they might have otherwise missed or fallen behind on.
Periodic Evaluation
Users can use our diagnostic evaluation feature to do a holistic assessment of their understanding of the course content. The evaluation will give them a benchmark of their competency, and guide them to further practices and resources where needed.
How we built it
For this project, we utilized the Next.js + Prisma + CockroachDB stack for our web application, and LangChain and Together.ai for our LLM. We parsed past year papers questions and answers using PyTesseract and categorized them using the LLM's NLP capabilities. For subsequent parts of Erudite, this data is fed to various custom models and llms chains for the generation of question prompts and evaluation of users' answers to produce personalised and relevant feedback. Our application is supported by CockroachDB in view of the underlying nature of our dataset. We used Prisma ORM for interaction with CockroachDB and built our front end using Next.js to provide a seamless user experience.
Challenges we ran into
As usual with such projects, integration of the different moving parts proved to be challenging. The progress of the different parts move tangentially and exponentially, and keeping abreast of these developments required a concerted effort from all of us.
Accomplishments that we're proud of
Managed to create a full-stack web application with an integrated LLM to provide a seamless user experience to achieve our intended vision of revolutionising learning.
What we learned
This is our team's first deep-dive foray into technologies such as Prisma and CockroachDB, as well as into the deeper mechanics of LLMs beyond just asking a question on ChatGPT. As such, we gained a deeper appreciation of these technologies through this experience.
What's next for Erudite
Some features we hope to develop further would be a content summarizer, integrate contents from other sources (e.g. EdStem, bCourses), and expand functionality to VR/AR for diagram visualization.
Built With
- cockroachdb
- llm
- nextjs
- prisma
- python
- tailwind
- together.ai
- typescript
Log in or sign up for Devpost to join the conversation.