Inspiration
There are many platforms focused on education, but the most efficient way to learn is still talking to real human in order to understand complicated mathematical concepts or when children start thinking of how to tackle challenging problems. It's not easy to find the solution. Many students think differently and can face completely different problems. Our platform engages students with fun process of playing around with mathematical and physical problems, discussing their solution and finally arriving at the correct answer. It allows students to ask questions about anything that is unclear, so that it's not cold textbook solutions which might not even make any sense at first. We think it will be valuable resource for students with different backgrounds and different pace of learning. We also believe it can be a great help for teachers as they can manage their students' learning by uploading or suggesting problems, and tracking the learning progress. This new way of learning will be significantly more affordable for people.
What it does
While learning new things, have you ever lacked someone on your side? Someone patient and knowledgeable, who would always be there for you? We've built an AI-powered helper for anyone who's learning maths, computer science, physics or anything else. Start with choosing a task and just give it a go. Stuck in the very beginning? In need of a nudge? Not sure if you got it right? Our chat bot will friendly evaluate your performance, provide hints when you need them so much, or just explain the correct solution for you. Ask as many questions as you like - no judgement, just knowledge and encouragement to learn more!
How we built it
We used - surprise surprise - the Claude API! Specifically, on the backend we have a state machine guiding the conversation to provide some the right structure, ensuring that the student can get the help they need, but staying focused on the topic. The student's responses are interpreted by Claude, driving the state machine.
On the front-end, we use a simple approach with a Gradio app for the frontend - no surprises, if it works, why overengineer it?
Finally, to get the data, we use Haystack to parse a PDF with problems and solutions, and clean up their formatting using the Claude API (basically getting rid of the PDF artifacts)
Challenges we ran into
Of course the problems can be solved by several different approaches. We've experimented with Claude providing different solutions based on the student's progress, and it shows the potential to understand which one student is close to. It's not included in the current version, but it is something that can be integrated in the future as the capabilities grow larger.
Accomplishments that we're proud of
We proud that we were able build a machine that can actually walk you through the logic of quite complicated challenges and puzzles. We proud that this is actually useful and can bring something useful for Students in reality, they can learning in fun and engaging way. We think that it is cool product that can be extended in transparent way. It actually kinda works and can be pretty helpful! Multiple members of our team expressed an interest in actually using this to study some difficult topics in the future - some of us already use LLMs for that purpose, and this is basically supercharging them. The conversation flows pretty naturally, and our state machine has sufficient skip-connections to prevent it from getting stuck.
What we learned
We learned about designing prompts and integrating LLMs with structured and less structured contexts. And, along the way, we all learned some combinatorics!
What's next for Tutor at Home
As mentioned earlier, allowing the student to follow their own reasoning, and having Claude adapt to that and help them figure things out their own way (not necessarily following the model solution) is definitely possible in the future and on our roadmap. We also experimented with other problem formats, such as coding problems. Claude is capable of giving the right feedback on easy problems. For example, for time limit exceeded verdict it indicated that the user's solution is implemented in O(N^2) while more efficient solution exists. Adding a layer to parse and understand drawings, which are useful for a large class of problems is one of the possible next steps for tutor-at-home.
Built With
- claude
- gradio
- haystack
- python
Log in or sign up for Devpost to join the conversation.