以下是一些好用的向量库:
这些向量库各有特点,你可以根据自己的需求和使用场景选择适合的向量库。例如,如果你需要云托管且易于上手的向量库,可以选择 Pinecone;如果你喜欢构建定制平台,可以考虑 Weaviate、Vespa 等开源系统;如果你需要针对特定应用进行定制,可以选择 Qdrant 等。同时,不同的向量库在性能、功能和扩展性等方面也可能存在差异,你可以进一步了解它们的特点和优势,以便做出更合适的选择。
最常用的向量存储正如前面提到的,检索是大语言模型应用程序的重要组成部分。向量存储正在成为检索相关上下文的主要方式。在LangChain中,我们与60多个向量存储集成——最常用的有哪些呢?我们看到本地向量存储是使用量最大的,其中Chroma、FAISS、Qdrant和DocArray均进入前5名。如果根据用户数量来计算,那么使用量最大的自然就是本地的免费向量存储。在托管的提供商中,Pinecone是唯一进入前5名的托管向量存储。Weaviate紧随其后,这表明原生向量数据库目前使用得比后添加向量功能的数据库更多。在那些添加了向量功能的数据库中,我们看到领先的是Postgres(PGVector)、Supabase、Neo4j、Redis、Azure Search和Astra DB。需要注意的是,这些排名基于使用给定提供商的用户数量。
从系统的角度来看,预处理管道中最重要的部分是向量数据库。它负责高效存储、比较和检索多达数十亿的嵌入(即向量)。我们在市场上看到的最常见的选择是[Pinecone](https://www.pinecone.io/)。它是默认设置,因为它完全由云托管,因此很容易上手,并且具有大型企业在生产中所需的许多功能(例如,良好的规模性能、SSO和正常运行时间SLA)。不过,有大量可用的向量数据库。尤其:Weaviate、Vespa和Qdrant等开源系统:它们通常具有出色的单节点性能,并且可以针对特定应用进行定制,因此受到喜欢构建定制平台的经验丰富的AI团队的欢迎。Chroma和Faiss等本地向量管理库:它们拥有丰富的开发人员经验,并且易于启动小型应用程序和开发实验。它们不一定能大规模替代完整的数据库。诸如pgvector之类的OLTP扩展:对于看到每个数据库形状的漏洞并尝试插入Postgres的开发人员,或者从单个云提供商购买大部分数据基础设施的企业来说,这是一个很好的向量支持解决方案。从长远来看,尚不清楚紧密耦合向量和标量工作负载是否有意义。
真正有效的数据库会提供一整套应用程序接口和SDK。这可确保系统能与各种应用进行交互,并能得到有效管理。领先的向量数据库(如Pinecone)提供各种编程语言(如Python、Node、Go和Java)的SDK,确保开发和管理的灵活性。