A Retrieval‑Augmented Generation (RAG) chatbot for IT support teams. AssistIQBot indexes your internal support knowledge base (docs, wikis) into a local FAISS vector store and uses LLMs to answer user questions with accurate, source‑grounded responses.
- RAG over your KB: Ingest Markdown, PDF, HTML, Confluence/MediaWiki exports, and plain text.
- Local FAISS: Vectors stored locally (no managed vector DB required).
- Citations: Answers include source snippets/links for traceability.
- Content filters: File allow/deny lists, path scoping, metadata tagging.
- Incremental re‑ingestion: Only reindex changed files.
- Embeddings choice: OpenAI or local (Sentence‑Transformers) models.
- Pluggable UI: Minimal built‑in chat UI (optional) + simple REST API for any frontend.
- Guardrails: PII redaction, hallucination‑aware prompts, and “I don’t know” handling.
-
Ingestion Pipeline
- Load files → chunk → embed → upsert to FAISS.
-
Retriever
- Hybrid lexical + vector (optional) → top‑k passages with metadata.
-
Orchestrator (RAG)
- Compose a grounded prompt → call LLM → generate answer with citations.
-
Serving Layer
- FastAPI endpoints (Python) for
/ask
,/ingest
,/health
.
- FastAPI endpoints (Python) for
-
Frontend
- Simple web chat (Bootstrap) calling the REST API.
- Groq (Free)
- OpenAI (Paid)
- Gemini (15 Days Free Access)
- Claude (Paid)
- Hugging Face (Free)
- Ollama (Local Setup)
- OpenAI
- Hugging Face
- Gemini
- In-Memory
- On-Disk
- Cloud-Based
- -m: This flag indicates that the next argument should be treated as a Python module name, and that module should be executed as a script.
- venv: This is the name of the built-in Python module that is used for creating virtual environments.
python create -m venv .env
pip install -r requirements.txt