| title | description | emoji | colorFrom | colorTo | sdk | app_port |
|---|---|---|---|---|---|---|
DS701 AI Tutor |
An LLM based class tutor with RAG for Tools4DS course |
🎓 |
red |
green |
docker |
7860 |
This repository contains an LLM-based chatbot designed for the DS701: Tools for Data Science course at Boston University. The chatbot serves as an interactive learning assistant, helping students with course-related queries, explanations of concepts, and guidance on data science tools. It is powered by edubotics-core a package of modules for data loading, vector store creation and management.
The chatbot is in preview on HuggingFace here. Lecture slides are available here.
- 24/7 availability for student queries
- Explanations of key data science concepts
- Guidance on using data science tools and libraries
- Practice problem suggestions and explanations
- Course syllabus and schedule information
To run the chatbot locally, follow these steps:
-
Clone this repository
git clone https://github.com/tools4ds/ds701-tutor.git -
Set up your Python environment
a. Using venv (Python's built-in virtual environment):
python -m venv ds701_env source ds701_env/bin/activate # On Windows, use: ds701_env\Scripts\activate pip install -r requirements.txt
b. Using Conda:
conda create --name ds701_env python=3.9 conda activate ds701_env conda install --file requirements.txt
Note: Make sure to use Python 3.9 or later.
-
Install dependencies
pip install edubotics-core -
Set up environment variables. See
apps/ai_tutor/.env.examplefor reference. -
Run the chatbot
cd apps/ai-tutor python app.py
and navigate to localhost:8000 in your browser.
Students can interact with the chatbot through the web interface.
Example queries:
- "Explain the concept of data normalization"
- "How do I use pandas for data manipulation?"
- "What's the difference between supervised and unsupervised learning?"
We welcome contributions from the community to enhance the DS701 AI Tutor. Whether you're a student, instructor, or developer, your input is valuable. Here's how you can contribute:
- Fork the repository and create your feature branch.
- Make your changes, ensuring they align with the project's goals.
- Submit a pull request with a clear description of your improvements.
For more detailed information on the contribution process, please refer to our CONTRIBUTING.md file (unavailable yet).
This chatbot is designed with student privacy in mind. No personal information is stored, and all interactions are anonymized. For more details, please refer to our PRIVACY_POLICY.md.
If you encounter any issues or have suggestions for improvement, please open an issue in this repository or contact the course instructor.
This project is licensed under the MIT License - see the LICENSE.md file for details.