Local RAG Chatbot
Explicit retrieval and local models, with no LangChain black box.
Portfolio-grade, local-only RAG chat: FastAPI + ChromaDB + bge-small embeddings + Qwen via Ollama, with a plain HTML/CSS/JS frontend. Every retrieval step is explicit and interview-explainable.
Meet Lumen: retrieve relevant chunks from a local Chroma index, ground answers in your docs (or live web results), and generate on your machine. Compare with vs without RAG so the value of retrieval is visible, not assumed.
Feature 01 · Live search
Web search with cited sources
Ask about current market data and Lumen can pull live results, structure the answer with clear bullets, and attach numbered sources under the reply so every claim stays checkable, not hallucinated.
- Live web lookup for time-sensitive facts
- Numbered source list under each answer
- Generation speed shown (tok/s) + Retry
Feature 02 · Local chat
Streaming replies you can measure
Clean chat UI with role-labeled bubbles. Each assistant turn reports generation speed in tokens per second so local model performance is visible, and a one-click Retry regenerates when the first draft misses.
- Lumen persona + clear You / Assistant roles
- Live tok/s metric on every completion
- Retry without retyping the prompt
Feature 03 · Comparison mode
With RAG vs without, same query
Flip into comparison mode and run one question against both pipelines. Retrieval-on grounds the answer in your indexed docs (chunk counts included); retrieval-off shows what the base model invents without your knowledge base.
- Side-by-side With RAG / Without RAG panels
- Chunk count + model id on each path
- Makes retrieval impact demo-ready for interviews