Problem
Insurance policy answers are often spread across clauses, exclusions, limits, waiting periods, and conditions. A simple answer without evidence is not enough.
A practical RAG product where users upload insurance policy PDFs, ask natural-language questions, and verify generated answers against supporting source excerpts.

I built InsureSense AI as an end-to-end RAG product: document upload and parsing, chunking, embedding storage with PostgreSQL and pgvector, retrieval, LLM integration, citation rendering, and the UX around processing and answer verification.
The goal was not to present a production-scale insurance platform. It was to explore the engineering decisions that make document AI useful: retrieval quality, grounding, evidence visibility, failure boundaries, and user trust.
Insurance policy answers are often spread across clauses, exclusions, limits, waiting periods, and conditions. A simple answer without evidence is not enough.
I built a RAG workflow where users upload a policy PDF, ask natural-language questions, and verify answers through citation-backed source excerpts.
The hard part in document AI is not only finding a relevant chunk. It is retrieving enough supporting context, constraining generation around that evidence, and helping users verify what the system says.
The product flow is intentionally guided. Users should know when the document is uploaded, processed, searchable, and ready for citation-backed questions.
I treated the system as a pipeline with clear responsibilities: ingestion, parsing, chunking, embedding storage, retrieval, answer generation, and citation rendering.

Handled policy PDF upload, text extraction, document processing states, and preparation for downstream retrieval.
Split document text into searchable chunks while trying to preserve clause-level meaning and enough surrounding context.
Stored embeddings and retrieval metadata in PostgreSQL with pgvector so policy content could be searched semantically.
Used semantic retrieval with document metadata and contextual filtering, while treating lexical or hybrid retrieval as an extension point where exact policy terminology needs stronger matching.
Constrained answer generation around retrieved context and surfaced supporting source excerpts so users could verify the answer against the policy.
Designed the UX so users can inspect the supporting clauses instead of blindly trusting a generated answer.
The goal was not to build a generic chatbot over a PDF. The goal was to make document intelligence useful in a domain where correctness, citations, and user trust matter.
Focused on showing source excerpts with answers because insurance is a trust-sensitive domain where users need to verify the reasoning.
Structured the answer-generation step around retrieved document context rather than treating the model as a general-knowledge chatbot.
Treated chunking as a product and retrieval decision, not only a text-splitting task, because policy meaning often depends on nearby clauses.
Treated retrieval as more than nearest-neighbor search: chunk boundaries, document metadata, exact terminology, and surrounding context all affect whether the right evidence reaches the model.
Kept document access scoped to the active product context and designed the workflow so uploaded policy files are handled as user data rather than reusable model knowledge.
Kept ingestion, parsing, chunking, retrieval, answer generation, and citations as separate concerns so each layer can evolve independently.
In document AI, a relevant chunk is not always enough. The answer needs enough evidence, clear citations, and honest boundaries when the document does not contain enough information.
Users should be able to inspect the supporting source excerpts returned with an answer instead of relying on generated text alone.
When retrieval does not surface enough supporting context, the product should communicate uncertainty rather than manufacture a confident answer.
The upload → parse → ready-to-query flow helps users understand when the document is actually prepared for questions.
Policy questions often require comparing limits, waiting periods, exclusions, and conditions rather than reading one isolated line.
A useful RAG system needs evaluation beyond “the answer looks good.” These are the signals I would use to evaluate retrieval quality, grounding, and the user's ability to verify answers as the product matures.
I'm open to meaningful conversations around document AI, RAG workflows, retrieval quality, grounded answer generation, evaluation, and trust-first AI product experiences.