30 个稳定版本
1.9.1 | 2024 年 5 月 2 日 |
---|---|
1.8.3 | 2024 年 3 月 19 日 |
1.7.3 | 2023 年 12 月 19 日 |
1.6.1 | 2023 年 10 月 11 日 |
1.1.0 | 2023 年 3 月 17 日 |
#7 在 #qdrant 中
18,072 个星标 & 120 个关注者
9KB
280 行
下一代 AI 应用程序的向量搜索引擎
Qdrant (读作:quadrant) 是一个向量相似度搜索引擎和向量数据库。它提供了一个生产就绪的服务,并提供了便捷的 API 来存储、搜索和管理点——带有附加有效负载的向量。Qdrant 定制了扩展的过滤支持,使其在所有类型的神经网络或语义匹配、分面搜索和其他应用中都非常有用。
Qdrant是用Rust语言编写的🦀,这使得它在高负载下也能保持快速和可靠。查看基准测试。
使用Qdrant,可以将嵌入或神经网络编码器转化为完整的应用程序,用于匹配、搜索、推荐等等!
Qdrant还提供完全管理的版本——Qdrant云服务 ⛅,包括免费层。
快速入门 • 客户端库 • 演示项目 • 集成 • 联系方式
入门指南
Python
pip install qdrant-client
Python客户端提供了一种方便的方式来在本地开始使用Qdrant。
from qdrant_client import QdrantClient
qdrant = QdrantClient(":memory:") # Create in-memory Qdrant instance, for testing, CI/CD
# OR
client = QdrantClient(path="path/to/db") # Persists changes to disk, fast prototyping
客户端-服务器
这是生产使用的推荐方法。要运行容器,使用以下命令
docker run -p 6333:6333 qdrant/qdrant
现在您可以用任何客户端连接到它,包括Python。
qdrant = QdrantClient("http://localhost:6333") # Connect to existing Qdrant instance, for production
客户端
Qdrant提供了以下客户端库,以帮助您轻松将其集成到您的应用程序堆栈中。
- 官方:Go客户端
- 官方:Rust客户端
- 官方:JavaScript/TypeScript客户端
- 官方:Python客户端
- 官方:.NET/C#客户端
- 社区:Elixir
- 社区:PHP
- 社区:Ruby
- 社区:Java
下一步是什么?
演示项目
探索语义文本搜索 🔍
利用Qdrant的语义嵌入功能,超越基于关键词的搜索,在简短文本中找到有意义的联系。使用预训练的神经网络在几分钟内部署神经网络搜索,体验文本搜索的未来。在线尝试!
探索相似图像搜索 - 食品发现 🍕
发现不仅仅局限于文本搜索,尤其是在食品方面。人们通常会根据外观而不是描述和成分来选择食物。让Qdrant帮助您的用户通过视觉搜索找到他们下一顿美味的饭菜,即使他们不知道菜名。查看它!
精通极端分类 - 电子商务产品分类 📺
进入前沿的极端分类领域,这是一个新兴的机器学习领域,它通过数百万个标签解决多类和多标签问题。利用相似性学习模型,看看预训练的转换模型和Qdrant如何彻底改变电子商务产品分类。在线体验!
更多解决方案
![]() |
![]() |
![]() |
语义文本搜索 | 相似图像搜索 | 推荐 |
![]() |
![]() |
![]() |
聊天机器人 | 匹配引擎 | 异常检测 |
API
REST
在线OpenAPI 3.0文档可在此处找到。OpenAPI使生成几乎任何框架或编程语言的客户端变得容易。
您还可以下载原始OpenAPI定义。
gRPC
为了加快生产层搜索,Qdrant 还提供 gRPC 接口。您可以在这里找到 gRPC 文档。
功能
过滤和有效载荷
Qdrant 允许将 JSON 有效载荷与向量相关联,提供基于有效载荷值的存储和过滤。它支持 should
、must
和 must_not
条件的多种组合,确保检索所有相关向量,而不同于 ElasticSearch
后过滤。
丰富的数据类型
向量有效载荷可以容纳多种数据类型和查询条件,包括字符串匹配、数值范围、地理位置等。这些过滤条件使您能够在相似性匹配之上创建自定义业务逻辑。
查询计划和有效载荷索引
查询计划器利用存储的有效载荷信息来优化查询执行。例如,受过滤器限制的小型搜索空间可能从对索引的全局强制搜索中受益。
SIMD 硬件加速
利用现代 x86-x64 架构,Qdrant 在现代硬件上提供更快的搜索性能。
写入前日志
Qdrant 通过更新确认确保数据持久性,即使在断电的情况下。更新日志存储所有操作,使轻松重建最新数据库状态成为可能。
分布式部署
截至 v0.8.0,Qdrant 支持分布式部署。多个 Qdrant 机器形成一个集群,用于横向扩展,并通过 Raft 协议进行协调。
独立运行
Qdrant 独立运行,不依赖于外部数据库或编排控制器,简化了配置。
集成
Qdrant 集成的示例和/或文档
- Cohere (使用 Cohere 和 Qdrant 构建问答应用的博客文章) - 使用 Cohere 嵌入与 Qdrant
- DocArray - 将 Qdrant 用作 DocArray 中的文档存储
- LangChain (博客文章) - 将 Qdrant 用作 LangChain 的内存后端
- LlamaIndex - 将 Qdrant 用作 LlamaIndex 的向量存储
- OpenAI - ChatGPT 检索插件 - 将 Qdrant 用作 ChatGPT 的内存后端
- Microsoft Semantic Kernel - 将 Qdrant 用作 Semantic Kernel 的持久内存
联系方式
- 有问题?加入我们的 Discord 频道 或提及 @qdrant_engine 在 Twitter 上
- 想了解最新发布?订阅我们的 新闻通讯
- 寻找托管云?查看 定价,需要个性化服务?我们在这里 info@qdrant.tech
贡献者 ✨
感谢为 Qdrant 做出贡献的人
许可证
Qdrant遵循Apache License 2.0协议。查看许可文件副本。
依赖项
~22–35MB
~617K SLoC