SELF.HOSTED.RAG · session 4 GitHub

hRAG

Hybrid retrieval with receipts.

69.7 doc recall — 6th of 14 512K docs benchmarked 88ms BM25 at 2M chunks €116 per month, all in

00 · 01

The platform, answering

Live screenshots — the ERB playground corpus, streamed answers, inspectable citations.

01 · 02

What runs under the hood

  1. BM25 inside PostgresNo search cluster to babysit.

    pg_textsearch gives real IDF ranking with Block-Max WAND: 88ms over 2 million chunks, where plain tsquery took 7.5 seconds.

  2. Hybrid fusion, weightedFusion is not a democracy.

    Vector and lexical arms fuse with a measured 0.3 vector weight — equal weighting scored worse than turning one arm off.

  3. Cross-encoder rerankerThe right eight chunks.

    A fourth service reads query and chunk together and reorders the window. Worth +3.9 overall on the public benchmark, measured before it was built.

  4. Grounded answersRefusal as a feature.

    Empty retrieval refuses without calling the model. On the benchmark's info-not-found questions: 100% correct while others hallucinate.

  5. Tenants by row-level securityIsolation is the floor, not a filter.

    Every query runs inside a tenant transaction Postgres enforces. The benchmark corpus and your sandbox are neighbors that cannot meet.

  6. Streaming citations[n] means something.

    Sources arrive before the first token; every bracket in an answer opens to the exact chunk that backs it.

02 · 03

How the numbers stay honest

  1. 1Measure before buildingThe reranker cost $1 to prototype offline before a line of service code existed.
  2. 2Publish the noesMulti-query rewriting, wider context, prompt-only fixes — measured, failed, documented next to the wins.
  3. 3One databaseVectors, BM25, text, tenants, and usage all live in Postgres. One thing to operate, one thing to trust.
  4. 4Small models, priced honestlyA 118M embedder and budget answerers, benchmarked against clouds that cost 100× more.

03 · 04

What it costs

  • Five-node Kubernetes cluster on Hetzner
  • Postgres with vectors, BM25, and row-level security
  • Four services: ingest, embed, rerank, answer
  • A public benchmark score you can reproduce
  • All code MIT, all numbers receipted

€116

Answers cost tenths of a cent; the benchmark that proved them cost about $60 once.

Sign in & try it

Free with one-click Google or GitHub sign-in — playground plus your own sandbox.

per month — the entire five-node cluster

04 · 05

Fair questions

What am I actually chatting with?
EnterpriseRAG-Bench: 512,000 simulated company documents — Slack threads, emails, wikis, tickets. The same corpus the platform is publicly scored on.
Can I bring my own documents?
Yes — sign in with Google or GitHub and you get a private sandbox: 10 documents, 20 pages each, a daily token budget, and meters that show exactly what you have left. Row-level security keeps it yours.
How good is it, honestly?
Judged by the benchmark's own harness: document recall 69.7 (6th of 14, ahead of Azure and Vertex), overall answer quality 7th and climbing. The full per-category tables are in the repo.
Why should I trust these numbers?
The judge's own gold-set corrections confirmed our self-measured recall to 0.13 points, and every run's raw results are committed to the repo.
Can I run this myself?
That is the point. Three articles walk through every deployment click and every benchmark; the repos build the whole platform from scratch.