Preparar dados para recuperação

Concluído

Dica

Consulte a guia Texto e imagens para obter mais detalhes!

A recuperação de informações só consegue encontrar informações que foram tornadas pesquisáveis. Antes que um aplicativo RAG possa responder a perguntas, ele precisa de um pipeline de indexação que prepare os dados de origem.

O pipeline de indexação normalmente executa as seguintes tarefas:

Diagrama do pipeline de extração e indexação de texto.

  1. Extrai o texto de origem.
  2. Agrupa o texto em passagens focadas.
  3. Codifica os tokens de texto como vetores de inserção que encapsulam atributos semânticos.
  4. Cria um índice que pode ser usado para pesquisar as inserções.

Vamos explorar cada uma dessas tarefas com mais profundidade.

Selecionar e processar dados de origem

Uma fonte de conhecimento de RAG pode incluir manuais de produto, políticas, páginas web, registros de banco de dados, tickets de suporte ou outro conteúdo aprovado. O processo de preparação geralmente inclui estas etapas:

  1. Carregue o conteúdo de cada fonte.
  2. Extraia texto e estrutura úteis de formatos como arquivos PDF, apresentações, páginas da Web ou tabelas.
  3. Limpe o conteúdo removendo cabeçalhos repetidos, texto de navegação ou outros elementos que não são úteis para responder a perguntas.
  4. Adicione metadados como um título, URL de origem, categoria, permissões de acesso e data da última atualização.

A qualidade da origem importa. Documentos duplicados, desatualizados ou contraditórios podem levar a respostas inadequadas e não confiáveis. Os controles de acesso também são essenciais: os usuários devem recuperar apenas o conteúdo que estão autorizados a exibir.

Dividir o conteúdo em partes

Os documentos geralmente são grandes demais para serem enviados para um modelo na íntegra. Eles são divididos em trechos menores chamados segmentos. Cada parte deve conter contexto suficiente para ser significativa enquanto permanece focada em um tópico específico.

Por exemplo, uma política de viagem pode ser dividida por seção em partes separadas para voos, hotéis, refeições e transporte terrestre. Uma pergunta sobre limites relacionados a hotéis pode então recuperar a seção sobre hotéis sem adicionar a política inteira ao prompt.

O agrupamento envolve uma compensação:

  • Partes muito grandes podem conter informações irrelevantes e consumir mais da janela de contexto do modelo.
  • Segmentos muito pequenos podem separar uma declaração de títulos, definições ou outras informações necessárias para compreendê-la.

Os segmentos geralmente se sobrepõem ligeiramente para que o contexto importante não se perca na fronteira entre eles.

Criar inserções

As soluções RAG geralmente usam um modelo de inserção para converter cada parte em uma inserção: um vetor numérico que representa características semânticas do conteúdo. Grupos com significados semelhantes têm inserções próximas umas das outras no espaço vetor, mesmo quando usam palavras diferentes.

Indexar os dados

A solução armazena os fragmentos, seus embeddings e metadados úteis em um índice de pesquisa ou repositório de dados com suporte a vetores. O índice pode dar suporte a:

  • Pesquisa de palavra-chave, que é eficaz quando palavras exatas, identificadores ou códigos de produto importam.
  • Pesquisa de vetor, que localiza conteúdo semanticamente semelhante.
  • Pesquisa híbrida, que combina a palavra-chave e a pesquisa de vetor.

Preparar dados não é uma tarefa única. O pipeline de indexação deve adicionar novo conteúdo, atualizar o conteúdo alterado e remover conteúdo que não é mais válido, portanto, a recuperação reflete a fonte atual da verdade.