qdrant/qdrant

GitHub: qdrant/qdrant

用 Rust 编写的高性能向量数据库,支持过滤、混合搜索和分布式部署,为 AI 应用提供语义搜索和相似度匹配能力。

Stars: 29301 | Forks: 2068

Qdrant

面向下一代 AI 应用的向量搜索引擎

Tests status OpenAPI Docs Apache 2.0 License Discord Roadmap 2025 Qdrant Cloud

**Qdrant** (读音: _quadrant_) 是一个向量相似度搜索引擎和向量数据库。 它提供了一个生产可用的服务,以及便捷的 API 来存储、搜索和管理点(points)——带有额外 payload 的向量。 Qdrant 专为扩展过滤支持而定制。这使其适用于各种神经网络或基于语义的匹配、分面搜索以及其他应用程序。 Qdrant 使用 Rust 🦀 编写,这使其即使在高温负载下也能快速且可靠。请参阅 [benchmarks](https://qdrant.tech/benchmarks/)。 使用 Qdrant,Embeddings 或神经网络编码器可以转化为成熟的应用程序,用于匹配、搜索、推荐以及更多功能! Qdrant 也可作为完全托管的 **[Qdrant Cloud](https://cloud.qdrant.io/)** ⛅ 使用,包括 **免费层级**。

快速开始客户端库演示项目集成联系我们

## 入门指南 ### Python ``` pip install qdrant-client ``` Python 客户端提供了一种在本地开始使用 Qdrant 的便捷方式: ``` from qdrant_client import QdrantClient qdrant = QdrantClient(":memory:") # Create in-memory Qdrant instance, for testing, CI/CD # 或 client = QdrantClient(path="path/to/db") # Persists changes to disk, fast prototyping ``` ### 客户端-服务器 要在本地体验 Qdrant 的全部功能,请使用以下命令运行容器: ``` docker run -p 6333:6333 qdrant/qdrant ``` 现在您可以使用任何客户端连接到它,包括 Python: ``` qdrant = QdrantClient("http://localhost:6333") # Connect to existing Qdrant instance ``` 在将 Qdrant 部署到生产环境之前,请务必阅读我们的 [安装](https://qdrant.tech/documentation/guides/installation/) 和 [安全](https://qdrant.tech/documentation/guides/security/) 指南。 ### 客户端 Qdrant 提供以下客户端库,以帮助您轻松地将其集成到您的应用程序技术栈中: - 官方: - [Go client](https://github.com/qdrant/go-client) - [Rust client](https://github.com/qdrant/rust-client) - [JavaScript/TypeScript client](https://github.com/qdrant/qdrant-js) - [Python client](https://github.com/qdrant/qdrant-client) - [.NET/C# client](https://github.com/qdrant/qdrant-dotnet) - [Java client](https://github.com/qdrant/java-client) - 社区: - [Elixir](https://hexdocs.pm/qdrant/readme.html) - [PHP](https://github.com/hkulekci/qdrant-php) - [Ruby](https://github.com/andreibondarev/qdrant-ruby) - [Java](https://github.com/metaloom/qdrant-java-client) ### 接下来该去哪里? - [快速入门指南](docs/QUICK_START.md) - 端到端 [Colab Notebook](https://colab.research.google.com/drive/1Bz8RSVHwnNDaNtDwotfPj0w7AYzsdXZ-?usp=sharing) 演示,使用 SentenceBERT 和 Qdrant - 详细的 [文档](https://qdrant.tech/documentation/) 是很好的起点 - [分步教程](https://qdrant.to/qdrant-tutorial),使用 Qdrant 创建您的第一个神经网络项目 ## 演示项目Run on Repl.it ### 探索语义文本搜索 🔍 利用 Qdrant 释放语义 Embeddings 的力量,超越基于关键字的搜索,在短文本中发现有意义的联系。使用预训练的神经网络在几分钟内部署神经搜索,体验文本搜索的未来。[在线试用!](https://qdrant.to/semantic-search-demo) ### 探索相似图像搜索 - 美食发现 🍕 发现不仅仅局限于文本搜索,尤其是在涉及食物时。人们通常根据外观而不是描述和成分来选择餐点。让 Qdrant 帮助您的用户使用视觉搜索找到他们的下一顿美味佳肴,即使他们不知道菜名。[查看详情!](https://qdrant.to/food-discovery) ### 掌握极致分类 - 电商产品分类 📺 进入极致分类的前沿领域,这是一个新兴的机器学习领域,旨在解决具有数百万个标签的多类和多标签问题。利用相似度学习模型的潜力,看看预训练的 Transformer 模型和 Qdrant 如何彻底改变电商产品分类。[在线体验!](https://qdrant.to/extreme-classification-demo)
更多解决方案
Semantic Text Search Similar Image Search Recommendations
Chat Bots Matching Engines Anomaly Detection
## API ### REST 在线 OpenAPI 3.0 文档可在 [此处](https://api.qdrant.tech/) 获取。 OpenAPI 使得为几乎任何框架或编程语言生成客户端变得容易。 您还可以下载原始 OpenAPI [定义](https://github.com/qdrant/qdrant/blob/master/docs/redoc/master/openapi.json)。 ### gRPC 为了更快的生产级搜索,Qdrant 还提供了 gRPC 接口。您可以在 [此处](https://qdrant.tech/documentation/interfaces/#grpc-interface) 找到 gRPC 文档。 ## 功能特性 ### 过滤与 Payload Qdrant 可以将任何 JSON Payload 附加到向量上,允许基于这些 Payload 中的值进行数据存储和过滤。 Payload 支持广泛的数据类型和查询条件,包括关键字匹配、全文过滤、数值范围、地理位置等。 过滤条件可以以多种方式组合,包括 `should`、`must` 和 `must_not` 子句, 确保您可以在相似度匹配之上实现任何所需的业务逻辑。 ### 使用稀疏向量的混合搜索 为了解决在搜索特定关键字时向量 Embeddings 的局限性,除了常规的稠密向量外,Qdrant 还引入了对稀疏向量的支持。 稀疏向量可以被视为 BM25 或 TF-IDF 排名的推广。它们使您能够利用基于 Transformer 的神经网络的功能来有效地权衡单个 Token。 ### 向量量化和磁盘存储 Qdrant 提供多种选项,使向量搜索成本更低、资源效率更高。 内置向量量化可将 RAM 使用量减少高达 97%,并动态管理搜索速度与精度之间的权衡。 ### 分布式部署 Qdrant 通过两个关键机制提供全面的水平扩展支持: 1. 通过分片实现容量扩展,通过复制实现吞吐量提升 2. 零停机滚动更新和 Collection 的无缝动态扩缩容 ### 重点功能 * **查询规划与 Payload 索引** - 利用存储的 Payload 信息优化查询执行策略。 * **SIMD 硬件加速** - 利用现代 CPU x86-x64 和 Neon 架构提供更好的性能。 * **异步 I/O** - 使用 `io_uring` 最大化磁盘吞吐量利用率,即使是在网络附加存储上。 * **预写日志** - 通过更新确认确保数据持久性,即使在断电期间。 # 集成 Qdrant 集成的示例和/或文档: - [Cohere](https://docs.cohere.com/docs/qdrant-and-cohere) ([关于使用 Cohere 和 Qdrant 构建 QA 应用的博文](https://qdrant.tech/articles/qa-with-cohere-and-qdrant/)) - 将 Cohere Embeddings 与 Qdrant 结合使用 - [DocArray](https://docs.docarray.org/user_guide/storing/index_qdrant/) - 在 DocArray 中将 Qdrant 用作文档存储 - [Haystack](https://haystack.deepset.ai/integrations/qdrant-document-store) - 在 Haystack 中将 Qdrant 用作文档存储 ([博文](https://haystack.deepset.ai/blog/qdrant-integration))。 - [LangChain](https://python.langchain.com/docs/integrations/providers/qdrant/) ([博文](https://qdrant.tech/articles/langchain-integration/)) - 将 Qdrant 用作 LangChain 的内存后端。 - [LlamaIndex](https://gpt-index.readthedocs.io/en/latest/examples/vector_stores/QdrantIndexDemo.html) - 在 LlamaIndex 中将 Qdrant 用作向量存储。 - [OpenAI - ChatGPT retrieval plugin](https://github.com/openai/chatgpt-retrieval-plugin/blob/main/docs/providers/qdrant/setup.md) - 将 Qdrant 用作 ChatGPT 的内存后端 - [Microsoft Semantic Kernel](https://devblogs.microsoft.com/semantic-kernel/the-power-of-persistent-memory-with-semantic-kernel-and-qdrant-vector-database/) - 在 Semantic Kernel 中将 Qdrant 用作持久化内存 ## 联系方式 - 有疑问?加入我们的 [Discord 频道](https://qdrant.to/discord) 或在 [Twitter 上提及 @qdrant_engine](https://qdrant.to/twitter) - 想随时了解最新版本?订阅我们的 [新闻通讯](https://qdrant.tech/subscribe/) - 正在寻找托管云服务?查看 [定价](https://qdrant.tech/pricing/),需要定制化服务?请联系 [info@qdrant.tech](mailto:info@qdrant.tech) ## 许可证 Qdrant 根据 Apache License, Version 2.0 获得许可。查看 [许可证文件](https://github.com/qdrant/qdrant/blob/master/LICENSE) 的副本。
标签:AI, Embedding, LLM, Python工具, Qdrant, RAG, Ruby, Rust, Unmanaged PE, 人工智能, 代理服务器, 代码示例, 可视化界面, 向量搜索引擎, 向量数据库, 大模型, 开源, 搜索引擎, 数据分析, 数据库, 用户模式Hook绕过, 相似度搜索, 知识库, 神经网络, 网络流量审计, 自动化代码审查, 语义搜索, 请求拦截, 过滤搜索, 逆向工具, 通知系统, 通知系统, 非结构化数据