OpenViSTAI · Agents · Blockchain · Crypto
Menu
RAG & Knowledge Systems

PDF Q&A Bot

PDF Q&A Bot is a self-hosted web application for uploading PDFs, asking questions grounded in their contents, and generating summaries. Its React interface connects to an Express API gateway, which coordinates a Python FastAPI retrieval-augmented generation service using Hugging Face embeddings and a configurable text-generation model.

Independent OpenViST project profile, based on linked sources.

PDF Q&A Bot — OpenViST project profile in RAG & Knowledge Systems.
OpenViST project illustration. See the linked sources for product details.
Understand the project

Practical overview

When it fits

Use it when you want a locally run interface for asking questions about PDFs or summarizing their contents, and can manage its three-service setup and model downloads.

Who it is for

  • Individuals or teams who want to query a selected collection of PDF documents.
  • Developers seeking a self-hosted, open-source starting point for a PDF knowledge assistant.

Documented uses

  • Upload and index PDF documents for later questions.
  • Ask natural-language questions and receive answers based on retrieved document passages.
  • Generate concise, bullet-style summaries from retrieved context.
  • Review PDFs in the browser and export conversation history as CSV or plain text.
Before you choose

Requirements & limits

The repository is public and lists an MIT license. The README documents local and Docker Compose deployment.

  • The local stack has three components: React, an Express gateway and a FastAPI RAG service.
  • The documented embedding model is sentence-transformers/all-MiniLM-L6-v2; the default generation model is google/flan-t5-base.
  • The first model download is about 1 GB total; the project recommends 8 GB or more of RAM and notes that CPU inference is slower than GPU inference.
  • FAISS indexes reside in process memory, so restarting the RAG service clears sessions and requires re-uploading PDFs.
  • The README requires matching INTERNAL_RAG_TOKEN values for the gateway and RAG service, and a JWT_SECRET for the Express authentication flow.

Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.

Source-based practical guide

Run the three services with Docker Compose

Start the documented local web interface, Express gateway and FastAPI RAG service using Docker Compose.

Before you start

  • Docker
  • Docker Compose
  • A clone of the repository

Steps

  1. Open a terminal in the repository root.

  2. Run docker-compose up -d --build.

  3. Open the frontend at http://localhost:3000.

Expected outcome

The README lists the frontend, Express API gateway and FastAPI RAG service at localhost ports 3000, 4000 and 5000.

Guide limitations

  • The initial RAG service startup downloads about 1 GB of Hugging Face models.
  • PDF indexes are held in process memory; restarting the RAG service clears sessions, so PDFs must be uploaded again.
  • Keep the RAG service internal rather than exposing it publicly.
COMPARE OPTIONS

Compare options for Retrieval-augmented applications

These projects document a common task and share a project role. This is a source-based comparison, not an execution benchmark or a guarantee of interchangeability.

ProjectDocumented purposePlatformAccess and requirements
PDF Q&A BotUpload and index PDF documents for later questions.Docker, Self-hosted, WebThe repository is public and lists an MIT license. The README documents local and Docker Compose deployment.
Rag Powered AI Assistant Transforming Data Retrieval And Analysis Across The Web And PdfsRetrieve relevant passages from web and PDF content to answer a question.Web
LangChain in Supabase Edge FunctionsInitialize and start a Supabase project locally.Cloud, Server
Evidence and transparency

Sources & review

Source record details
Source availability
Active
Sources checked
15 October 2026
Original website title
FireFistisDead/pdf-qa-bot · Official homepage title · retained in its source language