title: AI Class Tutor -- Dev
description: An LLM based AI class tutor with RAG on DL4DS course
emoji: πΆ
colorFrom: red
colorTo: green
sdk: docker
app_port: 7860
DL4DS Tutor π
Check out the configuration reference at Hugging Face Spaces Config Reference.
You can find a "production" implementation of the Tutor running live at DL4DS Tutor  from the
Hugging Face Space. It is pushed automatically from the main branch of this repo by this
Actions Workflow upon a push to main.
A "development" version of the Tutor is running live at DL4DS Tutor -- Dev from this Hugging Face
Space. It is pushed automatically from the dev_branch branch of this repo by this
Actions Workflow upon a push to dev_branch.
Setup
Please visit setup for more information on setting up the project.
Running Locally
- Clone the Repository - git clone https://github.com/DL4DS/dl4ds_tutor
- Put your data under the - storage/datadirectory- Add URLs in the urls.txtfile.
- Add other PDF files in the storage/datadirectory.
 
- Add URLs in the 
- To test Data Loading (Optional) - cd code python -m modules.dataloader.data_loader --links "your_pdf_link"
- Create the Vector Database - cd code python -m modules.vectorstore.store_manager- Note: You need to run the above command when you add new data to the storage/datadirectory, or if thestorage/data/urls.txtfile is updated.
 
- Note: You need to run the above command when you add new data to the 
- Run the FastAPI App - cd code uvicorn app:app --port 7860
Documentation
Please visit the docs for more information.
Docker
The HuggingFace Space is built using the Dockerfile in the repository. To run it locally, use the Dockerfile.dev file.
docker build --tag dev  -f Dockerfile.dev .
docker run -it --rm -p 8000:8000 dev
Contributing
Please create an issue if you have any suggestions or improvements, and start working on it by creating a branch and by making a pull request to the dev_branch.
Please visit contribute for more information on contributing.
Future Work
For more information on future work, please visit roadmap.
