The Chatbot for Personalized Learning is an AI-powered assistant designed to enhance the learning experience. Using advanced machine learning models and APIs, the chatbot:
- Generates content based on user queries
- Recommends YouTube videos relevant to the topic
This chatbot aims to make learning interactive, engaging, and tailored to the user's needs.
- 🧠 Content Generation: Utilizes Hugging Face's google/flan-t5-large model for generating detailed and accurate responses to user queries
- 🎥 Video Recommendations: Integrates YouTube API to provide curated video recommendations based on the user's query
- 🎯 Personalized Learning: Delivers customized educational resources and guidance tailored to individual users' needs
- 🔄 Seamless LMS Integration: Interacts with external educational repositories to provide topic-specific content
- 💡 NLU-Driven Interactions: Uses advanced Natural Language Understanding techniques for intelligent conversations
- 🐍 Language: Python
- 🤖 Framework: RASA for chatbot development
- 🧪 Machine Learning: Hugging Face Transformers (google/flan-t5-large)
- 📺 APIs: YouTube Data API v3
- 💻 IDE: Visual Studio Code
- 🚀 Frontend: Streamlit
- Intent Recognition: Advanced NLU for understanding user queries
- Dialogue Management: Context-aware conversation handling
- LMS Integration: Seamless connection with educational repositories
- Content Generation: AI-powered response generation
- Video Recommendation: Smart YouTube content curation
- Python 3.8+
- Virtual Environment
- API Keys:
- YouTube Data API key
- Clone the repository:
git clone https://github.com/vermaaatul07/Chatbot_for_Personalized_Learning.git
cd Chatbot-for-Personalized-Learning
- Create and activate virtual environment:
python -m venv venv
# For Windows
venv\Scripts\activate
# For Unix/MacOS
source venv/bin/activate
- Install dependencies:
pip install -r requirements.txt
- Configure API keys:
Create a
.env
file in the root directory:
YOUTUBE_API_KEY=your_key_here
- Train RASA model:
rasa train
- Install Streamlit:
pip install streamlit
- Run the Streamlit app:
# Start RASA server
rasa run --enable-api --cors "*" --port 5005
# In a new terminal, start RASA actions
rasa run actions
# In another terminal, run Streamlit
streamlit run app.py
The application will be available at http://localhost:8501
- Local: Run using Streamlit for development
- Cloud: Deploy to Streamlit Cloud for production
- Docker: Containerization available for scalable deployment
-
Starting a Conversation:
- Launch the Streamlit interface
- Type your question in the chat input
- Press Enter or click Send
-
Getting Responses:
- View AI-generated content
- Explore recommended YouTube videos
- Follow up with related questions
-
Example Interactions:
User: "Explain quantum computing"
Bot: *Generates detailed explanation*
Bot: "Would you like to see some video resources?"
User: "Yes"
Bot: *Provides relevant YouTube links*
This project is licensed under the MIT License - see the LICENSE file for details.