RAG systems built for production

Retrieval-augmented generation with grounding signals, citation handling, and the architecture decisions that determine whether RAG actually works at scale.

Where it fits in our builds

Where an ungrounded answer is a liability

Patient triage is the shape of system where RAG earns its keep: deterministic red-flag rules fire first, then the model answers grounded in retrieved clinical guidance, with sources attached. The same retrieval discipline carries finance and legal products.

  • Hybrid retrieval with re-ranking before generation.
  • Citations and confidence signals on every answer.
  • Eval harnesses that catch silent quality drops.
Patient intake flows through a triage agent into the nurse queue, cutting median triage timePatient intakeWeb · SMS · voiceTriage agentRed-flag rules, then the modelHIPAA-awareMEDIAN TRIAGE40 secdown from 4 min

Our stance

Why we picked this stack

RAG is the dominant pattern for production LLM applications today, but most implementations break because of poor retrieval, not poor LLMs. We've shipped RAG across three industries, including HIPAA-architected healthcare retrieval. Our focus is retrieval quality, grounding, and evals, not embedding everything and hoping the model figures it out.

Capabilities

What we build with it

Vector database architectures

Pinecone, Weaviate, pgvector (Postgres), Qdrant. Chosen per project based on scale, cost, and hybrid search needs.

Embedding pipelines

OpenAI embeddings, Voyage AI, sentence-transformers. Domain-specific selection, batching, and cost optimization.

Retrieval orchestration

Hybrid search (vector + keyword), re-ranking, multi-step retrieval, and query rewriting.

Citation and grounding layers

Source attribution, confidence scoring, and hallucination detection patterns.

Document ingestion pipelines

PDF/HTML/markdown chunking strategies, metadata extraction, versioning, and deletion handling.

RAG evaluation harnesses

Ground truth datasets, eval frameworks (Ragas, custom), and regression testing.

Server racks in a data centre

Infrastructure that holds up when traffic arrives

Tooling

Versions and libraries we use

  • 01PineconeHosted, scales well, good for >10M vectors.
  • 02WeaviateHybrid search out of the box, good for medium scale.
  • 03pgvectorPostgres-native. Best when you already have Postgres and <10M vectors.
  • 04QdrantSelf-host friendly, good performance/cost ratio.
  • 05OpenAI text-embedding-3-small/largeDefault embedding choice.
  • 06Voyage AIHigher quality for specialized domains (code, finance, legal).
  • 07Cohere RerankRe-ranking layer for hybrid search quality.
  • 08LangChain, LlamaIndexUsed selectively; we lean toward custom orchestration.
  • 09Ragas, TrulensRAG-specific eval frameworks.

Hard lines

Anti-patterns we avoid

Saying no to these is part of the service. Each one is a production incident we would rather not relive.

  • "Embed everything, retrieve top-K" without re-ranking

    Quality drops sharply at scale. Re-ranking is non-negotiable for production.

  • Fixed chunk size for all document types

    Documents have structure. Headers, sections, and tables need different chunking.

  • RAG without citation

    Users need to verify. No citation = no trust = no adoption.

  • Vector DB as source of truth

    A vector DB is a cache. The source of truth lives in Postgres or a document store.

  • Skipping the eval harness

    RAG quality degrades silently. Without evals, you find out from your users.

  • Same embedding strategy for queries and long documents

    Query-document length asymmetry hurts retrieval. Adjust the strategy.

Hire senior RAG engineers

Need to extend your team with engineers who have shipped production RAG? We embed senior engineers who think in retrieval quality, grounding, and evals, not just embeddings.

Explore staff augmentation
Code detail on a screen

Production engineering

The tech stack is the starting point, not the pitch

We pick tools because they ship, not because they trend. Every technology we list is one we have deployed to production, debugged under load, and would choose again for the right problem.

Frequently asked questions

Straight answers on vector databases, re-ranking, and retrieval quality.

  • It depends on scale and what you already run. pgvector when you have Postgres and under ~10M vectors; Pinecone for large hosted workloads; Weaviate for built-in hybrid search; Qdrant when self-hosting matters. We choose per project, not by default.

Building a RAG system? Schedule a meeting.

No account managers. No discovery theatre. A direct conversation about your retrieval architecture and what it takes to make RAG actually work in production.