Side Project
Desmond AI Assistant - RAG Portfolio Chatbot
2026 · 2 weeks
About this project
A RAG-powered assistant that answers questions about my projects, skills, and experience. Visitors chat through a Streamlit UI; a FastAPI backend retrieves the most relevant context from a ChromaDB vector store and generates grounded replies with OpenAI. Features: 🧠 Retrieval-Augmented Generation: rewrite → retrieve → answer pipeline over a markdown knowledge base 🗂️ Vector search: knowledge is chunked by heading, embedded with OpenAI, and stored in ChromaDB 🛠️ Tool routing: an agent layer decides between answering from the knowledge base, sharing contact details, or politely refusing off-topic questions 🔄 Re-ingest endpoint: update the markdown files and rebuild the vector store with one API call 🔍 Debug endpoints for search results, raw knowledge, and chunk previews 🐳 Dockerised with Docker Compose and auto-deployed to AWS EC2 via GitHub Actions on every push to main
Tech stack
- AWS EC2
- RAG
- Docker
- GitHub Actions
- OpenAI API
- ChromaDB
- FastAPI
- Python
- Streamlit