
Qdrant Geospatial Search: Fix the Boundary Cliff with Decay
We replaced Qdrant geo_radius hard filters with GaussDecay and ExpDecay on 8,317 Berlin stays. Ring loss 37% to 0% in 8.1 ms. Code, data, and the 10-persona eval are on GitHub.
5 articles on this topic.

We replaced Qdrant geo_radius hard filters with GaussDecay and ExpDecay on 8,317 Berlin stays. Ring loss 37% to 0% in 8.1 ms. Code, data, and the 10-persona eval are on GitHub.

We ran Qdrant hybrid search (RRF + ColBERT + FormulaQuery) on 2,034 Supreme Court precedents. Top-1 went from 31.8% to 86.4%. Code, data, and the 22-query eval are on GitHub.

We ran Qdrant 1.19 per-tenant IDF on 457k CQADupStack docs. Top-1 changed on 20% of queries. Labeled nDCG barely moved. Methodology, numbers, and the API.

Qdrant trusts the client filter. Inject tenant predicates into the query AST so agents cannot skip isolation, even under prompt injection.

qql-go is archived. Use the qql CLI from qql-rs for CI, runbooks, and agent-safe Qdrant retrieval. This post is the original design.