qdrant-dotnet:官方提供的开源 .NET 客户端库,用于与 Qdrant 向量搜索引擎操作!
Qdrant是一个开源向量搜索引擎,专为高效存储和检索高维向量设计。qdrant-dotnet是其官方.NET客户端库,提供完整的REST API和gRPC封装,支持向量操作、集合管理、元数据过滤等功能。开发者可通过简单API实现向量插入、搜索等操作,支持多种距离度量和异步调用。该库适用于构建AI增强应用,如RAG系统,提供高效的语义搜索和混合检索能力。项目地址:https://github.co
基于AI开发应用,已经是非常流行了,特别是AI 增强应用(如 RAG)。而开发AI应用,必须用到向量数据库。
Qdrant就是一个开源的向量相似度搜索引擎,专为高效存储、检索和管理高维向量(embeddings)而设计。它不仅支持向量搜索,还允许为每个向量附加结构化元数据(称为 payload),从而实现更灵活、精准的语义搜索和混合检索。
qdrant-dotnet就是Qdrant官方提供的开源 .NET 客户端库,同时也提供Python、Go、JavaScript、Rust 等客户端。
01 项目简介
该客户端库提供了对 Qdrant REST API 和 gRPC 接口的完整封装,主要功能包括:
- 向量操作
-
插入(upsert)、更新、删除向量点(points)
-
批量导入向量数据
-
- 向量搜索
-
支持多种距离度量(余弦、点积、欧氏距离等)
-
支持带 payload 过滤条件的语义搜索
-
支持按 ID 精确检索
-
- 集合(Collection)管理
-
创建、删除、更新集合
-
配置向量维度、索引类型、存储选项等
-
- Payload 操作
-
为每个向量附加结构化元数据(payload)
-
支持基于 payload 的过滤(例如
{"category": "electronics"})
-
- 异步支持
-
全面使用
async/await,适合高并发应用
-
- gRPC 支持
-
除默认的 HTTP/REST 外,也支持更高效的 gRPC 协议(需 Qdrant 服务启用 gRPC)
-
02 使用方法
1、安装依赖
dotnet add package Qdrant.Client
2、保存向量并搜索
using Qdrant.Client;
using Qdrant.Client.Grpc;
// 创建客户端
var client = new QdrantClient("localhost", port: 6333);
// 创建集合
await client.CreateCollectionAsync(
collectionName: "example",
vectorsConfig: new VectorParams { Size = 4, Distance = Distance.Cosine }
);
// 插入向量
await client.UpsertAsync(
collectionName: "example",
points: new[]
{
new PointStruct
{
Id = 1,
Vectors = new float[] { 0.1f, 0.2f, 0.3f, 0.4f },
Payload = { ["name"] = "item_1" }
}
}
);
// 搜索
var results = await client.SearchAsync(
collectionName: "example",
queryVector: new float[] { 0.15f, 0.25f, 0.35f, 0.45f },
limit: 3
);
03 项目地址
https://github.com/qdrant/qdrant-dotnet
- End -
火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。
更多推荐
所有评论(0)