RAG Assistant
A retrieval-augmented assistant designed to be useful and honest: reproducible indexing, clear guardrails, and conservative behavior when evidence is weak. Public-safe summary.
Problem
Users needed reliable answers grounded in a limited knowledge base without hallucinations.
Approach
Deterministic indexing, retrieval gating, and conservative response rules when evidence is weak.
Outcome
Stable retrieval quality with reproducible runs and clear guardrails.
Core pipeline
Ingestion → embeddings → persistent index → retrieval → response generation
Python
FAISS
Embeddings
Guardrails
Streamlit
Reliability posture
- Deterministic indexing: reproducible builds of the knowledge index.
- Retrieval gating: conservative responses when evidence is weak.
- Provenance: links back to sources where possible.
Approach (high level)
- Normalize content into predictable chunks.
- Embed and store vectors with persistence across runs.
- Retrieve top matches and apply a confidence threshold.
- Generate responses only when retrieval evidence is sufficient; otherwise refuse or ask for clarification.
What I’d improve next
- Evaluation harness (retrieval precision/recall + end-to-end QA checks).
- Citations-by-default and stricter refusal policies for ambiguous prompts.
- Performance profiling for faster cold start and lower latency.
Note: the portfolio assistant on the main site is deliberately grounded and privacy-safe (local-only knowledge base, no logging).