Merge pull request #2298 from qdrant/version-1.18

Publish docs for version 1.18
This commit is contained in:
Tim Visée
2026-05-11 17:02:50 +02:00
committed by GitHub
238 changed files with 3573 additions and 246 deletions
@@ -0,0 +1 @@
Query the audit log with time range and exact-match filters.
@@ -0,0 +1,12 @@
curl -X POST 'https://YOUR-CLUSTER-URL:6333/audit/logs' \
-H 'api-key: QDRANT_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"limit": 50,
"time_from": "2026-03-26T00:00:00Z",
"time_to": "2026-03-27T00:00:00Z",
"filters": {
"result": "denied",
"collection": "my_collection"
}
}'
@@ -0,0 +1,14 @@
```bash
curl -X POST 'https://YOUR-CLUSTER-URL:6333/audit/logs' \
-H 'api-key: QDRANT_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"limit": 50,
"time_from": "2026-03-26T00:00:00Z",
"time_to": "2026-03-27T00:00:00Z",
"filters": {
"result": "denied",
"collection": "my_collection"
}
}'
```
@@ -0,0 +1 @@
Query the audit log via the REST API.
@@ -0,0 +1,4 @@
curl -X POST 'https://YOUR-CLUSTER-URL:6333/audit/logs' \
-H 'api-key: QDRANT_API_KEY' \
-H 'Content-Type: application/json' \
-d '{}'
@@ -0,0 +1,6 @@
```bash
curl -X POST 'https://YOUR-CLUSTER-URL:6333/audit/logs' \
-H 'api-key: QDRANT_API_KEY' \
-H 'Content-Type: application/json' \
-d '{}'
```
@@ -0,0 +1 @@
Attach a tracing ID to a request so it appears in the audit log entry for that request.
@@ -0,0 +1,3 @@
curl -X GET http://localhost:6333/collections \
--header 'api-key: your_api_key_here' \
--header 'x-request-id: my-trace-id'
@@ -0,0 +1,14 @@
using Qdrant.Client;
public class Snippet
{
public static async Task Run()
{
// @hide-start
var client = new QdrantClient("localhost", 6334);
// @hide-end
using (RequestHeaders.Use("x-request-id", "my-trace-id"))
await client.ListCollectionsAsync();
}
}
@@ -0,0 +1,5 @@
```bash
curl -X GET http://localhost:6333/collections \
--header 'api-key: your_api_key_here' \
--header 'x-request-id: my-trace-id'
```
@@ -0,0 +1,6 @@
```csharp
using Qdrant.Client;
using (RequestHeaders.Use("x-request-id", "my-trace-id"))
await client.ListCollectionsAsync();
```
@@ -0,0 +1,10 @@
```go
import (
"context"
"github.com/qdrant/go-client/qdrant"
)
ctx := qdrant.WithHeader(context.Background(), "x-request-id", "my-trace-id")
client.ListCollections(ctx)
```
@@ -0,0 +1,9 @@
```java
import io.qdrant.client.QdrantClient;
import io.qdrant.client.QdrantGrpcClient;
import io.qdrant.client.RequestHeaders;
import io.grpc.Context;
Context ctx = RequestHeaders.withHeader(Context.current(), "x-request-id", "my-trace-id");
ctx.run(() -> client.listCollectionsAsync());
```
@@ -0,0 +1,7 @@
```python
from qdrant_client import QdrantClient
from qdrant_client.context_headers import headers
with headers({"x-request-id": "my-trace-id"}):
client.get_collections()
```
@@ -0,0 +1,8 @@
```rust
use qdrant_client::Qdrant;
client
.with_header("x-request-id", "my-trace-id")
.list_collections()
.await?;
```
@@ -0,0 +1,7 @@
```typescript
import { QdrantClient, withHeaders } from "@qdrant/js-client-rest";
const result = await withHeaders({ "x-request-id": "my-trace-id" }, () =>
client.getCollections()
);
```
@@ -0,0 +1,17 @@
package snippet
import (
"context"
"github.com/qdrant/go-client/qdrant"
)
func Main() {
// @hide-start
client, err := qdrant.NewClient(&qdrant.Config{Host: "localhost", Port: 6334})
if err != nil { panic(err) }
// @hide-end
ctx := qdrant.WithHeader(context.Background(), "x-request-id", "my-trace-id")
client.ListCollections(ctx)
}
@@ -0,0 +1,18 @@
package com.example.snippets_amalgamation;
import io.qdrant.client.QdrantClient;
import io.qdrant.client.QdrantGrpcClient;
import io.qdrant.client.RequestHeaders;
import io.grpc.Context;
public class Snippet {
public static void run() throws Exception {
// @hide-start
QdrantClient client = new QdrantClient(
QdrantGrpcClient.newBuilder("localhost", 6334, false).build());
// @hide-end
Context ctx = RequestHeaders.withHeader(Context.current(), "x-request-id", "my-trace-id");
ctx.run(() -> client.listCollectionsAsync());
}
}
@@ -0,0 +1,7 @@
from qdrant_client import QdrantClient
from qdrant_client.context_headers import headers
client = QdrantClient(url="http://localhost:6333") # @hide
with headers({"x-request-id": "my-trace-id"}):
client.get_collections()
@@ -0,0 +1,12 @@
use qdrant_client::Qdrant;
pub async fn main() -> anyhow::Result<()> {
let client = Qdrant::from_url("http://localhost:6334").build()?; // @hide
client
.with_header("x-request-id", "my-trace-id")
.list_collections()
.await?;
Ok(())
}
@@ -0,0 +1,7 @@
import { QdrantClient, withHeaders } from "@qdrant/js-client-rest";
const client = new QdrantClient({ host: "localhost", port: 6333 }); // @hide
const result = await withHeaders({ "x-request-id": "my-trace-id" }, () =>
client.getCollections()
);
@@ -0,0 +1 @@
This code creates a collection with TurboQuant using 2-bit encoding. Specify `bits` to select the compression level. Available values are `bits4` (default, 8× compression), `bits2` (16× compression), `bits1_5` (24× compression), and `bits1` (32× compression).
@@ -0,0 +1,21 @@
using Qdrant.Client;
using Qdrant.Client.Grpc;
public class Snippet
{
public static async Task Run()
{
// @hide-start
var client = new QdrantClient("localhost", 6334);
// @hide-end
await client.CreateCollectionAsync(
collectionName: "{collection_name}",
vectorsConfig: new VectorParams { Size = 1536, Distance = Distance.Cosine },
quantizationConfig: new QuantizationConfig
{
Turboquant = new TurboQuantization { AlwaysRam = true, Bits = TurboQuantBitSize.Bits2 }
}
);
}
}
@@ -0,0 +1,13 @@
```csharp
using Qdrant.Client;
using Qdrant.Client.Grpc;
await client.CreateCollectionAsync(
collectionName: "{collection_name}",
vectorsConfig: new VectorParams { Size = 1536, Distance = Distance.Cosine },
quantizationConfig: new QuantizationConfig
{
Turboquant = new TurboQuantization { AlwaysRam = true, Bits = TurboQuantBitSize.Bits2 }
}
);
```
@@ -0,0 +1,21 @@
```go
import (
"context"
"github.com/qdrant/go-client/qdrant"
)
client.CreateCollection(context.Background(), &qdrant.CreateCollection{
CollectionName: "{collection_name}",
VectorsConfig: qdrant.NewVectorsConfig(&qdrant.VectorParams{
Size: 1536,
Distance: qdrant.Distance_Cosine,
}),
QuantizationConfig: qdrant.NewQuantizationTurbo(
&qdrant.TurboQuantization{
AlwaysRam: qdrant.PtrOf(true),
Bits: qdrant.TurboQuantBitSize_Bits2.Enum(),
},
),
})
```
@@ -0,0 +1,34 @@
```java
import io.qdrant.client.QdrantClient;
import io.qdrant.client.QdrantGrpcClient;
import io.qdrant.client.grpc.Collections.CreateCollection;
import io.qdrant.client.grpc.Collections.Distance;
import io.qdrant.client.grpc.Collections.QuantizationConfig;
import io.qdrant.client.grpc.Collections.TurboQuantBitSize;
import io.qdrant.client.grpc.Collections.TurboQuantization;
import io.qdrant.client.grpc.Collections.VectorParams;
import io.qdrant.client.grpc.Collections.VectorsConfig;
client
.createCollectionAsync(
CreateCollection.newBuilder()
.setCollectionName("{collection_name}")
.setVectorsConfig(
VectorsConfig.newBuilder()
.setParams(
VectorParams.newBuilder()
.setSize(1536)
.setDistance(Distance.Cosine)
.build())
.build())
.setQuantizationConfig(
QuantizationConfig.newBuilder()
.setTurboquant(
TurboQuantization.newBuilder()
.setAlwaysRam(true)
.setBits(TurboQuantBitSize.Bits2)
.build())
.build())
.build())
.get();
```
@@ -0,0 +1,14 @@
```python
from qdrant_client import QdrantClient, models
client.create_collection(
collection_name="{collection_name}",
vectors_config=models.VectorParams(size=1536, distance=models.Distance.COSINE),
quantization_config=models.TurboQuantization(
turbo=models.TurboQuantQuantizationConfig(
always_ram=True,
bits=models.TurboQuantBitSize.BITS2,
),
),
)
```
@@ -0,0 +1,19 @@
```rust
use qdrant_client::qdrant::{
CreateCollectionBuilder, Distance, TurboQuantBitSize, TurboQuantizationBuilder,
VectorParamsBuilder,
};
use qdrant_client::Qdrant;
client
.create_collection(
CreateCollectionBuilder::new("{collection_name}")
.vectors_config(VectorParamsBuilder::new(1536, Distance::Cosine))
.quantization_config(
TurboQuantizationBuilder::new()
.always_ram(true)
.bits(TurboQuantBitSize::Bits2),
),
)
.await?;
```
@@ -0,0 +1,16 @@
```typescript
import { QdrantClient } from "@qdrant/js-client-rest";
client.createCollection("{collection_name}", {
vectors: {
size: 1536,
distance: "Cosine",
},
quantization_config: {
turbo: {
always_ram: true,
bits: "bits2",
},
},
});
```
@@ -0,0 +1,32 @@
package snippet
import (
"context"
"github.com/qdrant/go-client/qdrant"
)
func Main() {
// @hide-start
client, err := qdrant.NewClient(&qdrant.Config{
Host: "localhost",
Port: 6334,
})
if err != nil { panic(err) }
// @hide-end
client.CreateCollection(context.Background(), &qdrant.CreateCollection{
CollectionName: "{collection_name}",
VectorsConfig: qdrant.NewVectorsConfig(&qdrant.VectorParams{
Size: 1536,
Distance: qdrant.Distance_Cosine,
}),
QuantizationConfig: qdrant.NewQuantizationTurbo(
&qdrant.TurboQuantization{
AlwaysRam: qdrant.PtrOf(true),
Bits: qdrant.TurboQuantBitSize_Bits2.Enum(),
},
),
})
}
@@ -0,0 +1,15 @@
```http
PUT /collections/{collection_name}
{
"vectors": {
"size": 1536,
"distance": "Cosine"
},
"quantization_config": {
"turbo": {
"bits": "bits2",
"always_ram": true
}
}
}
```
@@ -0,0 +1,43 @@
package com.example.snippets_amalgamation;
import io.qdrant.client.QdrantClient;
import io.qdrant.client.QdrantGrpcClient;
import io.qdrant.client.grpc.Collections.CreateCollection;
import io.qdrant.client.grpc.Collections.Distance;
import io.qdrant.client.grpc.Collections.QuantizationConfig;
import io.qdrant.client.grpc.Collections.TurboQuantBitSize;
import io.qdrant.client.grpc.Collections.TurboQuantization;
import io.qdrant.client.grpc.Collections.VectorParams;
import io.qdrant.client.grpc.Collections.VectorsConfig;
public class Snippet {
public static void run() throws Exception {
// @hide-start
QdrantClient client =
new QdrantClient(QdrantGrpcClient.newBuilder("localhost", 6334, false).build());
// @hide-end
client
.createCollectionAsync(
CreateCollection.newBuilder()
.setCollectionName("{collection_name}")
.setVectorsConfig(
VectorsConfig.newBuilder()
.setParams(
VectorParams.newBuilder()
.setSize(1536)
.setDistance(Distance.Cosine)
.build())
.build())
.setQuantizationConfig(
QuantizationConfig.newBuilder()
.setTurboquant(
TurboQuantization.newBuilder()
.setAlwaysRam(true)
.setBits(TurboQuantBitSize.Bits2)
.build())
.build())
.build())
.get();
}
}
@@ -0,0 +1,16 @@
from qdrant_client import QdrantClient, models
# @hide-start
client = QdrantClient(url="http://localhost:6333")
# @hide-end
client.create_collection(
collection_name="{collection_name}",
vectors_config=models.VectorParams(size=1536, distance=models.Distance.COSINE),
quantization_config=models.TurboQuantization(
turbo=models.TurboQuantQuantizationConfig(
always_ram=True,
bits=models.TurboQuantBitSize.BITS2,
),
),
)
@@ -0,0 +1,25 @@
use qdrant_client::qdrant::{
CreateCollectionBuilder, Distance, TurboQuantBitSize, TurboQuantizationBuilder,
VectorParamsBuilder,
};
use qdrant_client::Qdrant;
pub async fn main() -> anyhow::Result<()> {
// @hide-start
let client = Qdrant::from_url("http://localhost:6334").build()?;
// @hide-end
client
.create_collection(
CreateCollectionBuilder::new("{collection_name}")
.vectors_config(VectorParamsBuilder::new(1536, Distance::Cosine))
.quantization_config(
TurboQuantizationBuilder::new()
.always_ram(true)
.bits(TurboQuantBitSize::Bits2),
),
)
.await?;
Ok(())
}
@@ -0,0 +1,18 @@
import { QdrantClient } from "@qdrant/js-client-rest";
// @hide-start
const client = new QdrantClient({ host: "localhost", port: 6333 });
// @hide-end
client.createCollection("{collection_name}", {
vectors: {
size: 1536,
distance: "Cosine",
},
quantization_config: {
turbo: {
always_ram: true,
bits: "bits2",
},
},
});
@@ -0,0 +1 @@
This code creates a collection with TurboQuant enabled using the default 4-bit encoding. To enable TurboQuant on an existing collection, use a PATCH request or the `update_collection` method and omit the vector configuration.
@@ -0,0 +1,21 @@
using Qdrant.Client;
using Qdrant.Client.Grpc;
public class Snippet
{
public static async Task Run()
{
// @hide-start
var client = new QdrantClient("localhost", 6334);
// @hide-end
await client.CreateCollectionAsync(
collectionName: "{collection_name}",
vectorsConfig: new VectorParams { Size = 1536, Distance = Distance.Cosine },
quantizationConfig: new QuantizationConfig
{
Turboquant = new TurboQuantization { AlwaysRam = true }
}
);
}
}
@@ -0,0 +1,13 @@
```csharp
using Qdrant.Client;
using Qdrant.Client.Grpc;
await client.CreateCollectionAsync(
collectionName: "{collection_name}",
vectorsConfig: new VectorParams { Size = 1536, Distance = Distance.Cosine },
quantizationConfig: new QuantizationConfig
{
Turboquant = new TurboQuantization { AlwaysRam = true }
}
);
```
@@ -0,0 +1,20 @@
```go
import (
"context"
"github.com/qdrant/go-client/qdrant"
)
client.CreateCollection(context.Background(), &qdrant.CreateCollection{
CollectionName: "{collection_name}",
VectorsConfig: qdrant.NewVectorsConfig(&qdrant.VectorParams{
Size: 1536,
Distance: qdrant.Distance_Cosine,
}),
QuantizationConfig: qdrant.NewQuantizationTurbo(
&qdrant.TurboQuantization{
AlwaysRam: qdrant.PtrOf(true),
},
),
})
```
@@ -0,0 +1,29 @@
```java
import io.qdrant.client.QdrantClient;
import io.qdrant.client.QdrantGrpcClient;
import io.qdrant.client.grpc.Collections.CreateCollection;
import io.qdrant.client.grpc.Collections.Distance;
import io.qdrant.client.grpc.Collections.QuantizationConfig;
import io.qdrant.client.grpc.Collections.TurboQuantization;
import io.qdrant.client.grpc.Collections.VectorParams;
import io.qdrant.client.grpc.Collections.VectorsConfig;
client
.createCollectionAsync(
CreateCollection.newBuilder()
.setCollectionName("{collection_name}")
.setVectorsConfig(
VectorsConfig.newBuilder()
.setParams(
VectorParams.newBuilder()
.setSize(1536)
.setDistance(Distance.Cosine)
.build())
.build())
.setQuantizationConfig(
QuantizationConfig.newBuilder()
.setTurboquant(TurboQuantization.newBuilder().setAlwaysRam(true).build())
.build())
.build())
.get();
```
@@ -0,0 +1,13 @@
```python
from qdrant_client import QdrantClient, models
client.create_collection(
collection_name="{collection_name}",
vectors_config=models.VectorParams(size=1536, distance=models.Distance.COSINE),
quantization_config=models.TurboQuantization(
turbo=models.TurboQuantQuantizationConfig(
always_ram=True,
),
),
)
```
@@ -0,0 +1,14 @@
```rust
use qdrant_client::qdrant::{
CreateCollectionBuilder, Distance, TurboQuantizationBuilder, VectorParamsBuilder,
};
use qdrant_client::Qdrant;
client
.create_collection(
CreateCollectionBuilder::new("{collection_name}")
.vectors_config(VectorParamsBuilder::new(1536, Distance::Cosine))
.quantization_config(TurboQuantizationBuilder::new().always_ram(true)),
)
.await?;
```
@@ -0,0 +1,15 @@
```typescript
import { QdrantClient } from "@qdrant/js-client-rest";
client.createCollection("{collection_name}", {
vectors: {
size: 1536,
distance: "Cosine",
},
quantization_config: {
turbo: {
always_ram: true,
},
},
});
```
@@ -0,0 +1,31 @@
package snippet
import (
"context"
"github.com/qdrant/go-client/qdrant"
)
func Main() {
// @hide-start
client, err := qdrant.NewClient(&qdrant.Config{
Host: "localhost",
Port: 6334,
})
if err != nil { panic(err) }
// @hide-end
client.CreateCollection(context.Background(), &qdrant.CreateCollection{
CollectionName: "{collection_name}",
VectorsConfig: qdrant.NewVectorsConfig(&qdrant.VectorParams{
Size: 1536,
Distance: qdrant.Distance_Cosine,
}),
QuantizationConfig: qdrant.NewQuantizationTurbo(
&qdrant.TurboQuantization{
AlwaysRam: qdrant.PtrOf(true),
},
),
})
}
@@ -0,0 +1,14 @@
```http
PUT /collections/{collection_name}
{
"vectors": {
"size": 1536,
"distance": "Cosine"
},
"quantization_config": {
"turbo": {
"always_ram": true
}
}
}
```
@@ -0,0 +1,38 @@
package com.example.snippets_amalgamation;
import io.qdrant.client.QdrantClient;
import io.qdrant.client.QdrantGrpcClient;
import io.qdrant.client.grpc.Collections.CreateCollection;
import io.qdrant.client.grpc.Collections.Distance;
import io.qdrant.client.grpc.Collections.QuantizationConfig;
import io.qdrant.client.grpc.Collections.TurboQuantization;
import io.qdrant.client.grpc.Collections.VectorParams;
import io.qdrant.client.grpc.Collections.VectorsConfig;
public class Snippet {
public static void run() throws Exception {
// @hide-start
QdrantClient client =
new QdrantClient(QdrantGrpcClient.newBuilder("localhost", 6334, false).build());
// @hide-end
client
.createCollectionAsync(
CreateCollection.newBuilder()
.setCollectionName("{collection_name}")
.setVectorsConfig(
VectorsConfig.newBuilder()
.setParams(
VectorParams.newBuilder()
.setSize(1536)
.setDistance(Distance.Cosine)
.build())
.build())
.setQuantizationConfig(
QuantizationConfig.newBuilder()
.setTurboquant(TurboQuantization.newBuilder().setAlwaysRam(true).build())
.build())
.build())
.get();
}
}
@@ -0,0 +1,15 @@
from qdrant_client import QdrantClient, models
# @hide-start
client = QdrantClient(url="http://localhost:6333")
# @hide-end
client.create_collection(
collection_name="{collection_name}",
vectors_config=models.VectorParams(size=1536, distance=models.Distance.COSINE),
quantization_config=models.TurboQuantization(
turbo=models.TurboQuantQuantizationConfig(
always_ram=True,
),
),
)
@@ -0,0 +1,20 @@
use qdrant_client::qdrant::{
CreateCollectionBuilder, Distance, TurboQuantizationBuilder, VectorParamsBuilder,
};
use qdrant_client::Qdrant;
pub async fn main() -> anyhow::Result<()> {
// @hide-start
let client = Qdrant::from_url("http://localhost:6334").build()?;
// @hide-end
client
.create_collection(
CreateCollectionBuilder::new("{collection_name}")
.vectors_config(VectorParamsBuilder::new(1536, Distance::Cosine))
.quantization_config(TurboQuantizationBuilder::new().always_ram(true)),
)
.await?;
Ok(())
}
@@ -0,0 +1,17 @@
import { QdrantClient } from "@qdrant/js-client-rest";
// @hide-start
const client = new QdrantClient({ host: "localhost", port: 6333 });
// @hide-end
client.createCollection("{collection_name}", {
vectors: {
size: 1536,
distance: "Cosine",
},
quantization_config: {
turbo: {
always_ram: true,
},
},
});
@@ -0,0 +1 @@
Create a new dense named vector on an existing collection. Only the immutable vector-space properties are required: size and distance. Storage type, index, and quantization can be configured separately afterward.
@@ -0,0 +1,19 @@
using Qdrant.Client;
using Qdrant.Client.Grpc;
public class Snippet
{
public static async Task Run()
{
// @hide-start
var client = new QdrantClient("localhost", 6334);
// @hide-end
await client.CreateVectorNameAsync(new()
{
CollectionName = "{collection_name}",
VectorName = "{vector_name}",
DenseConfig = new() { Size = 256, Distance = Distance.Cosine }
});
}
}
@@ -0,0 +1,11 @@
```csharp
using Qdrant.Client;
using Qdrant.Client.Grpc;
await client.CreateVectorNameAsync(new()
{
CollectionName = "{collection_name}",
VectorName = "{vector_name}",
DenseConfig = new() { Size = 256, Distance = Distance.Cosine }
});
```
@@ -0,0 +1,18 @@
```go
import (
"context"
"github.com/qdrant/go-client/qdrant"
)
client.CreateVectorName(context.Background(), &qdrant.CreateVectorNameRequest{
CollectionName: "{collection_name}",
VectorName: "{vector_name}",
VectorConfig: &qdrant.CreateVectorNameRequest_DenseConfig{
DenseConfig: &qdrant.DenseVectorCreationConfig{
Size: 256,
Distance: qdrant.Distance_Cosine,
},
},
})
```
@@ -0,0 +1,20 @@
```java
import io.qdrant.client.QdrantClient;
import io.qdrant.client.QdrantGrpcClient;
import io.qdrant.client.grpc.Collections.Distance;
import io.qdrant.client.grpc.Points.CreateVectorNameRequest;
import io.qdrant.client.grpc.Points.DenseVectorCreationConfig;
client
.createVectorNameAsync(
CreateVectorNameRequest.newBuilder()
.setCollectionName("{collection_name}")
.setVectorName("{vector_name}")
.setDenseConfig(
DenseVectorCreationConfig.newBuilder()
.setSize(256)
.setDistance(Distance.Cosine)
.build())
.build())
.get();
```
@@ -0,0 +1,12 @@
```python
client.create_vector_name(
collection_name="{collection_name}",
vector_name="{vector_name}",
vector_name_config=models.DenseVectorNameConfig(
dense=models.DenseVectorConfig(
size=256,
distance=models.Distance.COSINE,
),
),
)
```
@@ -0,0 +1,16 @@
```rust
use qdrant_client::qdrant::{
CreateVectorNameRequestBuilder, DenseVectorCreationConfigBuilder, Distance,
};
use qdrant_client::Qdrant;
client
.create_vector_name(
CreateVectorNameRequestBuilder::new(
"{collection_name}",
"{vector_name}",
DenseVectorCreationConfigBuilder::new(256, Distance::Cosine),
),
)
.await?;
```
@@ -0,0 +1,8 @@
```typescript
client.createVectorName("{collection_name}", "{vector_name}", {
dense: {
size: 256,
distance: "Cosine",
},
});
```
@@ -0,0 +1,29 @@
package snippet
import (
"context"
"github.com/qdrant/go-client/qdrant"
)
func Main() {
// @hide-start
client, err := qdrant.NewClient(&qdrant.Config{
Host: "localhost",
Port: 6334,
})
if err != nil { panic(err) }
// @hide-end
client.CreateVectorName(context.Background(), &qdrant.CreateVectorNameRequest{
CollectionName: "{collection_name}",
VectorName: "{vector_name}",
VectorConfig: &qdrant.CreateVectorNameRequest_DenseConfig{
DenseConfig: &qdrant.DenseVectorCreationConfig{
Size: 256,
Distance: qdrant.Distance_Cosine,
},
},
})
}
@@ -0,0 +1,9 @@
```http
PUT /collections/{collection_name}/vectors/{vector_name}
{
"dense": {
"size": 256,
"distance": "Cosine"
}
}
```
@@ -0,0 +1,29 @@
package com.example.snippets_amalgamation;
import io.qdrant.client.QdrantClient;
import io.qdrant.client.QdrantGrpcClient;
import io.qdrant.client.grpc.Collections.Distance;
import io.qdrant.client.grpc.Points.CreateVectorNameRequest;
import io.qdrant.client.grpc.Points.DenseVectorCreationConfig;
public class Snippet {
public static void run() throws Exception {
// @hide-start
QdrantClient client =
new QdrantClient(QdrantGrpcClient.newBuilder("localhost", 6334, false).build());
// @hide-end
client
.createVectorNameAsync(
CreateVectorNameRequest.newBuilder()
.setCollectionName("{collection_name}")
.setVectorName("{vector_name}")
.setDenseConfig(
DenseVectorCreationConfig.newBuilder()
.setSize(256)
.setDistance(Distance.Cosine)
.build())
.build())
.get();
}
}
@@ -0,0 +1,14 @@
from qdrant_client import QdrantClient, models # @hide
client = QdrantClient(url="http://localhost:6333") # @hide
client.create_vector_name(
collection_name="{collection_name}",
vector_name="{vector_name}",
vector_name_config=models.DenseVectorNameConfig(
dense=models.DenseVectorConfig(
size=256,
distance=models.Distance.COSINE,
),
),
)
@@ -0,0 +1,22 @@
use qdrant_client::qdrant::{
CreateVectorNameRequestBuilder, DenseVectorCreationConfigBuilder, Distance,
};
use qdrant_client::Qdrant;
pub async fn main() -> anyhow::Result<()> {
// @hide-start
let client = Qdrant::from_url("http://localhost:6334").build()?;
// @hide-end
client
.create_vector_name(
CreateVectorNameRequestBuilder::new(
"{collection_name}",
"{vector_name}",
DenseVectorCreationConfigBuilder::new(256, Distance::Cosine),
),
)
.await?;
Ok(())
}
@@ -0,0 +1,10 @@
import { QdrantClient } from "@qdrant/js-client-rest"; // @hide
const client = new QdrantClient({ host: "localhost", port: 6333 }); // @hide
client.createVectorName("{collection_name}", "{vector_name}", {
dense: {
size: 256,
distance: "Cosine",
},
});
@@ -0,0 +1 @@
Create a new sparse named vector on an existing collection. Only the immutable vector-space properties are required. Storage type, index, and quantization can be configured separately afterward.
@@ -0,0 +1,19 @@
using Qdrant.Client;
using Qdrant.Client.Grpc;
public class Snippet
{
public static async Task Run()
{
// @hide-start
var client = new QdrantClient("localhost", 6334);
// @hide-end
await client.CreateVectorNameAsync(new()
{
CollectionName = "{collection_name}",
VectorName = "{vector_name}",
SparseConfig = new() { Modifier = Modifier.Idf }
});
}
}
@@ -0,0 +1,11 @@
```csharp
using Qdrant.Client;
using Qdrant.Client.Grpc;
await client.CreateVectorNameAsync(new()
{
CollectionName = "{collection_name}",
VectorName = "{vector_name}",
SparseConfig = new() { Modifier = Modifier.Idf }
});
```
@@ -0,0 +1,17 @@
```go
import (
"context"
"github.com/qdrant/go-client/qdrant"
)
client.CreateVectorName(context.Background(), &qdrant.CreateVectorNameRequest{
CollectionName: "{collection_name}",
VectorName: "{vector_name}",
VectorConfig: &qdrant.CreateVectorNameRequest_SparseConfig{
SparseConfig: &qdrant.SparseVectorCreationConfig{
Modifier: qdrant.Modifier_Idf.Enum(),
},
},
})
```
@@ -0,0 +1,19 @@
```java
import io.qdrant.client.QdrantClient;
import io.qdrant.client.QdrantGrpcClient;
import io.qdrant.client.grpc.Collections.Modifier;
import io.qdrant.client.grpc.Points.CreateVectorNameRequest;
import io.qdrant.client.grpc.Points.SparseVectorCreationConfig;
client
.createVectorNameAsync(
CreateVectorNameRequest.newBuilder()
.setCollectionName("{collection_name}")
.setVectorName("{vector_name}")
.setSparseConfig(
SparseVectorCreationConfig.newBuilder()
.setModifier(Modifier.Idf)
.build())
.build())
.get();
```
@@ -0,0 +1,11 @@
```python
client.create_vector_name(
collection_name="{collection_name}",
vector_name="{vector_name}",
vector_name_config=models.SparseVectorNameConfig(
sparse=models.SparseVectorConfig(
modifier=models.Modifier.IDF,
),
),
)
```
@@ -0,0 +1,16 @@
```rust
use qdrant_client::qdrant::{
CreateVectorNameRequestBuilder, Modifier, SparseVectorCreationConfigBuilder,
};
use qdrant_client::Qdrant;
client
.create_vector_name(
CreateVectorNameRequestBuilder::new(
"{collection_name}",
"{vector_name}",
SparseVectorCreationConfigBuilder::new().modifier(Modifier::Idf),
),
)
.await?;
```
@@ -0,0 +1,7 @@
```typescript
client.createVectorName("{collection_name}", "{vector_name}", {
sparse: {
modifier: "idf",
},
});
```
@@ -0,0 +1,28 @@
package snippet
import (
"context"
"github.com/qdrant/go-client/qdrant"
)
func Main() {
// @hide-start
client, err := qdrant.NewClient(&qdrant.Config{
Host: "localhost",
Port: 6334,
})
if err != nil { panic(err) }
// @hide-end
client.CreateVectorName(context.Background(), &qdrant.CreateVectorNameRequest{
CollectionName: "{collection_name}",
VectorName: "{vector_name}",
VectorConfig: &qdrant.CreateVectorNameRequest_SparseConfig{
SparseConfig: &qdrant.SparseVectorCreationConfig{
Modifier: qdrant.Modifier_Idf.Enum(),
},
},
})
}
@@ -0,0 +1,8 @@
```http
PUT /collections/{collection_name}/vectors/{vector_name}
{
"sparse": {
"modifier": "Idf"
}
}
```
@@ -0,0 +1,28 @@
package com.example.snippets_amalgamation;
import io.qdrant.client.QdrantClient;
import io.qdrant.client.QdrantGrpcClient;
import io.qdrant.client.grpc.Collections.Modifier;
import io.qdrant.client.grpc.Points.CreateVectorNameRequest;
import io.qdrant.client.grpc.Points.SparseVectorCreationConfig;
public class Snippet {
public static void run() throws Exception {
// @hide-start
QdrantClient client =
new QdrantClient(QdrantGrpcClient.newBuilder("localhost", 6334, false).build());
// @hide-end
client
.createVectorNameAsync(
CreateVectorNameRequest.newBuilder()
.setCollectionName("{collection_name}")
.setVectorName("{vector_name}")
.setSparseConfig(
SparseVectorCreationConfig.newBuilder()
.setModifier(Modifier.Idf)
.build())
.build())
.get();
}
}
@@ -0,0 +1,13 @@
from qdrant_client import QdrantClient, models # @hide
client = QdrantClient(url="http://localhost:6333") # @hide
client.create_vector_name(
collection_name="{collection_name}",
vector_name="{vector_name}",
vector_name_config=models.SparseVectorNameConfig(
sparse=models.SparseVectorConfig(
modifier=models.Modifier.IDF,
),
),
)
@@ -0,0 +1,22 @@
use qdrant_client::qdrant::{
CreateVectorNameRequestBuilder, Modifier, SparseVectorCreationConfigBuilder,
};
use qdrant_client::Qdrant;
pub async fn main() -> anyhow::Result<()> {
// @hide-start
let client = Qdrant::from_url("http://localhost:6334").build()?;
// @hide-end
client
.create_vector_name(
CreateVectorNameRequestBuilder::new(
"{collection_name}",
"{vector_name}",
SparseVectorCreationConfigBuilder::new().modifier(Modifier::Idf),
),
)
.await?;
Ok(())
}
@@ -0,0 +1,9 @@
import { QdrantClient } from "@qdrant/js-client-rest"; // @hide
const client = new QdrantClient({ host: "localhost", port: 6333 }); // @hide
client.createVectorName("{collection_name}", "{vector_name}", {
sparse: {
modifier: "idf",
},
});
@@ -0,0 +1 @@
Delete a named vector from an existing collection. This removes the vector schema and all associated data from every segment. Existing points lose this vector field; they are not otherwise affected.
@@ -0,0 +1,18 @@
using Qdrant.Client;
using Qdrant.Client.Grpc;
public class Snippet
{
public static async Task Run()
{
// @hide-start
var client = new QdrantClient("localhost", 6334);
// @hide-end
await client.DeleteVectorNameAsync(new()
{
CollectionName = "{collection_name}",
VectorName = "{vector_name}"
});
}
}
@@ -0,0 +1,10 @@
```csharp
using Qdrant.Client;
using Qdrant.Client.Grpc;
await client.DeleteVectorNameAsync(new()
{
CollectionName = "{collection_name}",
VectorName = "{vector_name}"
});
```
@@ -0,0 +1,12 @@
```go
import (
"context"
"github.com/qdrant/go-client/qdrant"
)
client.DeleteVectorName(context.Background(), &qdrant.DeleteVectorNameRequest{
CollectionName: "{collection_name}",
VectorName: "{vector_name}",
})
```
@@ -0,0 +1,13 @@
```java
import io.qdrant.client.QdrantClient;
import io.qdrant.client.QdrantGrpcClient;
import io.qdrant.client.grpc.Points.DeleteVectorNameRequest;
client
.deleteVectorNameAsync(
DeleteVectorNameRequest.newBuilder()
.setCollectionName("{collection_name}")
.setVectorName("{vector_name}")
.build())
.get();
```
@@ -0,0 +1,6 @@
```python
client.delete_vector_name(
collection_name="{collection_name}",
vector_name="{vector_name}",
)
```
@@ -0,0 +1,11 @@
```rust
use qdrant_client::qdrant::DeleteVectorNameRequestBuilder;
use qdrant_client::Qdrant;
client
.delete_vector_name(DeleteVectorNameRequestBuilder::new(
"{collection_name}",
"{vector_name}",
))
.await?;
```
@@ -0,0 +1,3 @@
```typescript
client.deleteVectorName("{collection_name}", "{vector_name}");
```
@@ -0,0 +1,23 @@
package snippet
import (
"context"
"github.com/qdrant/go-client/qdrant"
)
func Main() {
// @hide-start
client, err := qdrant.NewClient(&qdrant.Config{
Host: "localhost",
Port: 6334,
})
if err != nil { panic(err) }
// @hide-end
client.DeleteVectorName(context.Background(), &qdrant.DeleteVectorNameRequest{
CollectionName: "{collection_name}",
VectorName: "{vector_name}",
})
}
@@ -0,0 +1,3 @@
```http
DELETE /collections/{collection_name}/vectors/{vector_name}
```
@@ -0,0 +1,22 @@
package com.example.snippets_amalgamation;
import io.qdrant.client.QdrantClient;
import io.qdrant.client.QdrantGrpcClient;
import io.qdrant.client.grpc.Points.DeleteVectorNameRequest;
public class Snippet {
public static void run() throws Exception {
// @hide-start
QdrantClient client =
new QdrantClient(QdrantGrpcClient.newBuilder("localhost", 6334, false).build());
// @hide-end
client
.deleteVectorNameAsync(
DeleteVectorNameRequest.newBuilder()
.setCollectionName("{collection_name}")
.setVectorName("{vector_name}")
.build())
.get();
}
}
@@ -0,0 +1,8 @@
from qdrant_client import QdrantClient # @hide
client = QdrantClient(url="http://localhost:6333") # @hide
client.delete_vector_name(
collection_name="{collection_name}",
vector_name="{vector_name}",
)
@@ -0,0 +1,17 @@
use qdrant_client::qdrant::DeleteVectorNameRequestBuilder;
use qdrant_client::Qdrant;
pub async fn main() -> anyhow::Result<()> {
// @hide-start
let client = Qdrant::from_url("http://localhost:6334").build()?;
// @hide-end
client
.delete_vector_name(DeleteVectorNameRequestBuilder::new(
"{collection_name}",
"{vector_name}",
))
.await?;
Ok(())
}
@@ -0,0 +1,5 @@
import { QdrantClient } from "@qdrant/js-client-rest"; // @hide
const client = new QdrantClient({ host: "localhost", port: 6333 }); // @hide
client.deleteVectorName("{collection_name}", "{vector_name}");
@@ -0,0 +1 @@
This code snippet sets `max_resident_memory_percent` on the strict mode configuration to reject memory-consuming write operations when resident memory exceeds the given percentage of total system memory.
@@ -0,0 +1,8 @@
curl -X PUT http://localhost:6333/collections/{collection_name} \
-H 'Content-Type: application/json' \
--data-raw '{
"strict_mode_config": {
"enabled": true,
"max_resident_memory_percent": 90
}
}'
@@ -0,0 +1,15 @@
using Qdrant.Client;
using Qdrant.Client.Grpc;
public class Snippet
{
public static async Task Run()
{
var client = new QdrantClient("localhost", 6334);
await client.CreateCollectionAsync(
collectionName: "{collection_name}",
strictModeConfig: new StrictModeConfig { Enabled = true, MaxResidentMemoryPercent = 90 }
);
}
}
@@ -0,0 +1,10 @@
```bash
curl -X PUT http://localhost:6333/collections/{collection_name} \
-H 'Content-Type: application/json' \
--data-raw '{
"strict_mode_config": {
"enabled": true,
"max_resident_memory_percent": 90
}
}'
```
@@ -0,0 +1,11 @@
```csharp
using Qdrant.Client;
using Qdrant.Client.Grpc;
var client = new QdrantClient("localhost", 6334);
await client.CreateCollectionAsync(
collectionName: "{collection_name}",
strictModeConfig: new StrictModeConfig { Enabled = true, MaxResidentMemoryPercent = 90 }
);
```
@@ -0,0 +1,20 @@
```go
import (
"context"
"github.com/qdrant/go-client/qdrant"
)
client, err := qdrant.NewClient(&qdrant.Config{
Host: "localhost",
Port: 6334,
})
client.CreateCollection(context.Background(), &qdrant.CreateCollection{
CollectionName: "{collection_name}",
StrictModeConfig: &qdrant.StrictModeConfig{
Enabled: qdrant.PtrOf(true),
MaxResidentMemoryPercent: qdrant.PtrOf(uint32(90)),
},
})
```
@@ -0,0 +1,18 @@
```java
import io.qdrant.client.QdrantClient;
import io.qdrant.client.QdrantGrpcClient;
import io.qdrant.client.grpc.Collections.CreateCollection;
import io.qdrant.client.grpc.Collections.StrictModeConfig;
QdrantClient client =
new QdrantClient(QdrantGrpcClient.newBuilder("localhost", 6334, false).build());
client
.createCollectionAsync(
CreateCollection.newBuilder()
.setCollectionName("{collection_name}")
.setStrictModeConfig(
StrictModeConfig.newBuilder().setEnabled(true).setMaxResidentMemoryPercent(90).build())
.build())
.get();
```
@@ -0,0 +1,10 @@
```python
from qdrant_client import QdrantClient, models
client = QdrantClient(url="http://localhost:6333")
client.create_collection(
collection_name="{collection_name}",
strict_mode_config=models.StrictModeConfig(enabled=True, max_resident_memory_percent=90),
)
```
@@ -0,0 +1,13 @@
```rust
use qdrant_client::Qdrant;
use qdrant_client::qdrant::{CreateCollectionBuilder, StrictModeConfigBuilder};
let client = Qdrant::from_url("http://localhost:6334").build()?;
client
.create_collection(
CreateCollectionBuilder::new("{collection_name}")
.strict_mode_config(StrictModeConfigBuilder::default().enabled(true).max_resident_memory_percent(90u32)),
)
.await?;
```

Some files were not shown because too many files have changed in this diff Show More