File size: 2,340 Bytes
5ddcfe5
 
 
 
 
 
39d5b2a
5ddcfe5
 
 
 
 
 
 
 
4f0b574
5ddcfe5
4f0b574
5ddcfe5
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4f0b574
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
---
title: AI Tutor Chatbot
emoji: πŸ§‘πŸ»β€πŸ«
colorFrom: gray
colorTo: pink
sdk: gradio
sdk_version: 5.20.1
app_file: scripts/main.py
pinned: false
---

### Gradio UI Chatbot

A Gradio UI for the chatbot is available in [scripts/main.py](./scripts/main.py).

The Gradio demo is deployed on Hugging Face Spaces at: [AI Tutor Chatbot on Hugging Face](https://huggingface.co/spaces/towardsai-tutors/ai-tutor-chatbot).

**Note:** A GitHub Action automatically deploys the Gradio demo when changes are pushed to the main branch (excluding documentation and scripts in the `data/scraping_scripts` directory).

### Installation (for Gradio UI)

1. **Create a new Python environment:**

   ```bash
   python -m venv .venv
   ```

2. **Activate the environment:**

   For macOS and Linux:

   ```bash
   source .venv/bin/activate
   ```

   For Windows:

   ```bash
   .venv\Scripts\activate
   ```

3. **Install the dependencies:**

   ```bash
   pip install -r requirements.txt
   ```

### Usage (for Gradio UI)

1. **Set environment variables:**

   Before running the application, set up the required API keys:

   For macOS and Linux:

   ```bash
   export OPENAI_API_KEY=your_openai_api_key_here
   export COHERE_API_KEY=your_cohere_api_key_here
   ```

   For Windows:

   ```bash
   set OPENAI_API_KEY=your_openai_api_key_here
   set COHERE_API_KEY=your_cohere_api_key_here
   ```

2. **Run the application:**

   ```bash
   python scripts/main.py
   ```

   This command starts the Gradio interface for the AI Tutor chatbot.

### Updating Data Sources

This application uses a RAG (Retrieval Augmented Generation) system with multiple data sources, including documentation and courses. To update these sources:

1. **For adding new courses or updating documentation:**
   - See the detailed instructions in [data/scraping_scripts/README.md](./data/scraping_scripts/README.md)
   - Automated workflows are available for both course addition and documentation updates
   
2. **Available workflows:**
   - `add_course_workflow.py` - For adding new course content
   - `update_docs_workflow.py` - For updating documentation from GitHub repositories
   - `upload_data_to_hf.py` - For uploading data files to HuggingFace

These scripts streamline the process of adding new content to the AI Tutor and ensure consistency across team members.