Pular para o conteúdo principal

Base de dados vectorial å

Linha do tempo tempo

Vespa é um dos primeiros fornecedores a adicionar pesquisa similaridade de vetores ao lado do algoritmo de pesquisa de palavras-chave mainstream baseado em BM25.

Weaviate então lançou um produto de pesquisa de vetor de código aberto no final de 2018.

Em 2019, começaremos a ver mais concorrência nesta área, incluindo Milvus (também open source). Zilliz é a empresa-mãe da Milvus.

Em 2021, três novos fornecedores aderiram ao concurso: Vald, Qdrant e Pinecone.

Só então é que vendedores estabelecidos, como Elasticsearch, Redis e PostgreSQL começaram a oferecer busca vetorial, muito mais tarde do que as pessoas pensavam, apenas em 2022 e depois.

image-20240125145334529

Código aberto e comércio

Negócios: Pinecone e Zilliz

Plug - em forma

  • pgvector - pgvector
  • Redis Stack,

image-20240125145550416

Os Postgres são os seguintes

Uma base de dados também suporta:

  • Base de dados Relacional: RDS
  • Base de dados Vector: pgvector
  • Base de dados de séries cronológicas: a base de dados das séries cronológicas desempenha um papel importante na filtragem de metadados, uma base de dados que regista os eventos e o tempo de ocorrência e a velocidade de procura das séries cronológicas é muito rápida. Nas aplicações rag, se dezenas de milhares de ficheiros de conhecimento da indústria forem cortados, será muito importante usar a filtragem de tempo. Por exemplo, se só precisarmos de recuperar os ficheiros do contrato em Março de 2023, então poderemos usar os dados da série temporal para escolher o pedaço- alvo de dezenas de milhares, e então calcular o vector.
image-20240125150309961

Vector de escala de tempo - Inserção

Procura mais rápida de similaridade por milhões de vectores: suporte ** Algoritmo de DiskANN ** HNSW ** Algoritmo

-** A escala de tempo Vector otimiza o tempo - Pesquisas vetoriais baseadas em vetores:** Use o tempo automático - baseado na particionamento e indexação da escala de escala de tempo para efetivamente encontrar as respostas mais próximas, busca por intervalo de tempo ou documento de existência vetor de restrição ano, e facilmente armazenar e recuperar respostas de grande linguagem (LLM) respostas e histórico de chat. TIME - Baseado Semantic Search Search também lhe permite usar** Procurar geração melhorada (Geração aumentada Retrieval,** rag**) e tempo - baseado na recuperação do contexto para fornecer aos usuários respostas LLM mais úteis. -** Estrutura simplificada de infra-estrutura de IA:** Combinando-se os vetores ** Dados relacionais *** e *** Dados de séries cronológicas** Em um banco de dados PostgreSQL, vetor temporal elimina a complexidade operacional da gestão de múltiplos sistemas de banco de dados em grande escala. -** Simplifique o processamento de metadados e multifiltragem de atributos:** Os desenvolvedores podem usar todos os tipos de dados PostgreSQL para armazenar e filtrar metadados e conectar resultados de pesquisa vetorial com dados relacionais para obter mais contexto - respostas sensíveis. Em futuros lançamentos, escala de tempo, o Vector otimizará ainda mais rica filtragem de atributos multi-atributos para permitir uma pesquisa mais rápida de similaridade ao filtrar metadados.

Base de dados vetorial coligida pelo LlamaIndex

链接

*** Suporte de opções e funcionalidades do Vector Store ***

Vector StoreTypeMetadata FilteringHybrid SearchDeleteStore DocumentsAsync
Apache Cassandra®self-hosted / cloud
Astra DBcloud
Azure Cognitive Searchcloud
Azure CosmosDB MongoDBcloud
ChatGPT Retrieval Pluginaggregator
Chromaself-hosted
DashVectorcloud
Deeplakeself-hosted / cloud
DocArrayaggregator
DynamoDBcloud
Elasticsearchself-hosted / cloud
FAISSin-memory
txtaiin-memory
Jaguarself-hosted / cloud
LanceDBcloud
Lanternself-hosted / cloud
Metalcloud
MongoDB Atlasself-hosted / cloud
MyScalecloud
Milvus / Zillizself-hosted / cloud
Neo4jVectorself-hosted / cloud
OpenSearchself-hosted / cloud
Pineconecloud
Postgresself-hosted / cloud
pgvecto.rsself-hosted / cloud
Qdrantself-hosted / cloud
Redisself-hosted / cloud
Simplein-memory
SingleStoreself-hosted / cloud
Supabaseself-hosted / cloud
Taircloud
TencentVectorDBcloud
Timescale
Typesenseself-hosted / cloud
Weaviateself-hosted / cloud

Bases de dados mais suportadas

ector StoreTypeMetadata FilteringHybrid SearchDeleteStore DocumentsAsync
DashVectorcloud
Elasticsearchself-hosted / cloud总觉得比较重
Jaguarself-hosted / cloud
Lanternself-hosted / cloud
MyScalecloud
Pineconecloud
Postgresself-hosted / cloud
pgvecto.rsself-hosted / cloud
Qdrantself-hosted / cloud创始人好像出走了
TencentVectorDBcloud
Weaviateself-hosted / cloud

Elasticsearch:总觉得比较重

Postgress:先从最简单的开始吧。

Qdrant:创始人好像出走了。

Comparação das bases de dados por Langchain

原文

数据库名称应用场景
HNSWLib, Faiss, LanceDB, CloseVector如果你需要一个可以在你的Node.js应用程序中运行的内存数据库,无需其他服务器
MemoryVectorStore, CloseVector如果你在寻找一个可以在类似浏览器的环境中内存中运行的东西
HNSWLib, Faiss如果你来自Python,并且你在寻找类似于FAISS的东西
Chroma如果你在寻找一个开源的、功能全面的向量数据库,可以在docker容器中本地运行
Zep如果你在寻找一个开源的向量数据库,提供低延迟、本地嵌入文档支持,并且支持边缘上的应用
Weaviate如果你在寻找一个开源的、生产就绪的向量数据库,可以在docker容器中本地运行或在云中托管
Supabase vector store如果你已经在使用Supabase,看看Supabase向量存储,使用同一个Postgres数据库来存储你的嵌入
Pinecone如果你在寻找一个生产就绪的向量存储,你不必担心自己托管
SingleStore vector store如果你已经在使用SingleStore,或者你需要一个分布式、高性能的数据库,你可能会考虑SingleStore向量存储
AnalyticDB vector store如果你在寻找一个在线MPP(大规模并行处理)数据仓库服务,你可能会考虑AnalyticDB向量存储
MyScale如果你在寻找一个性价比高的向量数据库,允许使用SQL进行向量搜索
CloseVector如果你在寻找一个可以从浏览器和服务器端加载的向量数据库,看看CloseVector。它是一个旨在跨平台的向量数据库
ClickHouse如果你在寻找一个可扩展的、开源的列式数据库,对于分析查询有着出色的性能

Comparação de diferentes bases de dados

开源向量数据库对比

Selecção das RAG

Elasticsearch

Qdrant

Postgress

Referec ̧a ̃o

https://mp.weixin.qq.com/s/YENmch0b4rbNJ73bvBLUpQ