Ler em inglês

Partilhar via


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

Este artigo descreve como a geração aumentada de recuperação permite que os LLMs tratem suas fontes de dados como conhecimento sem ter que treinar.

Os LLMs têm amplas bases de conhecimento através de treinamento. Para a maioria dos cenários, você pode selecionar um LLM projetado para suas necessidades, mas esses LLMs ainda exigem treinamento adicional para entender seus dados específicos. A geração aumentada de recuperação permite que você disponibilize seus dados para LLMs sem treiná-los primeiro.

Como funciona o RAG

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

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

Processo RAG básico

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

  1. Fragmente dados grandes em partes gerenciáveis.
  2. Converta os blocos 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 seus dados convertidos para 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 seus dados existem. Pode ser um arquivo/pasta em sua máquina, um arquivo no armazenamento em nuvem, um ativo de dados do Azure Machine Learning, um repositório Git ou um banco de dados SQL.
  • Fragmentação de dados: os dados em sua fonte precisam ser convertidos em texto sem formatação. Por exemplo, documentos do Word ou PDFs precisam ser abertos e convertidos em texto. O texto é então fragmentado em pedaços menores.
  • Convertendo o texto em vetores: são incorporaçõ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 incorporações: essas informações são armazenadas como metadados nas partes que você criou, que são usadas para ajudar os LLMs a gerar citações enquanto geram respostas.