A personalized AI mentor that helps you review and improve on LeetCode problems using your own study history.
This project implements a Retrieval-Augmented Generation (RAG) pipeline that ingests your LeetCode practice logs (from Excel) and allows you to chat with an AI that knows your specific past mistakes, confidence levels, and notes.
It uses LangChain, ChromaDB, and OpenAI to index your notes and retrieve relevant past solutions when you ask questions.
This project is currently under active development. The current version uses Gradio, but major updates are planned:
- Retriever Optimization: Improving the
SelfQueryRetrieverlogic to make context retrieval more reliable. - Frontend Migration: Moving from Gradio to Chainlit for a more robust chat interface.
- History Persistence: Implementing logic to save and resume previous conversation sessions.
-
Configure Environment: Create a
.envfile in the root directory:OPENAI_API_KEY=your_api_key EXCEL_PATH=path/to/your/leetcode_excel_file.xlsx
-
Data Source: The system expects an Excel file containing your practice history (columns:
date,question_name,difficulty,topic,algorythm,notes_/_mistakes,confidance). -
Run the App:
python gradio_app.py
- LangChain (Orchestration)
- ChromaDB (Vector Store)
- OpenAI (Embeddings & LLM)
- Pandas (Data Ingestion)
- Gradio (Current UI)