lijianshe02 / rag-chatbot

Chat with multiple PDFs locally

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

πŸ€– Chat with multiple PDFs locally

alt text

πŸ“– Table of Contents

⭐️ Key Features

  • Easy to run on Local or Kaggle (new)
  • Using any model from Huggingface and Ollama
  • Process multiple PDF inputs.
  • Chat with multiples languages (Coming soon).
  • Simple UI with Gradio.

πŸ’‘ Idea (Experiment)

πŸ’» Setup

1. Kaggle (Recommended)

2. Local

2.1. Clone project

git clone https://github.com/datvodinh/rag-chatbot.git
cd rag-chatbot

2.2 Install

2.2.1 Docker

docker compose up --build

2.2.2 Using script (Ollama, Ngrok, python package)

source ./scripts/install_extra.sh

2.2.3 Install manually

1. Ollama
curl -fsSL https://ollama.com/install.sh | sh
2. Ngrok
  • Macos
brew install ngrok/ngrok/ngrok
  • Linux
curl -s https://ngrok-agent.s3.amazonaws.com/ngrok.asc \
| sudo tee /etc/apt/trusted.gpg.d/ngrok.asc >/dev/null \
&& echo "deb https://ngrok-agent.s3.amazonaws.com buster main" \
| sudo tee /etc/apt/sources.list.d/ngrok.list \
&& sudo apt update \
&& sudo apt install ngrok
3. Install rag_chatbot Package
source ./scripts/install.sh

2.3 Run

source ./scripts/run.sh

or

python -m rag_chatbot --host localhost
  • Using Ngrok
source ./scripts/run.sh --ngrok

3. Go to: http://0.0.0.0:7860/ or Ngrok link after setup completed

🎯 Todo

  • Add evaluation.
  • Better Document Processing.
  • Support better Embedding Model for Vietnamese and other languages.
  • ReAct Agent.
  • Document mangement (Qrdant, MongoDB,...)

🌟 Star History

Star History Chart

About

Chat with multiple PDFs locally

License:Apache License 2.0


Languages

Language:Python 95.6%Language:Jupyter Notebook 3.0%Language:Shell 1.2%Language:Dockerfile 0.2%