Portfolio AI assistant

RAG chatbot that answers questions about my work, with citations.

Role
Design, engineering, evaluation
Year
2024
Stack
RAG · LLM API · TypeScript
Abstract cover image for the AI assistant

The problem

Recruiters skim. A portfolio answers the questions I predicted; a chatbot answers the ones they actually have. The risk with LLMs is confident nonsense, and confident nonsense about my own experience is worse than no answer.

Key decisions

1Retrieval first, generation second

The model only answers from a curated knowledge base about my projects and experience, retrieved per question. No retrieval hit, no answer. The prompt requires citing which document backs each claim.

2Refusal as a feature

Out of scope questions get a plain refusal and a pointer to my email. A bot that says 'I do not know that' earns trust for the answers it does give.

3Knowledge base editable without code

Content lives in plain files I can update when a project ships. Rebuilding the index is one command. If updating is hard, the bot rots.

Outcome

Ran on portfolio v2. This version ships without it while I rebuild it on this stack; the nav has a slot reserved. At FoodStyles I later built the same pattern in production with chunking, cosine retrieval and refusal guardrails, used by non technical staff daily.