Practical overview
When it fits
Use it when you want a locally run or Kaggle-based chat workflow for questions spanning multiple PDFs, and are comfortable setting up the project and its model environment.
Who it is for
- Readers and researchers who want to ask questions across a collection of PDF documents.
- Developers seeking a self-hosted, Python-based starting point for multi-PDF chat.
- People experimenting with document question answering through Hugging Face or Ollama models.
Documented uses
- Ask questions across multiple PDF files in a chat interface.
- Set up a local PDF question-answering application.
- Prepare the provided Kaggle notebook route for multi-PDF chat experiments.
Requirements & limits
The project is a public GitHub repository under the Apache-2.0 license. Its README documents local and Kaggle setup paths.
- The documented interface is Gradio, and the application is Python-based.
- Model choices named in the README include Hugging Face and Ollama.
- The Kaggle path calls for an Ngrok token; the local README also provides launch instructions without the Ngrok option.
- Docker Compose, a setup script and manual dependency installation are documented routes.
- Multilingual chat is listed as coming soon, not as a current documented feature.
Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.
Set up Rag Chatbot locally
Install and start the documented local Gradio application.
Before you start
- A local environment for the repository’s documented setup.
- The project README specifies installing uv and ensuring its default ~/.local/bin location is on PATH.
- Docker Compose is documented as an alternative installation route.
Steps
Clone https://github.com/datvodinh/rag-chatbot and change into the rag-chatbot directory.
Install uv and ensure ~/.local/bin is on PATH.
Choose a documented installation path: run docker compose up --build, use bash ./scripts/install_extra.sh, or install Ollama and Ngrok as needed and run uv sync --locked.
Start the app with bash ./scripts/run.sh or uv run python -m rag_chatbot --host localhost.
Open the local address given in the README, or use the Ngrok option with bash ./scripts/run.sh --ngrok.
Expected outcome
The README describes opening the Gradio interface at http://0.0.0.0:7860/ or an Ngrok link after setup.
Guide limitations
- The Ngrok launch option presupposes Ngrok setup; the README’s basic local launch command is separate.
Prepare the Kaggle notebook setup
Configure the documented Kaggle notebook route before use.
Before you start
- Access to Kaggle and the project notebook.
- An Ngrok token, as required by the notebook setup instructions.
Steps
Import notebooks/kaggle.ipynb into Kaggle.
Replace in the notebook with your token.
Expected outcome
The notebook has the two setup changes specified in the repository instructions.
Sources & review
Source record details
- Source availability
- Active
- Sources checked
- 9 October 2026
- Original website title
- datvodinh/rag-chatbot · Official homepage title · retained in its source language

