AI-Powered DSAthon
🚀 Inspiration
While preparing for coding interviews at product-based companies, we faced several challenges:
- Scattered resources – Finding high-quality explanations took too much time.
- Lack of structured progress tracking – Measuring improvement was difficult.
- Difficulty in identifying weak areas – No clear way to focus on topics we struggled with.
We wanted to build an AI-powered assistant that provides instant DSA answers, tracks progress, and recommends personalized coding problems—all in one place.
💡 What it Does
Our AI-Powered DSAthon Assistant helps users:
✅ Get Instant DSA Answers – Uses Retrieval-Augmented Generation (RAG) for fast, accurate responses.
✅ Track Learning Progress – Visualizes completed vs. pending topics in an interactive dashboard.
✅ Identify Weak And Strong Areas – Highlights topics that need more practice or revise.
✅ Receive Personalized Coding Challenges – Suggests problems from various coding platforms.
✅ Interactive Learning with AI Chatbot – Allows users to ask topic-related questions.
🔨 How We Built It
1️⃣ Data Processing & FAISS Indexing
- Extracted DSA content from DOCX files.
- Converted text into vector embeddings for fast retrieval.
- Used FAISS (Facebook AI Similarity Search) for efficient indexing.
2️⃣ AI Chatbot with RAG & LLM
- FAISS-powered semantic search retrieves the most relevant DSA concepts.
- GenAI Response when no document match is found.
3️⃣ DSA Tracker & Coding Recommendation Bot
- Stored user progress (completed & pending topics) in MongoDB.
- Built a dashboard to visualize learning progress.
- Designed a problem recommendation system that suggests coding problems based on weak areas from various coding platforms like Leetcode, HackerRank, CodeForces etc.
4️⃣ Interactive UI with Streamlit
- Created a chat-based UI for DSA Q&A.
- Added interactive charts for progress tracking.
- Allowed users to mark topics as completed dynamically.
🚧 Challenges We Ran Into & How We Solved Them
✅ Challenge: Slow response time
➡ Solution: Cached embeddings, optimized FAISS search, and minimized LLM API calls.
✅ Challenge: Ensuring accurate responses
➡ Solution: Tuned FAISS similarity thresholds and implemented hybrid search (document retrieval + LLM fallback).
✅ Challenge: Managing user progress efficiently
➡ Solution: Used MongoDB to store topic completion status & performance analytics.
✅ Challenge: Creating personalized coding recommendations
➡ Solution: Mapped weak areas to relevant problems dynamically based on user history.
🏆 Accomplishments That We're Proud Of
🎯 Successfully built an AI-powered assistant that makes learning DSA easier and more structured.
🎯 Optimized RAG(FAISS search) + Generative AI fallback for fast, accurate responses.
🎯 Designed an Intelligent problem recommendation system tailored to user needs.
🎯 Created an Interactive Streamlit UI for seamless learning and tracking.
📚 What We Learned
🔥 Retrieval-Augmented Generation (RAG) – How FAISS enhances LLM responses.
🔥 FAISS Optimization – Fine-tuning similarity search for best results.
🔥 Generative AI Integration – Handling LLM-based fallback mechanisms.
🔥 Data Engineering – Efficiently storing DSA progress & recommendations in MongoDB.
🔥 Performance Optimization – Reducing response time via caching and optimized indexing.
🚀 What's Next for AI-Powered DSA Learning Assistant
✔ Adding quizzes & coding challenges for hands-on learning.
✔ Enhancing AI-generated explanations for better clarity.
✔ Expanding support beyond DSA (e.g., system design, competitive programming).
✔ Integrating a leaderboard & study groups for collaborative learning.
🎯 With AI, learning DSA doesn’t have to be overwhelming—it can be smart, fast, and fun! 🚀
Log in or sign up for Devpost to join the conversation.