Problems / RAG and retrieval, medium

Query rewriting on every question

Agentic RAG rewrites each question with a small model before retrieval. The rewriter has 8 slots at 80 questions a second.

Free to open. Runs in your browser, no sign-up.

Your goals

Success ≥ 99%, time to first token p99 ≤ 2.5 s.

The traffic

80 requests a second for 30 seconds: 100% request (reads).

The system

What each component does in this design, and what calls it. The simulator mimics each one from these settings.

ComponentIts job hereSettings
Load balancerLoad balancerTraffic enters here.Calls AI app.Layer 4 balancers route by IP and port; layer 7 balancers read HTTP and can route by path or header.–
AI appApp serviceLoad balancer forwards to it.Calls Query rewriter, Hybrid search, Model.Little's law: throughput ≈ concurrency ÷ latency. 200 slots at 50 ms serve about 4,000 req/s.3 replicas × 500 slots · timeout 30 s
Query rewriterQuery rewriterAI app calls it.Rewriting a vague question into a precise search query often improves retrieval more than a bigger model does.8 slots
Hybrid searchHybrid searchAI app calls it.Hybrid search combines keyword matching (BM25) with vector similarity.400 slots · 2 steps
ModelLLM endpointAI app calls it.Latency has two parts: time to the first token, then a steady stream of tokens per second.400 streams

Hints

Try it first. Open one hint at a time if you get stuck.

Hint 1

The rewriter runs on every question.

Hint 2

Slots needed = rate × rewrite time.

One way to solve it

Give the query rewriter more capacity (or skip it for clear questions).

More rag and retrieval problems