An AI-powered interactive learning assistant that helps users understand deep learning concepts through conversation and automated quizzes. Built with Streamlit, LangChain, and Groq LLM.
- Intelligent Q&A: Get precise answers to your deep learning questions using content from the d2l.ai textbook
- Interactive Quizzes: Automatically generated multiple-choice questions to test your understanding
- Conversation History: Keep track of your learning sessions with organized chat history
- Smart Context Understanding: Utilizes FAISS similarity search for accurate and relevant responses
- Real-time Learning Assessment: Immediate feedback on quiz performance
- Frontend: Streamlit
- Language Model: Groq API (deepseek-r1-distill-llama-70b)
- Embeddings: HuggingFace's sentence-transformers (all-MiniLM-L6-v2)
- Vector Store: FAISS
- Document Processing: LangChain
- Text Processing: PyPDF2
- Python 3.8+
- Groq API key
- Required Python packages (see requirements.txt)
- Clone the repository:
git clone [your-repo-url]
cd deep-learning-assistant- Install required packages:
pip install -r requirements.txt- Prepare the knowledge base:
python preprocess.py- Run the application:
streamlit run app.pydeep-learning-assistant/
├── app.py # Main Streamlit application
├── preprocess.py # Data preprocessing script
├── requirements.txt # Project dependencies
├── data/ # Directory for processed data
│ └── faiss_db/ # FAISS vector store
└── README.md
- Start by running the preprocessing script to create the FAISS database
- Launch the Streamlit app
- Ask questions about deep learning concepts
- Generate and take quizzes to test your understanding
- Review your chat history and track your progress
- The assistant is specifically designed for deep learning topics and will not answer unrelated questions
- Responses are based on the content from d2l.ai textbook
- Internet connection required for Groq API calls
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
- d2l.ai for the comprehensive deep learning content
- Daniel Bourke and Krish Naik for inspiration
- Groq for providing the LLM API
- HuggingFace for the sentence transformers
- The Streamlit team for the amazing framework
Akilsurya Sivakumar - akilsurya20399@gmail.com
Don't forget to ⭐ the repo if you find this project useful!