rag-chatbot  by datvodinh

Chatbot for local PDF interaction

created 1 year ago
565 stars

Top 57.8% on sourcepulse

GitHubView on GitHub
Project Summary

This project provides a local chatbot that can converse with multiple PDF documents. It is designed for users who want to query their documents without relying on cloud services, offering a simple UI and flexibility in model selection.

How It Works

The chatbot leverages a Retrieval-Augmented Generation (RAG) approach. It processes PDF inputs, likely using an embedding model to create vector representations of the document content. When a user asks a question, the system retrieves relevant document chunks based on semantic similarity and then feeds these chunks, along with the question, to a language model (from Huggingface or Ollama) to generate an answer.

Quick Start & Requirements

  • Install/Run:
    • Docker: docker compose up --build
    • Local Script: source ./scripts/install_extra.sh followed by source ./scripts/run.sh
    • Manual: Install Ollama and Ngrok, then pip install rag_chatbot and run python -m rag_chatbot --host localhost.
  • Prerequisites: Ollama (for local LLM execution), Ngrok (for external access, optional).
  • Setup: Docker is recommended for ease of use. Local setup involves installing Ollama and Ngrok, then the Python package.
  • Links: Kaggle notebook: notebooks/kaggle.ipynb

Highlighted Details

  • Supports local execution using Huggingface or Ollama models.
  • Processes multiple PDF inputs for querying.
  • Features a simple UI built with Gradio.
  • Includes scripts for streamlined setup and execution.

Maintenance & Community

No specific contributors, sponsorships, or community links (Discord/Slack) are mentioned in the README.

Licensing & Compatibility

The README does not explicitly state a license.

Limitations & Caveats

The project is experimental, with features like multi-language support and advanced document management still under development. Support for non-English embedding models is also a future goal.

Health Check
Last commit

9 months ago

Responsiveness

1 week

Pull Requests (30d)
0
Issues (30d)
0
Star History
51 stars in the last 90 days

Explore Similar Projects

Feedback? Help us improve.