DocChat is an AI-powered chatbot that helps developers and data scientists interact with technical documentation using natural language. Built with Retrieval-Augmented Generation (RAG), it semantically searches embedded HTML docs and returns GPT-generated answers grounded in real content β not hallucinations.
Think ChatGPT, but grounded in the docs you care about.
As a data scientist, I constantly found myself Googling the same questions:
- "How do I merge two DataFrames in pandas?"
- "What's the difference between
.locand.iloc?" - "What arguments does
sns.catplot()support?"
General-purpose chatbots like ChatGPT were helpful β but often hallucinated or lacked the exact syntax. And searching docs manually felt inefficient.
So I built DocChat to fix this. Itβs a documentation-first AI assistant that:
β
Uses your local documentation (HTML)
β
Searches it with semantic embeddings
β
Answers questions using OpenAI GPT models
β
Works even in offline or restricted environments (post-embedding)
- π Semantic Search with FAISS β Embed and retrieve HTML docs with sentence-level accuracy
- π§ GPT-Generated Answers β Use OpenAIβs GPT models to answer based on context
- π¬ Streamlit UI β Chat-like interface with fallback prompts, dark mode, and "Explain this answer"
- π Conversational Memory β Maintains full chat history per session
- π Multi-Doc Support β Easily switch between
pandas,seaborn,python_docs, and more - π§± Modular Codebase β Clear folder structure for embedding, retrieval, and generation logic
| Layer | Tool |
|---|---|
| UI | Streamlit |
| Embeddings | SentenceTransformers (MiniLM) |
| Vector Search | FAISS |
| LLM Generation | OpenAI GPT-3.5 |
| Docs Format | HTML (locally hosted) |
| Config | dotenv + modular scripts |
git clone https://github.com/KenValenzuela/DocChat.git
cd DocChat
python -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt