Qdrant 1.20 Simplifies Hybrid Search by Ranking Keywords Directly on Stored Text

Qdrant today released Qdrant 1.20, which ranks keyword matches directly on text stored in Qdrant. Teams can now combine keyword search with semantic search, known together as hybrid search, without first creating a separate set of embeddings just for keyword search.

Qdrant’s full-text index, which until now could filter but not rank, now ranks keyword matches using BM25, the standard method behind most keyword search engines. Teams turn it on for text they already store, and keyword and semantic results can be combined in a single search.

The feature works the same way in Qdrant open source and on Qdrant Cloud. Teams that use specialized AI models for keyword matching can keep using Qdrant’s earlier method, which uses sparse vectors.

Semantic search returns results that mean the same thing as a query, but it can blur terms that must match exactly: a product code, an error number, a clause in a contract. When search misses those, a shopper gets a lookalike instead of the part they asked for, or an AI assistant answers from the wrong document. Ranking keyword matches alongside semantic ones brings those exact results to the top and keeps them ranked correctly as catalogs and document sets change.

Until now, ranking keyword matches in Qdrant meant running every document and every search through an extra processing step that converted the text into embeddings. Teams also had to supply a statistic about their data by hand, and it went out of date as the data changed.

In 1.20, Qdrant calculates what it needs from the data itself, so the ranking statistics are correct from the start and stay current as documents are added or changed. That removes a processing step teams had to build and run. It also makes Qdrant easier to adopt for teams coming from traditional keyword search engines, which rank with the same BM25 method.

“Engineers were running an inference step to count words,” said André Zayarni, CEO & co-founder of Qdrant. “Qdrant 1.20 ranks text with BM25 directly on the full-text index and derives the statistics from the data itself. Keyword ranking becomes one more primitive that engineers can combine with dense retrieval in a single query, with no sparse encoding pipeline to maintain.”

Keyword search over software code improves too. Qdrant now recognizes the different ways programmers write the same name, so a search for “user name” also finds getUserName and get_user_name.

Qdrant 1.20 also includes new TurboQuant compression options that cut vector storage by half or more with little or no loss in accuracy, faster filtering on nested data, lower memory use for very large collections, backups to Google Cloud Storage and Azure Blob Storage, and stronger security defaults for clusters.

To learn more, read the release blog post: https://qdrant.tech/blog/qdrant-1.20.x/

About Qdrant

Qdrant is a high-performance, composable vector search engine built in Rust for production-grade semantic, hybrid, and agentic workloads. Engineers combine retrieval primitives (dense and sparse vectors, metadata filters, multivector representations, and custom scoring) with explicit control over ranking, indexing, latency, and relevance trade-offs. Qdrant delivers predictable, low-tail latency at billion-scale across cloud, hybrid, on-premises, and edge deployments. Its customers include Canva, Disney, TripAdvisor, OpenTable and Bayer.

Media gallery