Este artigo é um artigo espelhado de tradução automática, por favor clique aqui para ir para o artigo original.

Vista: 2451|Resposta: 0

【AI】(14) Uma breve introdução aos bancos de dados vetoriais open source

[Copiar link]
Postado em 25-03-2025 às 11:29:25 | | | |
Requisitos: Da última vez, organizamos a seleção dos modelos de embedding e, ao converter o modelo em vetores, precisamos considerar salvar os vetores. Existem muitos bancos de dados vetoriais, como: LanceDB, Astra DB, Pinecone, Chroma, Weaviate, QDrant, Milvus, Zilliz, PGVecttor, Redis, Elasticsearch, Redis, FAISS, SQL Server 2025, etc.

O que é um banco de dados vetorial?

Um banco de dados vetorial é uma coleção organizada de embeddings vetoriais que incorporam embeddings vetoriais que podem ser criados, lidos, atualizados e excluídos a qualquer momento. Embeddings vetoriais representam blocos de dados, como texto ou imagens, como valores numéricos. Um banco de dados vetorial é um sistema de banco de dados projetado para armazenar e recuperar vetores de alta dimensão. Ele rapidamente encontra o vetor-alvo mais próximo calculando a similaridade entre vetores (como similaridade cosseno, distância euclidiana, etc.). Essa técnica é frequentemente usada para processar dados baseados em embedding, como texto, imagens, representações de áudio ou vídeo.

Um banco de dados vetorial é uma coleção de dados armazenados em forma matemática. Bancos de dados vetoriais facilitam que modelos de aprendizado de máquina lembrem entradas anteriores, permitindo que o aprendizado de máquina seja usado para suportar casos de uso como busca, recomendação e geração de texto. Os dados podem ser identificados com base em métricas de similaridade em vez de correspondências exatas, permitindo que modelos computacionais compreendam o contexto dos dados.

Quando um cliente visita uma loja de calçados, o vendedor pode recomendar sapatos semelhantes ao que o cliente gosta. Da mesma forma, ao comprar em uma loja de comércio eletrônico, a loja pode recomendar itens semelhantes sob títulos como "O cliente também comprou...". Bancos de dados vetoriais permitem que modelos de aprendizado de máquina identifiquem objetos semelhantes, assim como um vendedor pode encontrar sapatos semelhantes, e uma loja de comércio eletrônico pode recomendar produtos relacionados. (Na verdade, lojas de ecommerce podem usar esses modelos de aprendizado de máquina para fazer o trabalho).

Em conclusão, bancos de dados vetoriais permitem que programas de computador façam comparações, identifiquem relações e compreendam o contexto. Isso possibilita a criação de programas avançados de inteligência artificial (IA), como grandes modelos de linguagem (LLMs).

Chroma

Local:O login do hiperlink está visível.



Chroma é um banco de dados eficiente, baseado em Python, de código aberto para buscas de similaridade em larga escala. Ele foi projetado para resolver o problema das buscas de similaridade em conjuntos de dados de grande escala, especialmente ao lidar com dados de alta dimensão. Múltiplas opções de hospedagem estão disponíveis: serverless/embedded, self-hosted (cliente-servidor) e soluções SaaS distribuídas nativas em nuvem, com modelos embarcados e cliente-servidor.
Excelente em prototipagem e ambientes de produção. Devido à natureza efêmera de seu armazenamento de dados, o Chroma é ideal para prototipagem rápida de scripts. Com uma configuração simples, os usuários podem facilmente criar coleções e reutilizá-las, facilitando adições subsequentes de dados. Além disso, o Chroma tem a capacidade de carregar e salvar dados automaticamente. Quando o cliente é iniciado, ele carrega automaticamente os dados do usuário; Quando fechados, os dados são automaticamente salvos, simplificando muito o processo de gerenciamento de dados. Esse recurso torna o Chroma muito popular durante as fases de prototipagem e desenvolvimento.
A Chroma recebeu uma rodada inicial de financiamento em maio de 2022 e uma segunda rodada de $1.800 em financiamento.

Prós: O Chroma oferece aos clientes mais de uma dúzia de linguagens de programação, pode abrir rapidamente armazenamento vetorial e é o primeiro banco de dados vetorial do mercado a oferecer o modo de embedding por padrão. É relativamente amigável para desenvolvedores e fácil de integrar.
Desvantagens: A funcionalidade é relativamente simples, especialmente para aplicações que exigem funções mais complexas. Somente computação por CPU é suportada, o que pode limitar ganhos de desempenho em situações que exigem recursos de computação significativos.

LanceDB

Local:O login do hiperlink está visível.



LanceDB é um banco de dados vetorial de código aberto projetado para dados multimodais de IA para armazenar, gerenciar, consultar e recuperar embutidos multimodais de dados em grande escala. Seu núcleo é escrito em Rust e construído sobre o Lance, um formato de dados colunar que otimiza o acesso aleatório de alta velocidade e o gerenciamento de conjuntos de dados de IA, como vetores, documentos e imagens. É adequado para várias aplicações de IA que precisam processar dados vetoriais de alta dimensão, como reconhecimento de imagens, processamento de linguagem natural, sistemas de recomendação, etc. O LanceDB oferece dois modos: serviços embarcados e serviços hospedados na nuvem.

Vantagens: O LanceDB elimina a necessidade de gerenciar servidores, reduzindo os custos de O&M dos desenvolvedores e melhorando a eficiência do desenvolvimento. Ele é otimizado para dados multimodais e suporta vários tipos de dados, como imagens, texto e áudio, melhorando a eficiência do banco de dados ao lidar com dados complexos. Ele oferece uma interface API amigável e ferramentas de visualização, permitindo que desenvolvedores integrem e utilizem bancos de dados com facilidade.
Desvantagens: Ele só será lançado em 2023, que é um banco de dados muito novo e ainda não está maduro o suficiente em termos de desenvolvimento de funções e operação comunitária.

PGVector

Local:O login do hiperlink está visível.



PGVector é uma extensão baseada em PostgreSQL projetada para fornecer poderosas capacidades de armazenamento vetorial e consultas. Ele utiliza a linguagem C para implementar uma variedade de tipos de dados vetoriais e algoritmos, e pode armazenar e consultar de forma eficiente embeddings de IA expressos em vetores. O PGVector suporta busca precisa e aproximada de vizinhos mais próximos, permitindo acesso rápido a pontos de dados semelhantes em espaços de alta dimensão. Também suporta uma variedade de algoritmos de cálculo vetorial e tipos de dados, como distância L2, produto interno e distância cosseno, entre outros. É adequado para cenários em que a função de busca vetorial não é o núcleo do sistema, ou o projeto é rapidamente lançado no estágio inicial.

Prós: O PGVector se integra perfeitamente aos bancos de dados PostgreSQL existentes, permitindo que os usuários comecem a usar recursos de busca vetorial sem precisar migrar bancos de dados existentes. Por ser um plugin PostgreSQL, o PGVector herda sua confiabilidade e robustez com a ajuda do desenvolvimento e otimização de longo prazo do PostgreSQL, ao mesmo tempo em que aprimora o processamento de vetorização.
Desvantagens: Comparado a bancos de dados vetoriais dedicados, a otimização do desempenho e da utilização de recursos é um pouco insuficiente.

Qdrant

Local:O login do hiperlink está visível.



Qdrant é um banco de dados vetorial de código aberto e serviço hospedado em nuvem, lançado em 2021 e projetado para aplicações de IA de próxima geração. APIs convenientes são fornecidas para armazenar, pesquisar e gerenciar pontos (ou seja, vetores) com cargas adicionais para ampliar o suporte à filtragem. Os múltiplos tipos de índice, incluindo índices de carga útil, índices de texto completo e índices vetoriais, permitem que ele lide com dados de alta dimensão de forma eficiente. Além disso, o Qdrant utiliza um algoritmo HNSW personalizado para buscas rápidas e precisas e permite filtrar resultados com base em cargas vetoriais relevantes. Esses recursos tornam o Qdrant útil para redes neurais ou correspondência baseada em semântica, busca multifacetada e outras aplicações. A força do Qdrant está em suas funções de busca semântica e correspondência de similaridade, que facilitam a implementação de cenários de negócios como busca por imagens, voz e vídeo, além de sistemas de recomendação.

Prós: Excelente documentação para ajudar os desenvolvedores a começarem a usar o Docker facilmente. Ele é construído inteiramente em Rust e oferece APIs que os desenvolvedores podem usar por meio de seus clientes Rust, Python e Golang, que são as linguagens mais populares entre desenvolvedores backend atualmente. O Qdrant suporta várias estratégias de otimização, como otimização de índices e otimização de consultas. Também suporta implantação distribuída e escalabilidade horizontal para atender às necessidades de processamento de dados em larga escala.
Contras: O projeto é relativamente novo e não tem tempo suficiente para validar. Ao responder ao crescimento do volume de negócios, ele só pode escalar horizontalmente no nível de serviço. Apenas o sharding estático é suportado. De acordo com o relatório de Zilliz, à medida que o número de elementos de dados não estruturados em bancos de dados vetoriais cresce, a quantidade de dados armazenados é grande, e a eficiência das consultas pode ser afetada.

Nuvem Milvus/Zilliz

Site da Milvus:O login do hiperlink está visível.
Site da Zilliz:O login do hiperlink está visível.



Milvus é um banco de dados vetorial puro open-source de 2019, construído sobre bibliotecas de busca vetorial conhecidas como FAISS, Annoy e HNSW, otimizado para cenários que exigem buscas rápidas de similaridade. Zilliz Cloud é um serviço de banco de dados vetorial nativo em nuvem desenvolvido com base no Milvus, com o objetivo de oferecer capacidades de gerenciamento e escalabilidade mais convenientes e de alto desempenho. Em resumo, Zilliz é uma versão comercial da hospedagem em nuvem da Milvus, que também é um modelo de negócios mais bem-sucedido no campo de banco de dados.

Prós: Devido à sua longa existência no ecossistema de bancos de dados vetoriais, o banco de dados é muito maduro e possui um grande número de algoritmos. Muitas opções de indexação vetorial estão disponíveis, e ele foi construído do zero em Golang para uma escalabilidade extrema. Em 2023, é o único fornecedor tradicional que oferece uma implementação viável do DiskANN, que é considerada a indexação vetorial de disco mais eficiente.
Contras: O Milvus parece ser uma solução que se dedica totalmente às questões de escalabilidade – é altamente escalável por meio de uma combinação de proxies, balanceadores de carga, corretores de mensagens, Kafka e Kubernetes 7, o que torna todo o sistema muito complexo e consome muitos recursos. APIs do lado do cliente, como Python, também não são tão legíveis ou intuitivas quanto bancos de dados mais recentes como Weaviate e Qdrant, que tendem a ser mais focados na experiência do desenvolvedor. O Milvus foi construído com a ideia de transmitir dados para índices vetoriais para uma escalabilidade massiva, e em muitos casos, o Milvus parece ser um pouco exagerado quando a quantidade de dados não é muito grande. Para situações de grande escala mais estáticas e raras, alternativas como Qdrant ou Weaviate podem ser mais baratas e funcionar mais rápido na produção.

outro

Redis:O login do hiperlink está visível.
Pinha:O login do hiperlink está visível.
Tecelagem:O login do hiperlink está visível.
FAISS:O login do hiperlink está visível.O login do hiperlink está visível.
Elasticsearch:O login do hiperlink está visível.
SQL Server:O login do hiperlink está visível.

Referência:
O login do hiperlink está visível.
O login do hiperlink está visível.
O login do hiperlink está visível.
O login do hiperlink está visível.





Anterior:[IA] (13) Uma breve introdução à similaridade vetorial e distância
Próximo:[IA] (15) O banco de dados vetorial Qdrant é fácil de usar
Disclaimer:
Todo software, material de programação ou artigos publicados pela Code Farmer Network são apenas para fins de aprendizado e pesquisa; O conteúdo acima não deve ser usado para fins comerciais ou ilegais, caso contrário, os usuários terão todas as consequências. As informações deste site vêm da Internet, e disputas de direitos autorais não têm nada a ver com este site. Você deve deletar completamente o conteúdo acima do seu computador em até 24 horas após o download. Se você gosta do programa, por favor, apoie um software genuíno, compre o registro e obtenha serviços genuínos melhores. Se houver qualquer infração, por favor, entre em contato conosco por e-mail.

Mail To:help@itsvse.com