--- title: RagBot emoji: 📚 colorFrom: indigo colorTo: blue sdk: streamlit sdk_version: "1.32.0" app_file: app.py pinned: false --- Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference --- # 📚 RagBot: Chatbot + Document QA This app lets you chat with any uploaded PDF and ask questions — either from the document or general ones — powered by **local open-source models**. Combines RAG with chatbot UX. ## 🚀 Features - Upload PDFs and chat with them - General knowledge + document-specific answers - Accurate retrieval using FAISS and sentence-transformers - Clean, sticky UI with full chat history - Runs 100% free using lightweight Hugging Face models ## 🧠 Powered By - 🧠 Embeddings: `sentence-transformers/paraphrase-MiniLM-L6-v2` - 📖 QA Model: `distilbert-base-cased-distilled-squad` - 🧰 Backend: Streamlit + FAISS + Transformers ## 💡 How It Works 1. Upload your PDF 2. App chunks & embeds the text 3. Uses FAISS to retrieve context 4. Hugging Face model generates answers: - Uses the doc context if available - Falls back to general QA - Refuses to answer if uncertain ## 📦 Dependencies ```bash pip install streamlit faiss-cpu sentence-transformers transformers PyMuPDF