tools4ds/ai_tutor
1
1---2title: DS701 AI Tutor3description: An LLM based class tutor with RAG for Tools4DS course4emoji: ๐5colorFrom: red6colorTo: green7sdk: docker8app_port: 78609---10 11# DS701: Tools for Data Science - Education Chatbot12 13## Overview14 15This repository contains an LLM-based chatbot designed for the [DS701: Tools for Data Science](https://tools4ds.github.io/fa2024/) 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](https://github.com/edubotics-ai/edubotics-core) a package of modules for data loading, vector store creation and management.16 17The chatbot is in preview on HuggingFace [here](https://tools4ds-ai-tutor.hf.space). Lecture slides are available [here](https://tools4ds.github.io/DS701-Course-Notes/).18 19## Features20 21- 24/7 availability for student queries22- Explanations of key data science concepts23- Guidance on using data science tools and libraries24- Practice problem suggestions and explanations25- Course syllabus and schedule information26 27## Getting Started Locally28 29To run the chatbot locally, follow these steps:30 311. Clone this repository32 33 `git clone https://github.com/tools4ds/ds701-tutor.git`34 352. Set up your Python environment36 37 a. Using venv (Python's built-in virtual environment):38 39 ```python40 python -m venv ds701_env41 source ds701_env/bin/activate # On Windows, use: ds701_env\Scripts\activate42 pip install -r requirements.txt43 ```44 45 b. Using Conda:46 47 ```python48 conda create --name ds701_env python=3.949 conda activate ds701_env50 conda install --file requirements.txt51 ```52 53Note: Make sure to use Python 3.9 or later.54 553. Install dependencies56 57 `pip install edubotics-core`58 594. Set up environment variables. See `apps/ai_tutor/.env.example` for reference.60 615. Run the chatbot62 63 ```python64 cd apps/ai-tutor65 python app.py66 ```67 68 and navigate to localhost:8000 in your browser.69 70## Usage71 72Students can interact with the chatbot through the web interface.73 74Example queries:75 76- "Explain the concept of data normalization"77- "How do I use pandas for data manipulation?"78- "What's the difference between supervised and unsupervised learning?"79 80## Contributing81 82We 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:83 841. Fork the repository and create your feature branch.852. Make your changes, ensuring they align with the project's goals.863. Submit a pull request with a clear description of your improvements.87 88For more detailed information on the contribution process, please refer to our `CONTRIBUTING.md` file (unavailable yet).89 90## Privacy and Data Handling91 92This 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`.93 94## Support95 96If you encounter any issues or have suggestions for improvement, please open an issue in this repository or contact the course instructor.97 98## License99 100This project is licensed under the MIT License - see the `LICENSE.md` file for details.101 