Qdrant.Client
1.17.0
Prefix Reserved
dotnet add package Qdrant.Client --version 1.17.0
NuGet\Install-Package Qdrant.Client -Version 1.17.0
<PackageReference Include="Qdrant.Client" Version="1.17.0" />
<PackageVersion Include="Qdrant.Client" Version="1.17.0" />
<PackageReference Include="Qdrant.Client" />
paket add Qdrant.Client --version 1.17.0
#r "nuget: Qdrant.Client, 1.17.0"
#:package Qdrant.Client@1.17.0
#addin nuget:?package=Qdrant.Client&version=1.17.0
#tool nuget:?package=Qdrant.Client&version=1.17.0
Qdrant .NET SDK
📥 Installation
dotnet add package Qdrant.Client
📖 Documentation
Usage examples are available throughout the Qdrant documentation.
🔌 Getting started
Creating a client
A client can be instantiated with
var client = new QdrantClient("localhost");
which creates a client that will connect to Qdrant on http://localhost:6334.
Internally, the high level client uses a low level gRPC client to interact with Qdrant. Additional constructor overloads provide more control over how the gRPC client is configured. The following example configures a client to use TLS, validating the certificate using its thumbprint, and also configures API key authentication:
var channel = QdrantChannel.ForAddress("https://localhost:6334", new ClientConfiguration
{
ApiKey = "<api key>",
CertificateThumbprint = "<certificate thumbprint>"
});
var grpcClient = new QdrantGrpcClient(channel);
var client = new QdrantClient(grpcClient);
IMPORTANT NOTICE for .NET Framework
.NET Framework has limited supported for gRPC over HTTP/2, but it can be enabled by
- Configuring qdrant to use TLS, and you must use HTTPS, so you will need to set up server certificate validation
- Referencing
System.Net.Http.WinHttpHandler6.0.1 or later, and configuringWinHttpHandleras the inner handler forGrpcChannelOptions
The following example configures a client for .NET Framework to use TLS, validating the certificate using its thumbprint, and also configures API key authentication:
var channel = GrpcChannel.ForAddress($"https://localhost:6334", new GrpcChannelOptions
{
HttpHandler = new WinHttpHandler
{
ServerCertificateValidationCallback =
CertificateValidation.Thumbprint("<certificate thumbprint>")
}
});
var callInvoker = channel.Intercept(metadata =>
{
metadata.Add("api-key", "<api key>");
return metadata;
});
var grpcClient = new QdrantGrpcClient(callInvoker);
var client = new QdrantClient(grpcClient);
Working with collections
Once a client has been created, create a new collection
await client.CreateCollectionAsync("my_collection",
new VectorParams { Size = 100, Distance = Distance.Cosine });
Insert vectors into a collection
// generate some vectors
var random = new Random();
var points = Enumerable.Range(1, 100).Select(i => new PointStruct
{
Id = (ulong)i,
Vectors = Enumerable.Range(1, 100).Select(_ => (float)random.NextDouble()).ToArray(),
Payload =
{
["color"] = "red",
["rand_number"] = i % 10
}
}).ToList();
var updateResult = await client.UpsertAsync("my_collection", points);
Search for similar vectors
var queryVector = Enumerable.Range(1, 100).Select(_ => (float)random.NextDouble()).ToArray();
// return the 5 closest points
var points = await client.SearchAsync(
"my_collection",
queryVector,
limit: 5);
Search for similar vectors with filtering condition
// static import Conditions to easily build filtering
using static Qdrant.Client.Grpc.Conditions;
// return the 5 closest points where rand_number >= 3
var points = await _client.SearchAsync(
"my_collection",
queryVector,
filter: Range("rand_number", new Range { Gte = 3 }),
limit: 5);
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 is compatible. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETFramework 4.6.2
- Google.Protobuf (>= 3.31.0)
- Grpc.Net.Client (>= 2.71.0)
-
.NETStandard 2.0
- Google.Protobuf (>= 3.31.0)
- Grpc.Net.Client (>= 2.71.0)
-
net6.0
- Google.Protobuf (>= 3.31.0)
- Grpc.Net.Client (>= 2.71.0)
NuGet packages (36)
Showing the top 5 NuGet packages that depend on Qdrant.Client:
| Package | Downloads |
|---|---|
|
Microsoft.SemanticKernel.Connectors.Qdrant
Qdrant provider for Microsoft.Extensions.VectorData by Semantic Kernel |
|
|
Aspire.Hosting.Qdrant
Qdrant vector database support for Aspire. |
|
|
Aspire.Qdrant.Client
A Qdrant client that integrates with Aspire, including logging. |
|
|
Microi.AI
开源低代码平台-Microi吾码,AI相关功能依赖注入。此类库开源,官网:https://microi.net |
|
|
mostlylucid.botdetection
Bot detection middleware for ASP.NET Core applications with behavioral analysis, header inspection, IP-based detection, and optional LLM-based classification. |
GitHub repositories (6)
Showing the top 6 popular GitHub repositories that depend on Qdrant.Client:
| Repository | Stars |
|---|---|
|
microsoft/semantic-kernel
Integrate cutting-edge LLM technology quickly and easily into your apps
|
|
|
microsoft/aspire
Aspire is the tool for code-first, extensible, observable dev and deploy.
|
|
|
Xabaril/AspNetCore.Diagnostics.HealthChecks
Enterprise HealthChecks for ASP.NET Core Diagnostics Package
|
|
|
testcontainers/testcontainers-dotnet
A library to support tests with throwaway instances of Docker containers for all compatible .NET Standard versions.
|
|
|
SciSharp/BotSharp
AI Multi-Agent Framework in .NET
|
|
|
SteveSandersonMS/dotnet-ai-workshop
|
| Version | Downloads | Last Updated |
|---|---|---|
| 1.17.0 | 45,513 | 2/19/2026 |
| 1.16.1 | 156,060 | 11/17/2025 |
| 1.16.0 | 1,525 | 11/17/2025 |
| 1.15.1 | 308,938 | 8/15/2025 |
| 1.15.0 | 21,582 | 7/18/2025 |
| 1.14.1 | 216,858 | 6/23/2025 |
| 1.14.0 | 64,029 | 4/22/2025 |
| 1.13.0 | 122,781 | 1/17/2025 |
| 1.12.1-alpha.0.6 | 150 | 1/17/2025 |
| 1.12.0 | 242,286 | 10/8/2024 |
| 1.11.0 | 47,127 | 8/12/2024 |
| 1.10.0 | 46,549 | 7/1/2024 |
| 1.9.0 | 52,303 | 4/22/2024 |
| 1.8.0 | 7,955 | 3/7/2024 |
| 1.7.0 | 25,598 | 12/8/2023 |
| 1.6.0-alpha.1 | 1,063 | 11/8/2023 |