Visão geral da pesquisa de vetor da Vertex AI

A pesquisa de vetor é baseada na tecnologia de pesquisa vetorial desenvolvida pela pesquisa do Google. Com a Pesquisa de vetor, você pode aproveitar a mesma pesquisa e tecnologia que fornecem uma base para os produtos do Google, como a Pesquisa Google, o YouTube e o 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, chatbots 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