A pesquisa de vetor é baseada na tecnologia de pesquisa vetorial desenvolvida pela pesquisa do Google. Com a Pesquisa de vetor, é possível aproveitar a mesma infraestrutura que fornece uma base para os produtos do Google, como Pesquisa Google, YouTube e Google Play.
Introdução
A pesquisa de vetor pode pesquisar em bilhões de itens semanticamente parecidos ou relacionados semanticamente. Um serviço de correspondência por similaridade vetorial tem muitos casos de uso, como a implementação de mecanismos de recomendação, mecanismos de pesquisa, bots de chat e classificação de texto.
Um caso de uso possível da pesquisa de vetor é um varejista on-line que tem um inventário com centenas de milhares de itens de vestuário. Nesse cenário, a API de incorporação multimodal pode ajudar a criar embeddings desses itens e usar a Pesquisa de vetor para associá-los a consultas de texto com imagens semanticamente parecidas. Por exemplo, eles poderiam pesquisar "vestido de verão amarelo" e, em seguida, a Pesquisa de vetor retornaria e exibiria os itens mais semelhantes. A Vector Search pode fazer pesquisas em grande escala, com altas consultas por segundo (QPS), alto recall, baixa latência e eficiência de custos.
O uso de embeddings não se limita a palavras ou texto. É possível gerar embeddings semânticos para muitos tipos de dados, incluindo imagens, áudio, vídeo e preferências do usuário. Para gerar um embedding multimodal com a Vertex AI, consulte Usar embeddings multimodais.
Como usar a pesquisa de vetor para correspondência semântica
A correspondência semântica pode ser simplificada em algumas etapas. Primeiro, você precisa gerar representações de incorporação de muitos itens (feito fora da Pesquisa de vetor). Em seguida, você faz o upload dos seus embeddings para o Google Cloud e, em seguida, vincula os dados à Pesquisa de vetores. Depois que seus embeddings forem adicionados à Pesquisa de vetor, você poderá criar um índice para executar consultas e receber recomendações ou resultados.
Gerar um embedding
Gerar um embedding para seu conjunto de dados. Isso envolve o pré-processamento dos dados de modo que seja eficiente a pesquisa de vizinhos mais próximos aproximados (ANN, na sigla em inglês). É possível fazer isso fora da Vertex AI ou usar a IA generativa na Vertex AI para criar um embedding. Com a IA generativa na Vertex AI, é possível criar embeddings de texto e multimodais.
Adicionar seu embedding ao Cloud Storage
Faça o upload do embedding no Cloud Storage para poder chamá-lo pelo serviço de Pesquisa de vetor.
Fazer upload para a pesquisa de vetor
Conecte seus embeddings à pesquisa de vetor para realizar a pesquisa vizinha mais próxima. Basta criar um índice do seu embedding, que pode ser implantado em um endpoint de índice para consulta. A consulta retorna os vizinhos mais próximos. Para criar um índice, consulte Gerenciar índices. Para implantar o índice em um endpoint, consulte Implantar e gerenciar endpoints de índice.
Avaliar os resultados
Depois de ter os resultados aproximados do vizinhos mais próximos, você poderá avaliá-los para ver se eles atendem às suas necessidades. Se os resultados não forem precisos o suficiente, ajuste os parâmetros do algoritmo ou ative o escalonamento para aceitar mais consultas por segundo. Isso é feito atualizando o arquivo de configuração, que configura o índice. Para saber mais, consulte Configurar parâmetros de índice.
Terminologia de pesquisa de vetor
Esta lista contém algumas terminologias importantes que você precisa entender para usar a Pesquisa de vetor:
- Vetor: um vetor é uma lista de valores flutuantes com magnitude e direção. Ele pode ser usado para representar qualquer tipo de dados, como números, pontos no espaço e direções.
- Embedding: um embedding é um tipo de vetor usado para representar
dados de uma forma que captura o significado semântico deles. Geralmente, os embeddings são criados com técnicas de machine learning e costumam ser usados no processamento de linguagem natural (PLN) e em outros aplicativos de machine learning.
- Embeddings densos: representam o significado semântico do texto, usando matrizes que contêm principalmente valores diferentes de zero. Com embeddings densos, resultados de pesquisa semelhantes podem ser retornados com base na semelhança semântica.
- Embeddings esparsos: representam a sintaxe de texto, usando matrizes de alta dimensão que contêm pouquíssimos valores diferentes de zero em comparação a embeddings densos. Os embeddings esparsos são frequentemente usados para pesquisas de palavras-chave.
- Pesquisa híbrida: usam embeddings densos e esparsos, permitindo pesquisar com base em uma combinação de pesquisa por palavra-chave e pesquisa semântica. A pesquisa de vetor permite pesquisa baseada em embeddings densos. Como recurso em pré-lançamento público, a pesquisa de vetor é compatível com embeddings esparsos e pesquisa híbrida.
- Índice: um conjunto de vetores implantados juntos para a pesquisa por similaridade. Os vetores podem ser adicionados ou removidos de um índice. As consultas de pesquisa por similaridade são emitidas para um índice específico e pesquisam os vetores dele.
- Informações empíricas: termo que se refere à verificação da precisão do aprendizado de máquina em relação ao mundo real, como um conjunto de dados de informações empíricas.
Recall: a porcentagem de vizinhos mais próximos retornados pelo índice que são vizinhos mais próximos reais. Por exemplo, se uma consulta de vizinho mais próxima de 20 vizinhos mais próximos retornou 19 dos vizinhos mais próximos, o recall será de 19/20x100 = 95%.
Restringir: funcionalidade que limita as pesquisas a um subconjunto do índice usando regras booleanas. A restrição também é chamada de "filtro". Com a Pesquisa de vetor, você pode usar a filtragem numérica e a filtragem de atributos de texto.
A seguir
- Comece em menos de uma hora com o guia de início rápido da Pesquisa de vetor
- Analise os pré-requisitos e os embeddings em Antes de começar
- Saiba como configurar o formato e a estrutura dos dados de entrada.
- Consulte outros tutoriais sobre notebook da Pesquisa de vetor na Visão geral de tutoriais
- Saiba mais sobre como exportar embeddings do Spanner para a Pesquisa de vetores