mirror of
https://github.com/qdrant/qdrant.git
synced 2026-07-23 11:11:00 -05:00
Unclutter repo root (#4678)
* Move CODE_OF_CONDUCT.md to docs * Move CONTRIBUTING.md to docs * Drop QUICK_START_GRPC.md * Drop docs/favicon.ico as being unused * Move QUICK_START.md to docs
This commit is contained in:
2
.github/workflows/codespell.yml
vendored
2
.github/workflows/codespell.yml
vendored
@@ -21,4 +21,4 @@ jobs:
|
||||
- name: Codespell
|
||||
uses: codespell-project/actions-codespell@v2
|
||||
with:
|
||||
exclude_file: CODE_OF_CONDUCT.md
|
||||
exclude_file: docs/CODE_OF_CONDUCT.md
|
||||
|
||||
@@ -1,148 +0,0 @@
|
||||
# Quick Start with Qdrant using GRPC
|
||||
|
||||
DISCLAIMER: The GRPC API for Qdrant are under development and disabled by default in production builds.
|
||||
Limited functionality is exposed at the moment. This draft tutorial is for testing and internal use only.
|
||||
|
||||
## Install grpcurl
|
||||
This tutorial would use the grpcurl command line tool in order to perform grpc requests. Please follow the
|
||||
steps provided in the [grpcurl repository](https://github.com/fullstorydev/grpcurl) in order to install it.
|
||||
|
||||
## Build Qdrant with GRPC feature
|
||||
The GRPC feature is disabled by default in order not to impact the production binary until complete.
|
||||
In order to run qdrant with grpc feature enabled, executed the following command:
|
||||
```bash
|
||||
QDRANT__SERVICE__GRPC_PORT="6334" cargo run --bin qdrant
|
||||
```
|
||||
It will run qdrant exposing both json and grpc API. If you do not want to use JSON API, add ``--no-default-features ``
|
||||
flag as well:
|
||||
```bash
|
||||
QDRANT__SERVICE__GRPC_PORT="6334" cargo run --no-default-features --bin qdrant
|
||||
```
|
||||
Note that actix is not compiled in this case.
|
||||
|
||||
## GRPC Service Health Check
|
||||
Execute the following command
|
||||
```bash
|
||||
grpcurl -plaintext -import-path ./lib/api/src/grpc/proto/ -proto qdrant.proto -d '{}' 0.0.0.0:6334 qdrant.Qdrant/HealthCheck
|
||||
```
|
||||
Here and below the ```./lib/api/src/grpc/proto/``` should be a path to the folder with a protobuf schemas.
|
||||
Expected response:
|
||||
```json
|
||||
{
|
||||
"title": "qdrant - vector search engine",
|
||||
"version": "<version>"
|
||||
}
|
||||
```
|
||||
|
||||
## Collections
|
||||
|
||||
### Create collection
|
||||
First - let's create a collection with dot-production metric.
|
||||
```bash
|
||||
grpcurl -plaintext -import-path ./lib/api/src/grpc/proto/ -proto qdrant.proto -d '{
|
||||
"collection_name": "test_collection",
|
||||
"vectors_config": {
|
||||
"params": {
|
||||
"size": 4,
|
||||
"distance": "Dot"
|
||||
}
|
||||
}
|
||||
}' \
|
||||
0.0.0.0:6334 qdrant.Collections/Create
|
||||
```
|
||||
|
||||
Expected response:
|
||||
```json
|
||||
{
|
||||
"result": true,
|
||||
"time": 0.482865481
|
||||
}
|
||||
```
|
||||
|
||||
### List all collections
|
||||
We can now view the list of collections to ensure that the collection was created:
|
||||
```bash
|
||||
grpcurl -plaintext -import-path ./lib/api/src/grpc/proto/ -proto qdrant.proto 0.0.0.0:6334 qdrant.Collections/List
|
||||
```
|
||||
|
||||
Expected response:
|
||||
```json
|
||||
{
|
||||
"collections": [
|
||||
{
|
||||
"name": "test_collection"
|
||||
}
|
||||
],
|
||||
"time": 9.4219e-05
|
||||
}
|
||||
```
|
||||
|
||||
### Update collection
|
||||
The collection could also be updated:
|
||||
```bash
|
||||
grpcurl -plaintext -import-path ./lib/api/src/grpc/proto/ -proto qdrant.proto -d '{
|
||||
"collection_name": "test_collection",
|
||||
"optimizers_config": {
|
||||
"max_segment_size": 100
|
||||
}
|
||||
}' \
|
||||
0.0.0.0:6334 qdrant.Collections/Update
|
||||
```
|
||||
|
||||
## Add points
|
||||
Let's now add vectors with some payload:
|
||||
|
||||
```bash
|
||||
grpcurl -plaintext -import-path ./lib/api/src/grpc/proto/ -proto qdrant.proto -d '{
|
||||
"collection_name": "test_collection",
|
||||
"wait": true,
|
||||
"points": [
|
||||
{
|
||||
"id": {
|
||||
"num": 1
|
||||
},
|
||||
"vectors": {
|
||||
"vector": { "data": [0.05, 0.61, 0.76, 0.74] }
|
||||
},
|
||||
"payload": {
|
||||
"city": { "string_value": "Berlin" },
|
||||
"country": { "string_value": "Germany" },
|
||||
"population": { "integer_value": 1000000 },
|
||||
"square": { "double_value": 12.5 },
|
||||
"coords": {
|
||||
"struct_value": {
|
||||
"fields":{
|
||||
"lat": { "double_value": 1.0 },
|
||||
"lon": { "double_value": 2.0 }
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{"id": {"num": 2}, "vectors": {"vector": {"data": [0.18, 0.01, 0.85, 0.80]}}, "payload": {"square": {"list_value": {"values": [{"integer_value": 10}, {"integer_value": 11}]}} }},
|
||||
{"id": {"num": 3}, "vectors": {"vector": {"data": [0.24, 0.18, 0.22, 0.45]}}, "payload": {"count": {"list_value": {"values": [{"integer_value": 0}]}} }},
|
||||
{"id": {"num": 4}, "vectors": {"vector": {"data": [0.24, 0.18, 0.22, 0.45]}}, "payload": {"coords": {"list_value": {"values": [{ "struct_value": {"fields": { "lat": { "double_value":1.0 }, "lon": { "double_value": 2.0 } } } }, { "struct_value": {"fields": { "lat": { "double_value":3.0 }, "lon": { "double_value": 4.0 } } } }] }} }},
|
||||
{"id": {"num": 5}, "vectors": {"vector": {"data": [0.35, 0.08, 0.11, 0.44]}}}
|
||||
]
|
||||
}' \
|
||||
0.0.0.0:6334 qdrant.Points/Upsert
|
||||
```
|
||||
|
||||
Expected response:
|
||||
```json
|
||||
{
|
||||
"result": {
|
||||
"status": "Completed"
|
||||
},
|
||||
"time": 0.004128988
|
||||
}
|
||||
```
|
||||
|
||||
### Delete collection
|
||||
The qdrant.Collections/UpdateCollections rpc could also be used to delete a collection:
|
||||
```bash
|
||||
grpcurl -plaintext -import-path ./lib/api/src/grpc/proto/ -proto qdrant.proto -d '{
|
||||
"collection_name": "test_collection"
|
||||
}' \
|
||||
0.0.0.0:6334 qdrant.Collections/Delete
|
||||
```
|
||||
@@ -26,7 +26,7 @@ With Qdrant, embeddings or neural network encoders can be turned into full-fledg
|
||||
Qdrant is also available as a fully managed **[Qdrant Cloud](https://cloud.qdrant.io/)** ⛅ including a **free tier**.
|
||||
|
||||
<p align="center">
|
||||
<strong><a href="./QUICK_START.md">Quick Start</a> • <a href="#clients">Client Libraries</a> • <a href="#demo-projects">Demo Projects</a> • <a href="#integrations">Integrations</a> • <a href="#contacts">Contact</a>
|
||||
<strong><a href="docs/QUICK_START.md">Quick Start</a> • <a href="#clients">Client Libraries</a> • <a href="#demo-projects">Demo Projects</a> • <a href="#integrations">Integrations</a> • <a href="#contacts">Contact</a>
|
||||
|
||||
</strong>
|
||||
</p>
|
||||
@@ -83,7 +83,7 @@ Qdrant offers the following client libraries to help you integrate it into your
|
||||
|
||||
### Where do I go from here?
|
||||
|
||||
- [Quick Start Guide](https://github.com/qdrant/qdrant/blob/master/QUICK_START.md)
|
||||
- [Quick Start Guide](docs/QUICK_START.md)
|
||||
- End to End [Colab Notebook](https://colab.research.google.com/drive/1Bz8RSVHwnNDaNtDwotfPj0w7AYzsdXZ-?usp=sharing) demo with SentenceBERT and Qdrant
|
||||
- Detailed [Documentation](https://qdrant.tech/documentation/) are great starting points
|
||||
- [Step-by-Step Tutorial](https://qdrant.to/qdrant-tutorial) to create your first neural network project with Qdrant
|
||||
|
||||
BIN
docs/favicon.ico
BIN
docs/favicon.ico
Binary file not shown.
|
Before Width: | Height: | Size: 15 KiB |
@@ -30,7 +30,7 @@ Let us know whenever you have a problem, face an unexpected behavior, or see a l
|
||||
You can do it in any convenient way - create an [issue](https://github.com/qdrant/qdrant/issues), start a [discussion](https://github.com/qdrant/qdrant/discussions), or drop up a [message](https://discord.gg/tdtYvXjC4h).
|
||||
If you use Qdrant or Metric Learning in your projects, we'd love to hear your story! Feel free to share articles and demos in our community.
|
||||
|
||||
For those familiar with Rust - check out our [contribution guide](https://github.com/qdrant/qdrant/blob/master/CONTRIBUTING.md).
|
||||
For those familiar with Rust - check out our [contribution guide](../CONTRIBUTING.md).
|
||||
If you have problems with code or architecture understanding - reach us at any time.
|
||||
Feeling confident and want to contribute more? - Come to [work with us](https://qdrant.join.com/)!
|
||||
|
||||
|
||||
@@ -22,7 +22,7 @@ Let us know whenever you have a problem, face an unexpected behavior, or see a l
|
||||
You can do it in any convenient way - create an [issue](https://github.com/qdrant/qdrant/issues), start a [discussion](https://github.com/qdrant/qdrant/discussions), or drop up a [message](https://discord.gg/tdtYvXjC4h).
|
||||
If you use Qdrant or Metric Learning in your projects, we'd love to hear your story! Feel free to share articles and demos in our community.
|
||||
|
||||
For those familiar with Rust - check out our [contribution guide](https://github.com/qdrant/qdrant/blob/master/CONTRIBUTING.md).
|
||||
For those familiar with Rust - check out our [contribution guide](../CONTRIBUTING.md).
|
||||
If you have problems with code or architecture understanding - reach us at any time.
|
||||
Feeling confident and want to contribute more? - Come to [work with us](https://qdrant.join.com/)!
|
||||
|
||||
@@ -56,4 +56,4 @@ Feeling confident and want to contribute more? - Come to [work with us](https://
|
||||
* [ ] Extend full-text filtering support
|
||||
* [ ] Support for phrase queries
|
||||
* [ ] Support for logical operators
|
||||
* [x] Simplify update of collection parameters
|
||||
* [x] Simplify update of collection parameters
|
||||
|
||||
Reference in New Issue
Block a user