From c658f69beb9ac5a005db00dd31025f68ad439777 Mon Sep 17 00:00:00 2001 From: David Sertic <62056091+davidmyriel@users.noreply.github.com> Date: Wed, 21 Jun 2023 15:13:09 +0200 Subject: [PATCH] add more content for article --- .../content/articles/qdrant-1.3.x.md | 154 +++++++++++++++--- .../documentation/guides/quantization.md | 44 ++++- .../articles_data/qdrant-1.3.x/web-ui.png | Bin 0 -> 69987 bytes 3 files changed, 171 insertions(+), 27 deletions(-) create mode 100644 qdrant-landing/static/articles_data/qdrant-1.3.x/web-ui.png diff --git a/qdrant-landing/content/articles/qdrant-1.3.x.md b/qdrant-landing/content/articles/qdrant-1.3.x.md index 83c5fe926..1462acf3c 100644 --- a/qdrant-landing/content/articles/qdrant-1.3.x.md +++ b/qdrant-landing/content/articles/qdrant-1.3.x.md @@ -1,5 +1,5 @@ --- -title: "Introducing Qdrant 1.3.x" +title: "Introducing Qdrant 1.3.0" short_description: "Check out what Qdrant 1.3 brings to vector search" description: "Check out what Qdrant 1.3 brings to vector search" social_preview_image: /articles_data/qdrant-1.3.x/social_preview.png @@ -20,37 +20,77 @@ keywords: - group requests --- -A brand-new Qdrant 1.3 release comes packed with a plethora of new features, some of which -were highly requested by our users. If you want to shape the development of the Qdrant vector -database, please [join our Discord community](https://qdrant.to/discord) and let us know -how you use it! +A brand-new [Qdrant 1.3.0 release](https://github.com/qdrant/qdrant/releases/tag/v1.3.0) comes packed with a plethora of new features, performance improvements and bux fixes: + +1. [Oversampling for Quantization:](#oversampling-for-quantization) Improve the accuracy and performance of your queries while using Scalar or Product Quantization +2. [Asynchronous I/O interface:](#asychronous-io-interface) Reduce overhead by managing I/O operations asynchronously, and by minimizing the need for context switches. +3. [Grouping API lookup:](#grouping-api-lookup) Storage optimization method that lets you look for points in another collection using group ids. +4. [Qdrant Web UI:](#qdrant-web-user-interface) A convenient dashboard to help you manage data stored in Qdrant. +5. [Temp directory for Snapshots:](#temporary-directory-for-snapshots) Set a separate storage directory for temporary snapshots on a faster disk. +6. [Other important changes](#important-changes) + +Your feedback is valuable to us, and are always tying to include some of your feature requests into our roadmap. Join [our Discord community](https://qdrant.to/discord) and help us build Qdrant!. ## New features -As usual, a minor version update of Qdrant brings some interesting new features. We love to see your -feedback, and we tried to include the features most requested by our community. +### Oversampling for quantization -### Introducing oversampling +We are introducing [oversampling](/documentation/guides/quantization/#oversampling) as a new way to help you improve the accuracy and performance of similarity search algorithms. With this method, you are able to significantly compress high-dimensional vectors in memory and then compensate the accuracy loss by re-scoring additional points with the original vectors. -Oversampling refers to a technique used to improve the accuracy and performance of similarity search algorithms. Vector databases often face challenges when dealing with imbalanced or sparse data distributions. Oversampling is used to address these challenges by artificially increasing the representation of minority or less frequent vectors in the database. +You will experience much faster performance due to parallel disk access to read those vectors. Much better IO means that you can keep quantized vectors in RAM, so the pre-selection will be even faster. Finally, once pre-selection is done, you can use parallel IO to retrieve original vectors, which is significantly faster than traversing HNSW on slow disks. -As of 1.3.0, you can set the oversampling factor for quantization. This factor defines how many extra vectors should be pre-selected using the quantized index, and then re-scored using original vectors. For example, if `oversampling` is 2.4 and `limit` is 100, then 240 vectors will be pre-selected using quantized index, and then the top 100 vectors will be returned after re-scoring. +#### Set the oversampling factor via query: -INSERT OVERSAMPLING DIAGRAM +Configure the oversampling factor to define how many extra vectors should be pre-selected using the quantized index, and then re-scored using original vectors. -Add more content. Describe how oversampling is used in qdrant. +```http +POST /collections/{collection_name}/points/search + +{ + "params": { + "quantization": { + "ignore": false, + "rescore": true, + "oversampling": 2.4 + } + }, + "vector": [0.2, 0.1, 0.9, 0.7], + "limit": 100 +} +``` + +```python +from qdrant_client import QdrantClient +from qdrant_client.http import models + +client = QdrantClient("localhost", port=6333) + +client.search( + collection_name="{collection_name}", + query_vector=[0.2, 0.1, 0.9, 0.7], + search_params=models.SearchParams( + quantization=models.QuantizationSearchParams( + ignore=False, + rescore=True, + oversampling=2.4 + ) + ) +) +``` + +In this case, if `oversampling` is 2.4 and `limit` is 100, then 240 vectors will be pre-selected using quantized index, and then the top 100 vectors will be returned after re-scoring. + +As you can see from the example above, this parameter is set during the query. This is a flexible method that will let you tune query accuracy. While index is not changed, you can decide how many points you want to retrieve using quantized vectors. ### Asychronous I/O interface -Going forward, we will support Linux-based systems with the io_uring asychnronous interface for storage devices. io_uring seeks to overcome the limitations of traditional I/O mechanisms like select, poll, and epoll. Since its introduction, io_uring has been proven to speed up slow-disk deployments wherever the OS syscall overhead gets too high and the software becomes IO bound (mostly waiting on disk). +Going forward, we will support the `io_uring` asychnronous interface for storage devices on Linux-based systems. Since its introduction, `io_uring` has been proven to speed up slow-disk deployments wherever the OS syscall overhead gets too high and the software becomes IO bound. -IO URING DIAGRAM + -io_uring uses a ring buffer data structure to queue and manage I/O operations asynchronously, minimizing the need for context switches and reducing overhead. It supports features like submission and completion queues, event-driven I/O, and batch processing, allowing for efficient handling of I/O events and reducing the CPU overhead associated with traditional I/O. +`io_uring` uses a ring buffer data structure to queue and manage I/O operations asynchronously, minimizing the need for context switches and reducing overhead. It supports features like submission and completion queues, event-driven I/O, and batch processing, allowing for efficient handling of I/O events and reducing the CPU overhead associated with traditional I/O. -So far, Qdrant's use of mmap has been steadily growing in efficiency, in particular via scalar and product-based quantization. However, applying such optimization methods requires that a requantization occurs afterwards. This operation generates a lot of disk IO, so it is a prime candidate for possible improvements. - -If you run Qdrant on Linux, you can enable the io_uring based storage backend within the storage configuration file: +#### Enable async storage interface from the storage configuration file: ```python storage: @@ -59,15 +99,79 @@ storage: ``` You can return to the mmap based backend by either deleting the `async_scorer` entry or setting the value to `false`. +This operation generates a lot of disk IO, so it is a prime candidate for possible improvements. +Please keep in mind that this feature is experimental and that the interface may change in further versions. + ### Grouping API lookup -In our last version, we introduced a mechanism for grouping requests. Our new feature gives you the option to look for points in another collection using group ids. We felt it was necessary to add this because Hhaving multiple points for parts of the same item puts strain on the storage space if the payload is large. +In version 1.2.0, we introduced a mechanism for grouping requests. Our new feature extends this functionality by giving you the option to look for points in another collection using group ids. We wanted to add this feature, since having multiple points for parts of the same item optimizes storage use, particularly if the payload is large. -However, you may optimizing storage when using groups by storing the information shared by the points with the same group id in a single point in another collection. Then, when using the [**groups** API](#grouping-api), add the `with_lookup` parameter to bring the information from those points into each group. +#### Adding the parameter to grouping API request: + +When using the [**grouping** API](#grouping-api), add the `with_lookup` parameter to bring the information from those points into each group: + +```http +POST /collections/chunks/points/search/groups +{ + // Same as in the regular search API + "vector": [1.1], + ..., + // Grouping parameters + "group_by": "document_id", + "limit": 2, + "group_size": 2, + // Lookup parameters + "with_lookup": { + // Name of the collection to look up points in + "collection_name": "documents", + // Options for specifying what to bring from the payload + // of the looked up point, true by default + "with_payload": ["title", "text"], + // Options for specifying what to bring from the vector(s) + // of the looked up point, true by default + "with_vector: false, + } +} +``` + +```python +client.search_groups( + collection_name="chunks", + + # Same as in the regular search() API + vector=[1.1], + ..., + + # Grouping parameters + group_by="document_id", # Path of the field to group by + limit=2, # Max amount of groups + group_size=2, # Max amount of points per group + + # Lookup parameters + with_lookup=models.WithLookup( + # Name of the collection to look up points in + collection_name="documents", + + # Options for specifying what to bring from the payload + # of the looked up point, True by default + with_payload=["title", "text"] + + # Options for specifying what to bring from the vector(s) + # of the looked up point, True by default + with_vector=False, + ) +) +``` This has the extra benefit of having a single point to update when the information shared by the points in a group changes. For example, if you have a collection of documents, you may want to chunk them and store the points for the chunks in a separate collection, making sure that you store the point id from the document it belongs in the payload of the chunk point. -INSERT GROUPING API DIAGRAM +### Qdrant web user interface + +We are excited to announce a more user-friendly way to organize and work with your collections inside of Qdrant. Our dashboard's design is simple, but very intuitive and easy to access. + +Try it out now! If you have Docker running, you can [quickstart Qdrant](https://qdrant.tech/documentation/quick-start/) and access the Dashboard locally from [http://localhost:6333/dashboard](http://localhost:6333/dashboard). You should see this simple access point to Qdrant: + +![Optional vectors](/articles_data/qdrant-1.3.x/web-ui.png) ### Temporary directory for Snapshots @@ -80,13 +184,11 @@ To change it, access `config.yaml` and set `storage.temp_path` to another direct The latest release focuses not only on the new features but also introduces some changes making Qdrant even more reliable. -### Optimizing value checks +### Optimizing group requests -`is_empty` was not using the index when it was called, so it had to deserialize the whole payload to see if the key had values or not. Our new update makes sure to check the index first, before confirming with the payload if it is actually `empty`/`null`, so these changes improve performance only when the negated condition is true (e.g. it improves when the field is not empty). +Internally, we improved the way grouping API requests are handled. Specifically, `is_empty` was not using the index when it was called, so it had to deserialize the whole payload to see if the key had values or not. Our new update makes sure to check the index first, before confirming with the payload if it is actually `empty`/`null`, so these changes improve performance only when the negated condition is true (e.g. it improves when the field is not empty). -Show where to change this. SMALL CODE BIT. - -### Faster Read Access with mmap +### Faster read access with mmap If you used mmap, you most likely found that segments were always created with cold caches. The first request to the database needed to request the disk, which made startup slower despite plenty of RAM being available. We have implemeneted a way to ask the kernel to "heat up" the disk cache and make initialization much master. diff --git a/qdrant-landing/content/documentation/guides/quantization.md b/qdrant-landing/content/documentation/guides/quantization.md index 655e1c1c7..62679cd0a 100644 --- a/qdrant-landing/content/documentation/guides/quantization.md +++ b/qdrant-landing/content/documentation/guides/quantization.md @@ -217,13 +217,55 @@ client.search( ) ``` -`ignore` - whether to ignore quantized vectors during the search process. By default, Qdrant will use quantized vectors if they are available. +`ignore` - Toggle whether to ignore quantized vectors during the search process. By default, Qdrant will use quantized vectors if they are available. `rescore` - Having the original vectors available, Qdrant can re-evaluate top-k search results using the original vectors. This can improve the search quality, but may slightly decrease the search speed, compared to the search without rescore. It is recommended to disable rescore only if the original vectors are stored on a slow storage (e.g. HDD or network storage). By default, rescore is enabled. +### Oversampling + +*Available as of v1.3.0* + +Oversampling is another way to tune your query accuracy. Keeping your index the same, you can decide how many points to retrieve using the quantized vectors. This method allows for fast pre-selection and allows for parallel I/O, thus speeding up the retrieval od vectors. + +```http +POST /collections/{collection_name}/points/search + +{ + "params": { + "quantization": { + "ignore": false, + "rescore": true, + "oversampling": 2.4 + } + }, + "vector": [0.2, 0.1, 0.9, 0.7], + "limit": 100 +} +``` + +```python +from qdrant_client import QdrantClient +from qdrant_client.http import models + +client = QdrantClient("localhost", port=6333) + +client.search( + collection_name="{collection_name}", + query_vector=[0.2, 0.1, 0.9, 0.7], + search_params=models.SearchParams( + quantization=models.QuantizationSearchParams( + ignore=False, + rescore=True, + oversampling=2.4 + ) + ) +) +``` + +`oversampling` - Allows you to retrieve more points using quantized vectors and then re-score them using original ones. Default factor is 1.0. For example, if `oversampling` is 2.4 and `limit` is 100, then 240 vectors will be pre-selected using quantized index, and then top-100 will be returned after re-scoring. ## Quantization tips diff --git a/qdrant-landing/static/articles_data/qdrant-1.3.x/web-ui.png b/qdrant-landing/static/articles_data/qdrant-1.3.x/web-ui.png new file mode 100644 index 0000000000000000000000000000000000000000..7ef402f8089b3a22730148088926754539f5d4a3 GIT binary patch literal 69987 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