All posts
Engineering
·7 min read

How UnMocked grounds AI answers in your real experience

A look inside our RAG pipeline: chunking, embeddings, per-user vector isolation, and why we cite sources.

By UnMocked Engineering

The fastest way to lose a candidate's trust is to suggest an answer about experience they don't have. So the core rule of our suggestion engine is: never invent, always cite.

The pipeline

When you upload a resume or document we extract raw text (PDF, DOCX, or TXT), split it into ~1,200-character sentence-aware chunks with overlap, and embed each chunk with OpenAI's text-embedding-3-large. Vectors land in Pinecone in a namespace that belongs to you alone — retrieval can never cross tenants.

At question time

When the interviewer asks a question, we embed the question, retrieve your top-scoring chunks, and hand the model a CONTEXT block plus strict instructions to ground every claim in it. The response schema forces a sources array — the UI shows exactly which resume bullet or JD line each suggestion drew from.

Why confidence scores matter

Each suggestion carries a confidence score: how well your background actually supports the answer. A low score is a feature, not a bug — it tells you before you speak that you'd be stretching. Users tell us this is the moment the product started feeling like a copilot instead of a teleprompter.