Início topics Vector Database O que é um banco de dados vetorial?
Explore a solução de banco de dados vetorial da IBM Inscreva-se para receber atualizações de IA
Ilustração mostrando a movimentação dinâmica de dados em servidores seguros em um ambiente baseado em nuvem
O que é um banco de dados vetorial?

Um banco de dados vetorial é projetado para armazenar, gerenciar e indexar grandes quantidades de dados vetoriais de alta dimensão de forma eficiente.

O interesse dos bancos de dados vetoriais está crescendo rapidamente para criar valor adicional para casos de uso e aplicações de inteligência artificial (IA) generativa. De acordo com o Gartner, até 2026, mais de 30% das empresas terão adotado bancos de dados vetoriais para fundamentar seus modelos de base com dados de negócios relevantes.1

Ao contrário dos bancos de dados relacionais tradicionais com linhas e colunas, os pontos de dados em um banco de dados vetorial são representados por vetores com um número fixo de dimensões, agrupados com base na similaridade. Esse design permite consultas de baixa latência, tornando-as ideais para aplicações orientadas por IA.



Como escolher os modelos de base de IA corretos

Use esta estrutura de seleção de framework para escolher o modelo mais apropriado e, ao mesmo tempo, equilibrar seus requisitos de desempenho com custo, riscos e necessidades de implementação.

Conteúdo relacionado

Registre-se para o ebook sobre armazenamento de dados de IA

Bancos de dados vetoriais versus bancos de dados tradicionais  

A natureza dos dados passou por uma profunda transformação. Não está mais confinado a informações estruturadas facilmente armazenadas em bancos de dados tradicionais. Os dados não estruturados estão crescendo de 30 a 60% ano a ano, incluindo postagens em redes sociais, imagens, vídeos, clipes de áudio e muito mais.2 Normalmente, se você quiser carregar fontes de dados não estruturadas em um banco de dados relacional tradicional para armazenar, gerenciar e se preparar para IA, o processo é trabalhoso e está longe de ser eficiente, especialmente quando se trata de novos casos de uso generativos, como pesquisa de similaridade. Os bancos de dados relacionais são ótimos para gerenciar conjuntos de dados estruturados e semiestruturados em formatos específicos, enquanto os bancos de dados vetoriais são mais adequados para conjuntos de dados não estruturados por meio de incorporações vetoriais de alta dimensão. 

O que são vetores? 

Insira vetores. Os vetores são matrizes de números que podem representar objetos complexos, como palavras, imagens, vídeos e áudio, gerados por um modelo de machine learning (ML). Dados vetoriais de alta dimensão são essenciais para machine learning, processamento de linguagem natural (NLP) e outras tarefas de IA. Alguns exemplos de dados vetoriais incluem: 

  • Texto: Pense na última vez que você interagiu com um chatbot. Como eles entendem a linguagem natural? Eles contam com vetores que podem representar palavras, parágrafos e documentos inteiros, que são convertidos por meio de algoritmos de aprendizado de máquina. 

  • Imagens: os pixels da imagem podem ser descritos por dados numéricos e combinados para formar um vetor de alta dimensão para essa imagem. 

  • Fala/áudio: como as imagens, as ondas sonoras também podem ser divididas em dados numéricos e representadas como vetores, permitindo aplicações de IA, como reconhecimento de voz. 

O que são incorporações vetoriais? 

O volume de conjuntos de dados não estruturados de que sua organização precisa para IA continuará crescendo, então como lidar com milhões de vetores? É aqui que as incorporações vetoriais e os bancos de dados vetoriais entram em ação. Esses vetores são representados em um espaço contínuo e multidimensional conhecido como incorporação, que são gerados por modelos de incorporação, especializados para converter seus dados vetoriais em uma incorporação. Os bancos de dados vetoriais servem para armazenar e indexar a saída de um modelo de incorporação. As incorporações vetoriais são uma representação numérica de dados, agrupando conjuntos de dados com base no significado semântico ou recursos semelhantes em praticamente qualquer tipo de dados.  

Por exemplo, considere as palavras "carro" e "veículo". Ambos têm significados semelhantes, embora sejam escritos de forma diferente. Para que uma aplicação de IA permita uma pesquisa semântica eficaz, as representações vetoriais de "carro" e "veículo" devem capturar sua semelhança semântica. Quando se trata de aprendizado de máquina, as incorporações representam vetores de alta dimensão que codificam essas informações semânticas. Essas incorporações vetoriais são a base de recomendações, chatbots e aplicativos generativos como o ChatGPT.  

Banco de dados vetorial versus banco de dados gráfico  

Os gráficos de conhecimento representam uma rede de entidades, como objetos ou eventos, e descrevem a relação entre elas. Um banco de dados gráfico é um banco de dados adequado para o propósito de armazenar informações do gráfico de conhecimento e visualizá-las como uma estrutura gráfica. Os bancos de dados gráficos são construídos em nós e arestas que representam as entidades conhecidas e as relações complexas entre elas, enquanto os bancos de dados vetoriais são construídos em vetores de alta dimensão. Como resultado, os bancos de dados gráficos são preferidos para processar relacionamentos complexos entre pontos de dados, enquanto os bancos de dados vetoriais são melhores para lidar com diferentes formas de dados, como imagens ou vídeos.

Como funcionam as incorporações vetoriais e os bancos de dados vetoriais 

Os dados vetoriais corporativos podem ser alimentados em um modelo de incorporação, como o watsonx.ai da IBM modelos ou Hugging Face (link reside fora de ibm.com), que são especializados para converter seus dados em uma incorporação, transformando dados vetoriais complexos e de alta dimensão em formas numéricas que os computadores podem entender. Essas incorporações representam os atributos dos seus dados usados em tarefas de IA, como classificação e detecção de anomalias.

Armazenamento de vetores

Os bancos de dados vetoriais armazenam a saída de um algoritmo de modelo de incorporação, os embeddings vetoriais. Eles também armazenam os metadados de cada vetor, que podem ser consultados usando filtros de metadados. Ao ingerir e armazenar essas incorporações, o banco de dados pode facilitar a recuperação rápida de uma pesquisa de similaridade, combinando a solicitação do usuário com uma incorporação de vetor semelhante. 

Indexação vetorial

Armazenar dados como incorporações não é suficiente. Os vetores precisam ser indexados para acelerar o processo de pesquisa. Bancos de dados vetoriais criam índices em incorporações vetoriais para funcionalidade de pesquisa. O banco de dados vetorial indexa vetores usando um algoritmo de aprendizado de máquina. A indexação mapeia vetores para novas estruturas de dados que permitem pesquisas mais rápidas por similaridade ou distância, como a pesquisa de vizinho mais próximo entre vetores.

Pesquisa por similaridade com base em consultas ou solicitações

A consulta de vetores pode ser feita por meio de cálculos que medem a distância entre vetores usando algoritmos, como a pesquisa de vizinho mais próximo. Essa medição pode ser baseada em várias métricas de similaridade, como a similaridade de cosseno, usada por esse índice para medir a proximidade ou a distância desses vetores. Quando um usuário consulta ou solicita um modelo de IA, uma incorporação é calculada usando o mesmo algoritmo do modelo de incorporação. O banco de dados calcula distâncias e executa cálculos de similaridade entre vetores de consulta e vetores armazenados no índice. Eles retornam os vetores mais semelhantes ou vizinhos mais próximos de acordo com a classificação de similaridade. Esses cálculos suportam várias tarefas de aprendizado de máquina, como sistemas de recomendação, pesquisa semântica, reconhecimento de imagem e outras tarefas de processamento de linguagem natural. 

Bancos de dados vetoriais e geração aumentada de recuperação (RAG) 

As empresas estão cada vez mais favorecendo a abordagem de geração aumentada de recuperação (RAG) em fluxos de trabalho de IA generativa por seu tempo de colocação no mercado mais rápido, inferência eficiente e resultado confiável, especialmente em casos de uso importantes, como atendimento ao cliente e RH/Talento. O RAG garante que o modelo esteja vinculado aos fatos mais atuais e confiáveis e que os usuários tenham acesso às fontes do modelo, de modo que suas afirmações possam ser verificadas quanto à precisão. O RAG é essencial para nossa capacidade de ancorar grandes modelos de linguagem em dados confiáveis para reduzir as alucinações do modelo. Essa abordagem se baseia no aproveitamento de dados vetoriais de alta dimensão para enriquecer os prompts com informações semanticamente relevantes para o aprendizado no contexto por modelos de base. Ele exige armazenamento e recuperação eficazes durante o estágio de inferência, que lida com o maior volume de dados. Os bancos de dados vetoriais são excelentes para indexar, armazenar e recuperar com eficiência esses vetores de alta dimensão, fornecendo a velocidade, a precisão e a escala necessárias para aplicações como mecanismos de recomendação e chatbots.

Vantagens dos bancos de dados vetoriais 

Embora esteja claro que a funcionalidade do banco de dados vetorial está crescendo rapidamente em interesse e adoção para aprimorar aplicativos corporativos baseados em IA, os seguintes benefícios também demonstraram valor comercial para os adotantes: 

Velocidade e desempenho: os bancos de dados vetoriais usam várias técnicas de indexação para permitir pesquisas mais rápidas. A indexação vetorial, juntamente com algoritmos de cálculo de distância, como a pesquisa do vizinho mais próximo, são particularmente úteis na busca de resultados relevantes em milhões, senão bilhões de pontos de dados, com desempenho otimizado. 

Escalabilidade: os bancos de dados vetoriais podem armazenar e gerenciar grandes quantidades de dados não estruturados, dimensionando horizontalmente, mantendo o desempenho à medida que as demandas de consulta e os volumes de dados aumentam.

Custo de propriedade: os bancos de dados vetoriais são uma alternativa valiosa para treinar modelos de base do zero ou ajustá-los. Isso reduz o custo e a velocidade de inferência de modelos de base.

Flexibilidade: quer você tenha imagens, vídeos ou outros dados multidimensionais, os bancos de dados vetoriais são criados para lidar com a complexidade. Dados os vários casos de uso que vão desde a pesquisa semântica até aplicações de IA conversacional, o uso de bancos de dados vetoriais pode ser personalizado para atender aos seus requisitos de negócios e de IA. 

Memória de longo prazo de LLMs: as organizações podem começar com modelos de uso geral, como modelos da série watsonx.ai Granite da IBM, modelos da série Llama-2 da Meta ou Flan do Google e, em seguida, fornecer seus próprios dados em um banco de dados vetorial para aprimorar a saída dos modelos e aplicações de IA essenciais para a recuperação da geração aumentada. 

Componentes de gerenciamento de dados: os bancos de dados vetoriais normalmente também fornecem recursos integrados para atualizar e inserir facilmente novos dados não estruturados. 

Considerações para bancos de dados vetoriais e sua estratégia de dados 

Há uma variedade de opções quando se trata de escolher um recurso de banco de dados vetorial para atender às necessidades de dados e IA da sua organização. 

Tipos de bancos de dados vetoriais

 

Existem algumas alternativas para escolher.

  • Bancos de dados vetoriais autônomos e proprietários, como o Pinecone
  • Soluções de código aberto, como weaviate ou milvus, que fornecem APIs RESTful integradas e suporte para linguagens de programação Python e Java
  • Plataformas com recursos de banco de dados vetoriais integrados, em breve no IBM watsonx.data

  • Extensões de banco de dados/pesquisa de vetores, como a extensão pgvector de código aberto do PostgreSQL, que oferece recursos de pesquisa de similaridade de vetores

Integração com seu ecossistema de dados

Os bancos de dados vetoriais não devem ser considerados recursos autônomos, mas sim uma parte de seu ecossistema mais amplo de dados e IA. Muitos oferecem APIs, extensões nativas ou podem ser integrados aos seus bancos de dados. Como eles são criados para aproveitar seus próprios dados corporativos para aprimorar seus modelos, você também deve ter governança e segurança de dados adequadas para garantir que os dados com os quais você está fundamentando esses LLMs sejam confiáveis. 

É aqui que uma base de dados confiável desempenha um papel importante na IA, e isso começa com seus dados e como eles são armazenados, gerenciados e governados antes de serem usados para IA. Central para isso é um data lakehouse, que é aberto, híbrido e governado, como IBM watsonx.data, parte da plataforma de dados watsonx AI que se encaixa perfeitamente em uma arquitetura de malha de dados. Por exemplo, o IBM watsonx.data foi criado para acessar, catalogar, governar e transformar todos os seus dados e metadados estruturados, semiestruturados e não estruturados. Em seguida, você pode aproveitar esses dados governados e os recursos do watsonx.data recursos integrados de banco de dados de vetores (visualização técnica no 4º trimestre de 2023) para casos de uso de aprendizado de máquina e IA generativa. 

Quando a indexação vetorial não é ideal

Usar um armazenamento vetorial e um índice é adequado para aplicações baseadas em fatos ou consultas baseadas em fatos. Por exemplo, perguntar sobre os termos legais de uma empresa no ano passado ou extrair informações específicas de documentos complexos. O conjunto de contextos de recuperação que você obteria seria aquele que fosse semanticamente mais semelhante à sua consulta por meio da distância de incorporação. No entanto, se você quiser obter um resumo dos tópicos, isso não é adequado para um índice vetorial. Nesse caso, você gostaria que o LLM analisasse todos os diferentes contextos possíveis sobre esse tópico em seus dados. Em vez disso, você pode usar um tipo diferente de índice, como um índice de lista em vez de um índice vetorial, pois um índice vetorial buscaria apenas os dados mais relevantes.  

Casos de uso de bancos de dados vetoriais 

As aplicações de bancos de dados vetoriais são vastas e crescentes. Alguns casos de uso importantes são:

Pesquisa semântica: realize pesquisas com base no significado ou contexto de uma consulta, permitindo resultados mais precisos e relevantes. Como não apenas palavras, mas frases podem ser representadas como vetores, a funcionalidade de pesquisa vetorial semântica entende a intenção do usuário melhor do que palavras-chave gerais. 

Pesquisa de similaridade e aplicativos: encontre dados semelhantes de imagens, texto, áudio ou vídeo com facilidade, para recuperação de conteúdo, incluindo reconhecimento avançado de imagem e fala, processamento de linguagem natural e muito mais. 

Mecanismos de recomendação: sites de comércio eletrônico, por exemplo, podem usar bancos de dados vetoriais e vetores para representar as preferências do cliente e os atributos do produto. Isso permite que eles sugiram itens semelhantes a compras anteriores com base na semelhança do vetor, aprimorando a experiência do usuário e aumentando a retenção.

IA conversacional: aprimoramento das interações dos agentes virtuais, aprimorando a capacidade de analisar por meio de bases de conhecimento relevantes de forma eficiente e precisa para fornecer respostas contextuais em tempo real às consultas dos usuários, juntamente com os documentos de origem e os números de página para referência. 

Recursos de banco de dados vetorial
watsonx.ai

Um estúdio corporativo de última geração para desenvolvedores de IA construírem, treinarem, validarem, ajustarem e implantarem tanto o aprendizado de máquina tradicional quanto os novos recursos de IA generativa baseados em modelos de base. Crie um recurso Q & A partir de uma ampla base de conhecimento interna ou externa com a ajuda de tarefas de IA em watsonx.ai, como geração aumentada de recuperação.

Saiba mais

watsonx.data

Armazenamento de dados adequado para o propósito, construído em uma arquitetura open data lakehouse para ajustar a carga de trabalho da IA, de todos os seus dados, em qualquer lugar. Armazene, consulte e pesquise incorporações vetoriais no watsonx.data com recursos vetoriais integrados (previsão técnica planejada para o 4º trimestre de 2023).

Saiba mais

IBM Cloud Databases for PostgreSQL-

Nossa oferta de banco de dados como serviço PostgreSQL permite que as equipes passem mais tempo construindo com alta disponibilidade, orquestração de backup, recuperação pontual (PITR) e réplica de leitura com facilidade. O PostgreSQL oferece o pgvector, uma extensão vetorial de código aberto que poderá ser configurada com as extensões do IBM Cloud PostgreSQL (em breve), fornecendo recursos de pesquisa de semelhança vetorial.

Saiba mais
IBM Cloud Databases for Elasticsearch

Nosso banco de dados como serviço Elasticsearch vem com um mecanismo de pesquisa de texto completo, o que o torna o local perfeito para seus dados de texto não estruturados. O Elasticsearch também oferece suporte a várias formas de pesquisa de similaridade semântica (link externo ao site ibm.com). Ele oferece suporte a vetores densos (link externo ao site ibm.com) para pesquisa exata do vizinho mais próximo, mas também fornece modelos de IA integrados para calcular vetores esparsos e realizar pesquisa avançada por similaridade (link externo ao site ibm.com).

Saiba mais
Recursos do banco de dados de vetores Modelos de base e armazenamentos de dados liberam o potencial da IA generativa

As organizações que utilizam modelos de IA generativos corretamente podem ver uma infinidade de benefícios, desde o aumento da eficiência operacional e a melhoria da tomada de decisões até a rápida criação de conteúdo de marketing.

Agora disponíveis: modelos watsonx Granite prontos para empresas e desenvolvidos pela IBM

A IBM anunciou a disponibilidade geral dos primeiros modelos da watsonx Granite Model Series, uma coleção de modelos de IA generativa que promove a infusão da IA generativa em aplicações de negócios e fluxos de trabalho.

O que é geração aumentada de recuperação?

O RAG é uma estrutura de IA para recuperar fatos de uma base de conhecimento externa para fundamentar os LLMs nas informações mais precisas e atualizadas e para fornecer aos usuários uma visão do processo generativo dos LLMs.

Dê o próximo passo

Treine, valide, ajuste e implemente IA generativa, modelos de base e recursos de aprendizado de máquina com o IBM watsonx.ai, um estúdio empresarial de próxima geração para construtores de IA. Crie aplicações de IA em menos tempo com menos dados.

Explore o watsonx.ai Agende uma demonstração em tempo real
Notas de rodapé

1 Gartner Innovation Insight: Vector Databases (link reside fora ibm.com), requer conta Gartner), Gartner

2 Gartner 2022 Strategic Roadmap for Storage (link reside fora de ibm.com), requer conta do Gartner), Gartner