<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Search on Qdrant - Vector Search Engine</title><link>https://deploy-preview-2256--condescending-goldwasser-91acf0.netlify.app/documentation/search/</link><description>Recent content in Search on Qdrant - Vector Search Engine</description><generator>Hugo</generator><language>en-us</language><managingEditor>info@qdrant.tech (Andrey Vasnetsov)</managingEditor><webMaster>info@qdrant.tech (Andrey Vasnetsov)</webMaster><atom:link href="https://deploy-preview-2256--condescending-goldwasser-91acf0.netlify.app/documentation/search/index.xml" rel="self" type="application/rss+xml"/><item><title>Search</title><link>https://deploy-preview-2256--condescending-goldwasser-91acf0.netlify.app/documentation/search/search/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><author>info@qdrant.tech (Andrey Vasnetsov)</author><guid>https://deploy-preview-2256--condescending-goldwasser-91acf0.netlify.app/documentation/search/search/</guid><description>&lt;h1 id="similarity-search">Similarity search&lt;/h1>
&lt;p>Searching for the nearest vectors is at the core of many representational learning applications.
Modern neural networks are trained to transform objects into vectors so that objects close in the real world appear close in vector space.
It could be, for example, texts with similar meanings, visually similar pictures, or songs of the same genre.&lt;/p>
&lt;figure>&lt;img src="https://deploy-preview-2256--condescending-goldwasser-91acf0.netlify.app/docs/encoders.png"
 alt="This is how vector similarity works" width="70%">&lt;figcaption>
 &lt;p>This is how vector similarity works&lt;/p>
 &lt;/figcaption>
&lt;/figure>

&lt;h2 id="query-api">Query API&lt;/h2>
&lt;p>&lt;em>Available as of v1.10.0&lt;/em>&lt;/p></description></item><item><title>Filtering</title><link>https://deploy-preview-2256--condescending-goldwasser-91acf0.netlify.app/documentation/search/filtering/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><author>info@qdrant.tech (Andrey Vasnetsov)</author><guid>https://deploy-preview-2256--condescending-goldwasser-91acf0.netlify.app/documentation/search/filtering/</guid><description>&lt;h1 id="filtering">Filtering&lt;/h1>
&lt;p>With Qdrant, you can set conditions when searching or retrieving points.
For example, you can impose conditions on both the &lt;a href="https://deploy-preview-2256--condescending-goldwasser-91acf0.netlify.app/documentation/manage-data/payload/">payload&lt;/a> and the &lt;code>id&lt;/code> of the point.&lt;/p>
&lt;p>Setting additional conditions is important when it is impossible to express all the features of the object in the embedding.
Examples include a variety of business requirements: stock availability, user location, or desired price range.&lt;/p>
&lt;h2 id="related-content">Related Content&lt;/h2>
&lt;table>
 &lt;thead>
 &lt;tr>
 &lt;th>&lt;a href="https://deploy-preview-2256--condescending-goldwasser-91acf0.netlify.app/articles/vector-search-filtering/">A Complete Guide to Filtering in Vector Search&lt;/a>&lt;/th>
 &lt;th>Developer advice on proper usage and advanced practices.&lt;/th>
 &lt;/tr>
 &lt;/thead>
 &lt;tbody>
 &lt;/tbody>
&lt;/table>
&lt;h2 id="filtering-clauses">Filtering clauses&lt;/h2>
&lt;p>Qdrant allows you to combine conditions in clauses.
Clauses are different logical operations, such as &lt;code>OR&lt;/code>, &lt;code>AND&lt;/code>, and &lt;code>NOT&lt;/code>.
Clauses can be recursively nested into each other so that you can reproduce an arbitrary boolean expression.&lt;/p></description></item><item><title>Hybrid Queries</title><link>https://deploy-preview-2256--condescending-goldwasser-91acf0.netlify.app/documentation/search/hybrid-queries/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><author>info@qdrant.tech (Andrey Vasnetsov)</author><guid>https://deploy-preview-2256--condescending-goldwasser-91acf0.netlify.app/documentation/search/hybrid-queries/</guid><description>&lt;h1 id="hybrid-and-multi-stage-queries">Hybrid and Multi-Stage Queries&lt;/h1>
&lt;p>&lt;em>Available as of v1.10.0&lt;/em>&lt;/p>
&lt;p>With the introduction of &lt;a href="https://deploy-preview-2256--condescending-goldwasser-91acf0.netlify.app/documentation/manage-data/vectors/#named-vectors">multiple named vectors per point&lt;/a>, there are use-cases when the best search is obtained by combining multiple queries,
or by performing the search in more than one stage.&lt;/p>
&lt;p>Qdrant has a flexible and universal interface to make this possible, called &lt;code>Query API&lt;/code> (&lt;a href="https://api.qdrant.tech/api-reference/search/query-points" target="_blank" rel="noopener nofollow">API reference&lt;/a>).&lt;/p>
&lt;p>The main component for making the combinations of queries possible is the &lt;code>prefetch&lt;/code> parameter, which enables making sub-requests.&lt;/p></description></item><item><title>Explore</title><link>https://deploy-preview-2256--condescending-goldwasser-91acf0.netlify.app/documentation/search/explore/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><author>info@qdrant.tech (Andrey Vasnetsov)</author><guid>https://deploy-preview-2256--condescending-goldwasser-91acf0.netlify.app/documentation/search/explore/</guid><description>&lt;h1 id="explore-the-data">Explore the data&lt;/h1>
&lt;p>After mastering the concepts in &lt;a href="https://deploy-preview-2256--condescending-goldwasser-91acf0.netlify.app/documentation/search/search/">search&lt;/a>, you can start exploring your data in other ways. Qdrant provides a stack of APIs that allow you to find similar vectors in a different fashion, as well as to find the most dissimilar ones. These are useful tools for recommendation systems, data exploration, and data cleaning.&lt;/p>
&lt;h2 id="recommendation-api">Recommendation API&lt;/h2>
&lt;p>In addition to the regular search, Qdrant also allows you to search based on multiple positive and negative examples. The API is called &lt;em>&lt;strong>recommend&lt;/strong>&lt;/em>, and the examples can be point IDs, so that you can leverage the already encoded objects; and, as of v1.6, you can also use raw vectors as input, so that you can create your vectors on the fly without uploading them as points.&lt;/p></description></item><item><title>Text Search</title><link>https://deploy-preview-2256--condescending-goldwasser-91acf0.netlify.app/documentation/search/text-search/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><author>info@qdrant.tech (Andrey Vasnetsov)</author><guid>https://deploy-preview-2256--condescending-goldwasser-91acf0.netlify.app/documentation/search/text-search/</guid><description>&lt;h2 id="text-search">Text Search&lt;/h2>
&lt;p>Qdrant is a vector search engine, making it a great tool for &lt;a href="#semantic-search">semantic search&lt;/a>. However, Qdrant&amp;rsquo;s capabilities go beyond just vector search. It also supports a range of lexical search features, including filtering on text fields and full-text search using popular algorithms like BM25.&lt;/p>
&lt;h3 id="semantic-search">Semantic Search&lt;/h3>
&lt;p>Semantic search is a search technique that focuses on the meaning of the text rather than just matching on keywords. This is achieved by converting text into &lt;a href="https://deploy-preview-2256--condescending-goldwasser-91acf0.netlify.app/documentation/manage-data/vectors/">vectors&lt;/a> (embeddings) using machine learning models. These vectors capture the semantic meaning of the text, enabling you to find similar text even if it doesn&amp;rsquo;t share exact keywords.&lt;/p></description></item><item><title>Search Relevance</title><link>https://deploy-preview-2256--condescending-goldwasser-91acf0.netlify.app/documentation/search/search-relevance/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><author>info@qdrant.tech (Andrey Vasnetsov)</author><guid>https://deploy-preview-2256--condescending-goldwasser-91acf0.netlify.app/documentation/search/search-relevance/</guid><description>&lt;h1 id="search-relevance">Search Relevance&lt;/h1>
&lt;p>By default, Qdrant ranks search results based on vector similarity scores. However, you may wish to consider additional factors when ranking results. Qdrant offers several tools to help you accomplish this.&lt;/p>
&lt;h2 id="score-boosting">Score Boosting&lt;/h2>
&lt;p>&lt;em>Available as of v1.14.0&lt;/em>&lt;/p>
&lt;p>When introducing vector search to specific applications, sometimes business logic needs to be considered for ranking the final list of results.&lt;/p>
&lt;p>A quick example is &lt;a href="https://github.com/qdrant/page-search" target="_blank" rel="noopener nofollow">our own documentation search bar&lt;/a>.
It has vectors for every part of the documentation site. If one were to perform a search by &amp;ldquo;just&amp;rdquo; using the vectors, all kinds of elements would be equally considered good results.
However, when searching for documentation, we can establish a hierarchy of importance:&lt;/p></description></item><item><title>Low-Latency Search</title><link>https://deploy-preview-2256--condescending-goldwasser-91acf0.netlify.app/documentation/search/low-latency-search/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><author>info@qdrant.tech (Andrey Vasnetsov)</author><guid>https://deploy-preview-2256--condescending-goldwasser-91acf0.netlify.app/documentation/search/low-latency-search/</guid><description>&lt;h1 id="tips-for-low-latency-search-with-qdrant">Tips for Low-Latency Search with Qdrant&lt;/h1>
&lt;h2 id="scale-horizontally-with-replicas">Scale Horizontally with Replicas&lt;/h2>
&lt;p>Qdrant can be deployed in a &lt;a href="https://deploy-preview-2256--condescending-goldwasser-91acf0.netlify.app/documentation/operations/distributed_deployment/">distributed configuration&lt;/a>. In distributed mode, multiple instances of Qdrant, called peers, operate as a single entity, called a cluster. Data is stored in &lt;a href="https://deploy-preview-2256--condescending-goldwasser-91acf0.netlify.app/documentation/manage-data/collections/">collections&lt;/a>, which are divided into &lt;a href="https://deploy-preview-2256--condescending-goldwasser-91acf0.netlify.app/documentation/operations/distributed_deployment/#sharding">shards&lt;/a> that are distributed across the peers. Each shard can have multiple &lt;a href="https://deploy-preview-2256--condescending-goldwasser-91acf0.netlify.app/documentation/operations/distributed_deployment/#replication">replicas&lt;/a> for redundancy and load balancing. Because every replica of the same shard contains the same data, read requests can be distributed across replicas, reducing latency and increasing throughput.&lt;/p></description></item></channel></rss>