Lohith Devaramane
← registry
ENG-002in-progress

This site's copilot

A retrieval-grounded assistant that answers questions about my work with citations — and a designed failure mode.

Client

This portfolio (yes, the site you're reading)

Role

Solo builder

Timeframe

2026 — evolving with the site

Stack

Next.js · Vercel Functions · Gemini API · Keyword + content retrieval

01 — Situation

A recruiter's core questions — 'has he shipped RAG?', 'what production experience does he have?' — are answerable from this site's content, but nobody reads a portfolio end to end. The copilot answers those questions directly and cites the engagement pages it drew from.

It is also deliberately a meta-artifact: the case study you're reading documents the same class of system I build for clients.

02 — Constraints

  • !A dead chatbot is worse than no chatbot: the system needed a graceful degradation path for when no model API key or budget is available.
  • !Answers must be grounded in site content only — a portfolio assistant that hallucinates experience would be professionally fatal.
  • !Serverless-friendly: no vector database to keep warm on a free-tier deployment.

03 — Stakeholders

Recruiters and hiring managers

Fast, trustworthy answers about my experience

Me

A live demonstration of grounded-assistant design, not just a claim about it

04 — Architecture

  1. 01Site content (deployments, case studies, career record) is compiled into a retrieval corpus at build time.
  2. 02A scoring retriever selects the most relevant chunks for each question.
  3. 03If a Gemini API key is configured, retrieved context is passed to Gemini with instructions to answer only from that context and cite sources.
  4. 04If no key is configured or the call fails, the endpoint degrades to retrieval-only mode: it returns the most relevant content excerpts with links, clearly labelled — the assistant never pretends.

05 — What shipped

  • Copilot endpoint and chat interface with source citations.
  • Retrieval-only fallback mode, live by default.

06 — Outcomes

2

operating modes: grounded LLM + retrieval fallback

100%

of answers linked to on-site sources

0

external databases required

07 — Retro: what I'd do differently

Designing the failure mode first changed the architecture: retrieval had to be good enough to stand alone, which made the LLM mode better too.

Planned next: an eval set of realistic recruiter questions, scored for faithfulness — the same discipline I'd bring to a client's assistant.

Questions about this engagement?

Ask the copilot →