weaviate/weaviate

Weaviate is an open-source vector database that stores both objects and vectors, allowing for the combination of vector search with structured filtering with the fault tolerance and scalability of a cloud-native database​.

解决的问题

Weaviate 是一个云原生向量数据库,旨在处理对象及其对应向量嵌入的存储和检索。它解决了大规模语义搜索的问题,使用户能够基于语义而非仅基于关键词来查找数据,同时仍支持传统的关键词过滤和混合搜索。

工作原理

Weaviate 将数据存储为对象和向量。它提供了一个单一的查询接口,结合了向量相似性搜索、关键词过滤(BM25)和重排序。用户可以导入预先计算的向量,也可以使用 OpenAI、Cohere 和 HuggingFace 等提供商的集成向量化器,在导入时自动将数据向量化。该系统使用 Go 语言构建,具有高性能,并支持水平扩展、多租户和复制,适用于生产环境。

适用人群

开发 AI 驱动的应用程序的开发者,例如检索增强生成(RAG)系统、语义和图像搜索引擎、推荐引擎、聊天机器人和内容分类工具。

主要亮点

  • 快速搜索性能:在数十亿个向量上实现毫秒级响应时间。
  • 灵活的向量化:支持集成模型提供商和自定义预生成嵌入。
  • 高级混合搜索:通过一次 API 调用,整合语义、关键词(BM25)和图像搜索。
  • 集成 RAG 与重排序:内置生成式搜索和重排序功能,适用于问答和摘要生成。
  • 生产就绪:原生支持多租户、RBAC 授权和水平扩展。
  • 成本高效:包含向量压缩和量化,以减少内存使用。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目