Compartilhar via


A RAG (geração aumentada de recuperação) fornece conhecimento de LLM

Este artigo descreve como a geração aumentada de recuperação permite que os LLMs tratem as fontes de dados como conhecimento sem a necessidade de treinamento.

Os LLMs têm extensas bases de dados de conhecimento por meio do treinamento. Para a maioria dos cenários, você pode selecionar um LLM criado de acordo com os seus requisitos, mas esses LLMs ainda exigirão treinamento adicional para entender os dados específicos. A geração aumentada de recuperação permite disponibilizar os dados para os LLMs sem treiná-los primeiro.

Como a RAG funciona

Para executar a geração aumentada de recuperação, você cria inserções para os dados, juntamente com perguntas comuns sobre eles. Você pode fazer isso em tempo real ou criar e armazenar as inserções usando uma solução de banco de dados vetorial.

Quando um usuário faz uma pergunta, o LLM usa as inserções para comparar a pergunta do usuário com os dados e encontrar o contexto mais relevante. Esse contexto e a pergunta do usuário, em seguida, vão para o LLM em um prompt e o LLM fornece uma resposta com base nos dados.

Processo básico de RAG

Para executar a RAG, você deve processar cada fonte de dados que deseja usar para recuperações. O processo básico é como descrito a seguir:

  1. Agrupe os dados grandes em partes gerenciáveis.
  2. Converta as partes em um formato pesquisável.
  3. Armazene os dados convertidos em um local que permita acesso eficiente. Além disso, é importante armazenar metadados relevantes para citações ou referências quando o LLM fornece respostas.
  4. Alimente os dados convertidos nos LLMs em prompts.

Captura de tela de um diagrama da visão geral técnica de um LLM percorrendo as etapas do RAG.

  • Dados de origem: é aqui que os dados existem. Pode ser um arquivo/pasta em seu computador, um arquivo no armazenamento em nuvem, um ativo de dados do Azure Machine Learning, um repositório Git ou um banco de dados SQL.
  • Partes de dados: os dados na sua fonte precisam ser convertidos em texto sem formatação. Por exemplo, documentos do Word ou PDFs precisam ser abertos e convertidos em texto. Em seguida, o texto é agrupado em partes menores.
  • Converter o texto em vetores: são as inserções. Os vetores são representações numéricas de conceitos convertidos em sequências numéricas, o que torna mais fácil para os computadores entenderem as relações entre esses conceitos.
  • Links entre dados de origem e inserções: essas informações são armazenadas como metadados nas partes criadas, que são usadas para ajudar os LLMs a gerar citações ao gerar respostas.