SMARTGENBOT
"Empowering Learning with Smarter AI, One Query at a Time."
Created on 6th October 2024
•
SMARTGENBOT
"Empowering Learning with Smarter AI, One Query at a Time."
The problem SMARTGENBOT solves
Develop a Gen AI powered tool to make a teaching assistant to teach a student using the Socratic teaching method. The Socratic method is where the assistant asks probing questions and leads the student to the answer instead of revealing the answer.
Read More
Given this is a hard problem, we want to restrict it to one particular topic viz. Learning of Data Structures and Algorithms. Feel free to narrow it down even further if it helps make a high-quality assistant e.g. only for Algorithms of Sorting. That is a topic that should be familiar to most software engineers working on this. As an example, if a test-case times out, the assistant shouldn’t just say: “It timed out because it was a large input size”. It should first pick the right question to ask the student e.g. “What can you say about the difference between this test-case and the other test-cases that passed?” Then depending on what answer the student gives, ask the next relevant question, eventually making the student see that this test-case is quite large and some particular section of their code timed out processing that size. Hence that section needs to be optimized. Several studies have shown that the Socratic method of teaching is very effective for learning, but it is very challenging to scale for any commercial viability anywhere in education, because of a. limited supply of effective teachers who can do this and b. it is not very effective in 1xMany teaching, needing it to be 1x1. AI assistants have the potential to overcome both of these challenges.
Challenges we ran into
Challenges We Ran Into
One major challenge was ensuring accurate query interpretation by the GenAI-powered assistant. Initially, the chatbot struggled to understand complex queries related to data structures and algorithms, often returning irrelevant responses. This was due to the system's reliance on basic keyword matching without deeper contextual understanding.
How We Overcame It:
We addressed this issue by integrating Python NLTK for better natural language processing. We added POS tagging, tokenization, and WordNet for semantic analysis, allowing the assistant to capture the intent behind student queries more accurately. We also expanded the knowledge base with diverse DSA examples and solutions, improving the system's ability to answer complex questions effectively.
This significantly improved the assistant’s ability to handle various types of queries, leading to more relevant and insightful responses.
Technologies used
