AlgoBotX
Empower your LeetCode journey with a mentor that stimulates inquiring, reflection and exploration via socratic learning.
Created on 2nd October 2024
•
AlgoBotX
Empower your LeetCode journey with a mentor that stimulates inquiring, reflection and exploration via socratic learning.
Describe your project
Project Description
This project aims to develop a comprehensive Google Chrome Extension leveraging the capabilities of Gemini and Google Cloud, particularly focusing on Vertex AI to enhance learning in Data Structures and Algorithms (DSA). The solution incorporates multiple agents: a web scraper, hint provider, challenger, Socratic teacher, alternate solution generator, assistant, and a real-time speech conversation feature. It provides a unique workflow to assist users in tackling programming challenges, enabling them to interact with the system through chat and voice commands.
In-Scope Features:
- A Chrome Extension that integrates chat and speech functionalities for user engagement.
- Real-time tracking of changes in user's code, such as edits, additions, and removals.
- Various agents designed to offer hints, suggest new test cases, and provide dry runs of user code.
Out-of-Scope Features:
- Integrated code interpreter, so that the model can analyze user's code by running some test cases.
- Automatic requests sent to Gemini, including user code and its differences (like Git), with timestamps for tracking progress.
- Development of more complicated agentaic workflows that specialize in each programming language, requiring tailored agents for languages like Java, C++, and Ruby.
Future Opportunities:
The project opens avenues for further enhancements, such as developing a more intelligent model capable of identifying edge cases and corner scenarios. Future iterations could also focus on refining the Socratic method to promote deeper understanding through interactive learning. Additionally, expanding the functionality to include more programming languages and enhancing the user interface for better user experience could significantly increase its adoption among learners.
Challenges we ran into
1. Speech to Text and Text to Speech in Real Time
Challenge: Minimizing latency in real-time processing.
Solution: Used the Web Speech API for speech synthesis and Google Speech-to-Text for efficient, real-time transcription with callbacks.
2. Prompt Engineering
Challenge: Crafting effective prompts for AI responses.
Solution: Iteratively tested different prompts with Google Vertex AI, refining them based on output quality.
3. Agent Workflow
Challenge: Coordinating and monitoring multiple agents.
Solution: Created an agent-supervisor workflow with LangGraph, enabling real-time performance monitoring and quick adjustments.
4. Building Different Tools for Each Fine-Grained Task
Challenge: Ensuring cohesive tool integration.
Solution: Leveraged pre-built LangChain tools and developed custom tools for specific tasks, like interacting with the leetcode website, maintaining modular architecture for flexibility.
5. How Does the Model Know the Correct Solution?
Challenge: Ensuring accuracy in responses.
Solution: Implemented a system to fetch correct solutions dynamically.
6. How Can the Model Provide Resources?
Challenge: Curating high-quality educational content.
Solution: Developed tools to aggregate information from sources like GeeksforGeeks, Wikipedia, and YouTube.
Tracks Applied (1)
