Fix Docs : minor grammar fixes (#2218)

* fix(docs): fix typos and some links in documentation

* fix(docs): correct typo in filtering.md

* Update qdrant-landing/content/documentation/headless/snippets/inference/jinaai-upsert/generated/typescript.md

Co-authored-by: Abdon Pijpelink <abdon.pijpelink@qdrant.com>

* Update qdrant-landing/content/documentation/headless/snippets/inference/multiple/generated/typescript.md

Co-authored-by: Abdon Pijpelink <abdon.pijpelink@qdrant.com>

* Update qdrant-landing/content/documentation/hybrid-cloud/configure-scale-upgrade.md

Co-authored-by: Abdon Pijpelink <abdon.pijpelink@qdrant.com>

* Update qdrant-landing/content/documentation/cloud-api.md

Co-authored-by: Abdon Pijpelink <abdon.pijpelink@qdrant.com>

---------

Co-authored-by: Abdon Pijpelink <abdon.pijpelink@qdrant.com>
This commit is contained in:
Mohamed Arbi
2026-03-26 17:23:36 +01:00
committed by GitHub
co-authored by Abdon Pijpelink
parent 3f3ef1ad20
commit c0db45ed8f
58 changed files with 75 additions and 75 deletions
@@ -69,7 +69,7 @@ If you use multiple accounts for different purposes, it is a good idea to give t
### Changing the Account Owner
Every account has one owner. The owner is granted full admin permissions for the account as well as futher unique permissions allowing them to either delete the account or transfer account ownership.
Every account has one owner. The owner is granted full admin permissions for the account as well as further unique permissions allowing them to either delete the account or transfer account ownership.
To transfer ownership of an account, as the owner, visit the *Access Management* page. In the actions menu of the user you wish to transfer to, you will find the option 'Make Account Owner' which begins the transfer.
@@ -19,7 +19,7 @@ To cater to diverse integration needs, the Qdrant Cloud API offers two primary i
* **REST/JSON API**: A conventional HTTP/1.1 (and HTTP/2) interface with JSON payloads. This API is provided via a gRPC Gateway, translating RESTful calls into gRPC messages, offering ease of use for web clients, scripts, and broader tool compatibility.
You can find the API definitions and generated client libraries in our Qdrant Cloud Public API [GitHub repository](https://github.com/qdrant/qdrant-cloud-public-api).
**Note:** The API is splitted into multiple services to make it easier to use.
**Note:** The API is split into multiple services to make it easier to use.
### Qdrant Cloud API Endpoints
@@ -58,7 +58,7 @@ To subscribe:
2. Select **GCP Marketplace** as the payment method. You will be redirected to the GCP Marketplace listing for Qdrant.
3. Select **Subscribe**. (If you have already subscribed, select **Manage on Provider**.)
4. On the next screen, choose options as required, and select **Subscribe**.
5. On the pop-up window that appers, select **Sign up with Qdrant**.
5. On the pop-up window that appears, select **Sign up with Qdrant**.
You will be redirected to the Billing Details screen in the [Qdrant Cloud Console](https://cloud.qdrant.io/). From there you can start to create Qdrant database clusters.
@@ -42,7 +42,7 @@ Qdrant clusters in Hybrid Cloud also run in hardened, unprivileged containers wi
### Private Cloud
In Qdrant Private Cloud, Qdrant clusters run completely isolated and air-gapped within your infrastucture without any connection to the Qdrant Cloud Console.
In Qdrant Private Cloud, Qdrant clusters run completely isolated and air-gapped within your infrastructure without any connection to the Qdrant Cloud Console.
Since there is no connection or communication with Qdrant, you are fully responsible for the security of the entire Qdrant Private Cloud installation. This also means that you do not benefit from the integrated management and observability features of Qdrant Managed Cloud and Hybrid Cloud.
@@ -27,9 +27,9 @@ Have a look at the [API reference](/documentation/interfaces/#api-reference) and
## Node Specific Endpoints
Next to the cluster endpoint which loadbalances requests across all healthy Qdrant nodes, each node in the cluster has its own endpoint as well. This is mainly usefull for monitoring or manual shard management purpuses.
Next to the cluster endpoint which loadbalances requests across all healthy Qdrant nodes, each node in the cluster has its own endpoint as well. This is mainly useful for monitoring or manual shard management purposes.
You can finde the node specific endpoints on the cluster detail page in the Qdrant Cloud Console.
You can find the node specific endpoints on the cluster detail page in the Qdrant Cloud Console.
![Cluster node endpoints](/documentation/cloud/cloud-node-endpoints.png)
@@ -9,10 +9,10 @@ Qdrant Cloud offers several advanced configuration options to optimize clusters
The cloud platform does not expose all [configuration options](/documentation/guides/configuration/) available in Qdrant. We have selected the relevant options that are explained in detail below.
In adition the cloud platform automatically configures the following settings for your cluster to ensure optimal performance and reliability:
In addition the cloud platform automatically configures the following settings for your cluster to ensure optimal performance and reliability:
* The maximum number of collections in a cluster is set to 1000. Larger numbers of collections lead to performance degradation. For more information see [Multitenancy](/documentation/guides/multiple-partitions/).
* Strict mode is activated by default for new collections enforcing that all filters being used in retrieve and udpate queries are indexed. This improves performance and reliability. You can disable this individually for each collection. For more information see [Strict Mode](/documentation/guides/administration/#strict-mode).
* Strict mode is activated by default for new collections enforcing that all filters being used in retrieve and update queries are indexed. This improves performance and reliability. You can disable this individually for each collection. For more information see [Strict Mode](/documentation/guides/administration/#strict-mode).
* The cluster mode is automatically enabled to allow distributed deployments and horizontal scaling.
* The maximum amount of payload indexes per collection is set to 100. Larger numbers of payload indexes lead to performance degradation (starting with Qdrant v1.16.0).
@@ -28,7 +28,7 @@ The following guided samples help you get started with real-world projects using
## Example Notebooks
Our Notebooks offer complex instructions that are supported with a throrough explanation. Follow along by trying out the code and get the most out of each example.
Our Notebooks offer complex instructions that are supported with a thorough explanation. Follow along by trying out the code and get the most out of each example.
| Example | Description | Stack |
|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------|----------------------------|
@@ -258,7 +258,7 @@ The output should look like following:
Our web service is implemented, yet running only on our local machine. It has to be exposed to the public before
Command-R can interact with it. For a quick experiment, it might be enough to set up tunneling using services such as
[ngrok](https://ngrok.com/). We won't cover all the details in the tutorial, but their
[Quickstart](https://ngrok.com/docs/guides/getting-started/) is a great resource describing the process step-by-step.
[Quickstart](https://ngrok.com/docs/getting-started/) is a great resource describing the process step-by-step.
Alternatively, you can also deploy the service with a public URL.
Once it's done, we can create the connector first, and then tell the model to use it, while interacting through the chat
@@ -237,7 +237,7 @@ search_pipeline = Pipeline()
```
Our second process takes user input, converts it into embeddings and then searches for the most relevant documents
using the query embedding. This might look familiar, but we arent working with `Document` instances
using the query embedding. This might look familiar, but we aren't working with `Document` instances
anymore, since the query only accepts raw text. Thus, some of the components will be different, especially the embedder,
as it has to accept a single string as an input and produce a single embedding as an output:
@@ -13,7 +13,7 @@ $$
$$
A detailed breakdown of the idea behind miniCOIL can be found in the
["miniCOIL: on the road to Usable Sparse Neural Retreival" article](https://qdrant.tech/articles/minicoil/) or, in a [recorded talk "miniCOIL: Sparse Neural Retrieval Done Right"](https://youtu.be/f1sBJMSgBXA?si=G3C5--UVRKAW5WJ0).
["miniCOIL: on the road to Usable Sparse Neural Retrieval" article](https://qdrant.tech/articles/minicoil/) or, in a [recorded talk "miniCOIL: Sparse Neural Retrieval Done Right"](https://youtu.be/f1sBJMSgBXA?si=G3C5--UVRKAW5WJ0).
This tutorial will demonstrate how miniCOIL-based sparse neural retrieval performs compared to BM25-based lexical retrieval.
@@ -41,7 +41,7 @@ TextCrossEncoder.list_supported_models()
This command displays the available models, including details such as output embedding dimensions, model description, model size, model sources, and model file.
<details>
<summary> <span style="background-color: gray; color: black;"> Avaliable models </span> </summary>
<summary> <span style="background-color: gray; color: black;"> Available models </span> </summary>
```python
@@ -92,7 +92,7 @@ retrieved_info = ar.run_vector_retriever(
print(retrieved_info)
```
You can refer to the Camel [documentation](https://docs.camel-ai.org/index.html) for more information about the retrieval mechansims.
You can refer to the Camel [documentation](https://docs.camel-ai.org/index.html) for more information about the retrieval mechanisms.
## End-To-End Examples
@@ -82,5 +82,5 @@ You can scale this process with a dataset (e.g. from Hugging Face) and evaluate
## Further Reading
- [End-to-end Evalutation Example](https://github.com/qdrant/qdrant-rag-eval/blob/master/workshop-rag-eval-qdrant-deepeval/notebook/rag_eval_qdrant_deepeval.ipynb)
- [End-to-end Evaluation Example](https://github.com/qdrant/qdrant-rag-eval/blob/master/workshop-rag-eval-qdrant-deepeval/notebook/rag_eval_qdrant_deepeval.ipynb)
- [DeepEval documentation](https://deepeval.com)
@@ -11,7 +11,7 @@ By integrating Qdrant with HoneyHive, you can:
- Trace vector database operations
- Monitor latency, embedding quality, and context relevance
- Evaluate retrieval performance in your RAG pipelines
- Optimize paramaters such as `chunk_size` or `chunk_overlap`
- Optimize parameters such as `chunk_size` or `chunk_overlap`
## Prerequisites
@@ -18,7 +18,7 @@ It might be installed with pip:
pip install langchain-qdrant
```
The integration supports searching for relevant documents usin dense/sparse and hybrid retrieval.
The integration supports searching for relevant documents using dense/sparse and hybrid retrieval.
Qdrant acts as a vector index that may store the embeddings with the documents used to generate them. There are various ways to use it, but calling `QdrantVectorStore.from_texts` or `QdrantVectorStore.from_documents` is probably the most straightforward way to get started:
@@ -79,4 +79,4 @@ vn.ask(question="<YOUR_QUESTION>")
- [Getting started with Vanna.AI](https://vanna.ai/docs/app/)
- [Vanna.AI documentation](https://vanna.ai/docs/)
- [Source Code](https://github.com/vanna-ai/vanna/tree/main/src/vanna/qdrant)
- [Source Code](https://github.com/vanna-ai/vanna/tree/main/src/vanna/integrations/qdrant)
@@ -1 +1 @@
This code snipet shows how to load a dataset and upload dense and sparse vectors to Qdrant. While uploading the vectors we also include a payload known as text.
This code snippet shows how to load a dataset and upload dense and sparse vectors to Qdrant. While uploading the vectors we also include a payload known as text.
@@ -1 +1 @@
This code snippet demonstrates how to create a full-text index for a specified field in a collection with stopwords configuration. There are 2 examples of Stopwords configuration, simple and explicit. Simple configuration specifies only a signle language, only pre-defined stopwords from this language will be used. Explicit configurations configures combination of stopwords from 2 languages and one custom stopword.
This code snippet demonstrates how to create a full-text index for a specified field in a collection with stopwords configuration. There are 2 examples of Stopwords configuration, simple and explicit. Simple configuration specifies only a single language, only pre-defined stopwords from this language will be used. Explicit configurations configures combination of stopwords from 2 languages and one custom stopword.
@@ -1,2 +1,2 @@
This code snippet is for a PUT request to insert points into a collection, where each point has an ID, a payload containing a group ID, and a vector. The code illustrates partitioning vectors by user to ensure that each user can only access their own vectors. It emphasizes adding a `group_id` field to each vector in the collection, facilitating user-specific data access control. Additionally, it suggests using an appropriate naming convention for the key in the payload for flexibility in data structures.
In addition, the snippet includes a shard key selector, allowing a dymamic routing between shared and dedicated shards based on the existance of `target` shard in the collection.
In addition, the snippet includes a shard key selector, allowing a dynamic routing between shared and dedicated shards based on the existence of `target` shard in the collection.
@@ -11,7 +11,7 @@ Alongside Hybrid Cloud specific scheduling options, you can also adjust various
## Scale Clusters
Hybrid cloud clusters can be scaled up and down, horizontall and vertically, at any time. For more details see [Scale Clusters](/documentation/cloud/cluster-scaling/).
Hybrid cloud clusters can be scaled up and down, horizontally and vertically, at any time. For more details see [Scale Clusters](/documentation/cloud/cluster-scaling/).
### Automatic Shard Rebalancing
@@ -196,7 +196,7 @@ By default, Qdrant Cloud will reserve 20% of available CPU and memory on each Po
You can modify this reservation in the “Configuration” section of the Qdrant Cluster detail page.
If you want to check how much resources are availabe on an empty Kubernetes node, you can use the following command:
If you want to check how much resources are available on an empty Kubernetes node, you can use the following command:
```shell
kubectl describe node <node-name>
@@ -60,7 +60,7 @@ By default, Qdrant Cloud will provision two volumes per Qdrant Pod: One for the
5. (Optional) If you have special requirements for any of the following, activate the **Show advanced configuration** option:
- If you use a proxy to connect from your infrastructure to the Qdrant Cloud API, you can specify the proxy URL, credentials and cetificates.
- If you use a proxy to connect from your infrastructure to the Qdrant Cloud API, you can specify the proxy URL, credentials and certificates.
- Container registry URL for Qdrant services (like Agent, Operator, Cluster-manager and monitoring stack) images. The default is <https://registry.cloud.qdrant.io/qdrant/>.
- Helm chart repository URL for the Qdrant services. The default is <oci://registry.cloud.qdrant.io/qdrant-charts>.
- An optional secret with credentials to access your own container registry.
@@ -144,6 +144,6 @@ At this point it is safe to delete the tenant's data from the shared Fallback Sh
### Limitations
- Currently, `fallback` Shard may only contain a single shard ID on its own. That means all small tenants must fit a single peer of the cluser. This restriction will be improved in future releases.
- Currently, `fallback` Shard may only contain a single shard ID on its own. That means all small tenants must fit a single peer of the cluster. This restriction will be improved in future releases.
- Similar to collections, dedicated Shards introduce some resource overhead. It is not recommended to create more than a thousand dedicated Shards per cluster. Recommended threshold of promoting a tenant is the same as the indexing threshold for a single collection, which is around 20K points.
@@ -183,7 +183,7 @@ Similarly, you can use inference at query time by providing the text or image to
## Datatypes
Newest versions of embeddings models generate vectors with very large dimentionalities.
Newest versions of embeddings models generate vectors with very large dimensionalities.
With OpenAI's `text-embedding-3-large` embedding model, the dimensionality can go up to 3072.
The amount of memory required to store such vectors grows linearly with the dimensionality,
@@ -40,5 +40,5 @@ With the LLM Observability data now being collected by OpenLIT, the next step is
To begin exploring your LLM Application's performance data within the OpenLIT UI, please see the [Quickstart Guide](https://docs.openlit.io/latest/quickstart).
If you want to integrate and send the generated metrics and traces to your existing observability tools like Promethues+Jaeger, Grafana or more, refer to the [Official Documentation for OpenLIT Connections](https://docs.openlit.io/latest/connections/intro) for detailed instructions.
If you want to integrate and send the generated metrics and traces to your existing observability tools like Prometheus+Jaeger, Grafana or more, refer to the [Official Documentation for OpenLIT Connections](https://docs.openlit.io/) for detailed instructions.
@@ -305,10 +305,10 @@ If you anticipate a lot of growth, we recommend 12 shards since you can expand f
Shards are evenly distributed across all existing nodes when a collection is first created.
When you add or remove nodes from the cluster, rebalancing of existing shards accross the nodes depends on how you've deployed the cluster:
When you add or remove nodes from the cluster, rebalancing of existing shards across the nodes depends on how you've deployed the cluster:
- In Qdrant Cloud, shards are [balanced across the nodes automatically](/documentation/cloud/configure-cluster/#shard-rebalancing).
- If your cluster is not runnning in Qdrant Cloud, you need to [manually balance shards](#moving-shards).
- If your cluster is not running in Qdrant Cloud, you need to [manually balance shards](#moving-shards).
### Resharding
@@ -1326,7 +1326,7 @@ Listener node will not participate in search operations, but will still accept w
All shards, stored on the listener node, will be converted to the `Listener` state.
Additionally, all write requests sent to the listener node will be processed with `wait=false` option, which means that the write oprations will be considered successful once they are written to WAL.
Additionally, all write requests sent to the listener node will be processed with `wait=false` option, which means that the write operations will be considered successful once they are written to WAL.
This mechanism should allow to minimize upsert latency in case of parallel snapshotting.
## Consensus Checkpointing
@@ -11,7 +11,7 @@ aliases:
The Qdrant open-source container image collects anonymized usage statistics from users in order to improve the engine by default. You can [deactivate](#deactivate-telemetry) at any time, and any data that has already been collected can be [deleted on request](#request-information-deletion).
Deactivating this will not affect your ability to monitor the Qdrant database yourself by accessing the `/metrics` or `/telemetry` endpoints of your database. It will just stop sending independend, anonymized usage statistics to the Qdrant team.
Deactivating this will not affect your ability to monitor the Qdrant database yourself by accessing the `/metrics` or `/telemetry` endpoints of your database. It will just stop sending independent, anonymized usage statistics to the Qdrant team.
<aside role="status">When using Qdrant Cloud, this setting does not apply and anonymized usage statistics are disabled by default.</aside>
@@ -24,7 +24,7 @@ If you are looking for a specific topic in a particular book, you can try to fin
Time passed, and we haven’t had much change in that area for quite a long time. But our textual data collection started to grow at a greater pace. So we also started building up many processes around those inverted indexes. For example, we allowed our users to provide many words and started splitting them into pieces. That allowed finding some documents which do not necessarily contain all the query words, but possibly part of them. We also started converting words into their root forms to cover more cases, removing stopwords, etc. Effectively we were becoming more and more user-friendly. Still, the idea behind the whole process is derived from the most straightforward keyword-based search known since the Middle Ages, with some tweaks.
{{< figure src=/docs/gettingstarted/tokenization.png caption="The process of tokenization with an additional stopwords removal and converstion to root form of a word." >}}
{{< figure src=/docs/gettingstarted/tokenization.png caption="The process of tokenization with an additional stopwords removal and conversion to root form of a word." >}}
Technically speaking, we encode the documents and queries into so-called sparse vectors where each position has a corresponding word from the whole dictionary. If the input text contains a specific word, it gets a non-zero value at that position. But in reality, none of the texts will contain more than hundreds of different words. So the majority of vectors will have thousands of zeros and a few non-zero values. That’s why we call them sparse. And they might be already used to calculate some word-based similarity by finding the documents which have the biggest overlap.
@@ -5,9 +5,9 @@ aliases: [ ../frameworks/buildship/ ]
# BuildShip
[BuildShip](https://buildship.com/) is a low-code visual builder to create APIs, scheduled jobs, and backend workflows with AI assitance.
[BuildShip](https://buildship.com/) is a low-code visual builder to create APIs, scheduled jobs, and backend workflows with AI assistance.
You can use the [Qdrant integration](https://buildship.com/integrations/qdrant) to development workflows with semantic-search capabilites.
You can use the [Qdrant integration](https://buildship.com/integrations/qdrant) to development workflows with semantic-search capabilities.
## Prerequisites
@@ -915,7 +915,7 @@ _Appears in:_
| `security` _[QdrantSecurityContext](#qdrantsecuritycontext)_ | Security specifies the security context for each Qdrant node. | | |
| `tolerations` _[Toleration](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.28/#toleration-v1-core) array_ | Tolerations specifies the tolerations for each Qdrant node. | | |
| `nodeSelector` _object (keys:string, values:string)_ | NodeSelector specifies the node selector for each Qdrant node. | | |
| `config` _[QdrantConfiguration](#qdrantconfiguration)_ | Config specifies the Qdrant configuration setttings for the clusters. | | |
| `config` _[QdrantConfiguration](#qdrantconfiguration)_ | Config specifies the Qdrant configuration settings for the clusters. | | |
| `ingress` _[Ingress](#ingress)_ | Ingress specifies the ingress for the cluster. | | |
| `service` _[KubernetesService](#kubernetesservice)_ | Service specifies the configuration of the Qdrant Kubernetes Service. | | |
| `gpu` _[GPU](#gpu)_ | GPU specifies GPU configuration for the cluster. If this field is not set, no GPU will be used. | | |
@@ -291,7 +291,7 @@ step certificate create mydomain.com qdrant-nodes.crt qdrant-nodes.key \
## GPU support
Starting with Qdrant 1.13 and private-cloud version 1.6.1 you can create a cluster that uses GPUs to accelarate indexing.
Starting with Qdrant 1.13 and private-cloud version 1.6.1 you can create a cluster that uses GPUs to accelerate indexing.
As a prerequisite, you need to have a Kubernetes cluster with GPU support. You can check the [Kubernetes documentation](https://kubernetes.io/docs/tasks/manage-gpus/scheduling-gpus/) for generic information on GPUs and Kubernetes, or the documentation of your specific Kubernetes distribution.
@@ -366,7 +366,7 @@ Can be applied to [float](/documentation/concepts/payload/#float) and [integer](
### Datetime Range
The datetime range is a unique range condition, used for [datetime](/documentation/concepts/payload/#datetime) payloads, which supports RFC 3339 formats.
You do not need to convert dates to UNIX timestaps. During comparison, timestamps are parsed and converted to UTC.
You do not need to convert dates to UNIX timestamps. During comparison, timestamps are parsed and converted to UTC.
_Available as of v1.8.0_
@@ -78,7 +78,7 @@ spec:
app.kubernetes.io/name: operator
```
The example aboves assumes that your Qdrant database and the cloud platform exporter are deployed in the `qdrant` namespace. Adjust the `namespaceSelector` and `namespace` fields according to your deployment.
The example above assumes that your Qdrant database and the cloud platform exporter are deployed in the `qdrant` namespace. Adjust the `namespaceSelector` and `namespace` fields according to your deployment.
## Step 3: Access Grafana
@@ -70,7 +70,7 @@ Qdrant will use vector embeddings of our facts to enrich the original prompt wit
We'll be using the [bge-base-en-v1.5](https://huggingface.co/BAAI/bge-small-en-v1.5) model via [FastEmbed](https://github.com/qdrant/fastembed/) - A lightweight, fast, Python library for embeddings generation.
The Qdrant client provides a handy integration with FastEmbed that makes building a knowledge base very straighforward.
The Qdrant client provides a handy integration with FastEmbed that makes building a knowledge base very straightforward.
First, we need to create a collection, so Qdrant would know what vectors it will be dealing with, and then, we just pass our raw documents
wrapped into `models.Document` to compute and upload the embeddings.
@@ -223,15 +223,15 @@ Alternatively, you can use the `wget` command:
```bash
wget https://node-0.my-cluster.com:6333/collections/test_collection/snapshots/test_collection-559032209313046-2024-01-03-13-20-11.snapshot \
--header="api-key: ${QDRANT_API_KEY}" \
-O node-0-shapshot.snapshot
-O node-0-snapshot.snapshot
wget https://node-1.my-cluster.com:6333/collections/test_collection/snapshots/test_collection-559032209313047-2024-01-03-13-20-12.snapshot \
--header="api-key: ${QDRANT_API_KEY}" \
-O node-1-shapshot.snapshot
-O node-1-snapshot.snapshot
wget https://node-2.my-cluster.com:6333/collections/test_collection/snapshots/test_collection-559032209313048-2024-01-03-13-20-13.snapshot \
--header="api-key: ${QDRANT_API_KEY}" \
-O node-2-shapshot.snapshot
-O node-2-snapshot.snapshot
```
The snapshots are now stored locally. We can use them to restore the collection to a different Qdrant instance, or treat them as a backup. We will create another collection using the same data on the same cluster.
@@ -262,17 +262,17 @@ Alternatively, you can use the `curl` command:
curl -X POST 'https://node-0.my-cluster.com:6333/collections/test_collection_import/snapshots/upload?priority=snapshot' \
-H 'api-key: ${QDRANT_API_KEY}' \
-H 'Content-Type:multipart/form-data' \
-F 'snapshot=@node-0-shapshot.snapshot'
-F 'snapshot=@node-0-snapshot.snapshot'
curl -X POST 'https://node-1.my-cluster.com:6333/collections/test_collection_import/snapshots/upload?priority=snapshot' \
-H 'api-key: ${QDRANT_API_KEY}' \
-H 'Content-Type:multipart/form-data' \
-F 'snapshot=@node-1-shapshot.snapshot'
-F 'snapshot=@node-1-snapshot.snapshot'
curl -X POST 'https://node-2.my-cluster.com:6333/collections/test_collection_import/snapshots/upload?priority=snapshot' \
-H 'api-key: ${QDRANT_API_KEY}' \
-H 'Content-Type:multipart/form-data' \
-F 'snapshot=@node-2-shapshot.snapshot'
-F 'snapshot=@node-2-snapshot.snapshot'
```
@@ -134,7 +134,7 @@ if not client.collection_exists("startups"):
```
Qdrant requires vectors to have their own names and configurations.
Parameters `size` and `distance` are mandatory, however, you can additionaly specify extended configuration for your vectors, like `quantization_config` or `hnsw_config`.
Parameters `size` and `distance` are mandatory, however, you can additionally specify extended configuration for your vectors, like `quantization_config` or `hnsw_config`.
4. Read data from the file.