16 pontos por ninebow 2024-01-03 | 2 comentários | Compartilhar no WhatsApp

PyTorchKR

Abaixo estão apenas os principais pontos extraídos com foco no índice


Introdução à tecnologia Retrieval-Augmented Generation (RAG)

Grandes modelos de linguagem (LLMs) demonstram capacidades impressionantes, mas, para uso prático, ainda precisam superar problemas como alucinações, atualização lenta do conhecimento e falta de transparência nas respostas. O RAG (Retrieval-Augmented Generation) é uma tecnologia proposta para resolver esses problemas.

RAG é um método em que, antes de gerar uma resposta ou texto em um grande modelo de linguagem (LLM), busca-se informação relevante em um amplo conjunto de documentos e, em seguida, essa informação é usada para gerar a resposta. O foco é resolver problemas típicos dos LLMs, como conhecimento desatualizado, falta de conhecimento em domínios específicos e baixa transparência nas respostas.

Esse tipo de RAG pode melhorar significativamente a precisão das respostas e ajuda especialmente a reduzir alucinações do modelo em tarefas intensivas em conhecimento. O usuário pode verificar a exatidão da resposta por meio de citações das fontes, o que aumenta a confiança na saída do modelo. Além disso, também facilita a atualização de conhecimento e a incorporação de conhecimento de áreas específicas.

Além do RAG, também é possível usar fine-tuning para fazer com que grandes modelos de linguagem se concentrem em conhecimentos específicos. Porém, esse fine-tuning leva tempo para refletir informações atualizadas em tempo real e consome recursos adicionais para treinar novamente o modelo. Em contraste, o RAG é semelhante a fornecer ao LLM um “material de referência” com o qual ele pode buscar informações para consultas específicas.

Os 3 principais paradigmas de RAG - visão geral

Os paradigmas de pesquisa da tecnologia RAG vêm evoluindo continuamente ao longo do tempo. Os principais paradigmas são três: RAG básico, RAG avançado e RAG modular. O RAG básico, dos estágios iniciais, era eficiente em custo e apresentava desempenho melhor do que usar apenas um LLM, mas tinha várias limitações. O surgimento do RAG avançado e do RAG modular teve como objetivo resolver defeitos específicos do RAG básico.

Os 3 principais paradigmas de RAG - RAG básico (Naive RAG)

O RAG básico se refere à metodologia inicial de pesquisa em RAG e inclui os processos tradicionais de indexação, recuperação e geração. O RAG básico se concentra principalmente em uma abordagem simples de recuperação e geração, sendo importante para explicar os conceitos e princípios fundamentais de RAG.

No entanto, podem surgir repetições desnecessárias, informações imprecisas e integração incorreta de contexto devido a baixa precisão de recuperação, baixa qualidade na geração de respostas e dificuldades no processo de augmentação. Portanto, pode não ser apropriado usar o RAG básico em cenários complexos ou desafiadores.

Os 3 principais paradigmas de RAG - RAG avançado (Advanced RAG)

O RAG avançado é um paradigma desenvolvido para melhorar as deficiências do RAG básico. Ele inclui principalmente métodos de pré-recuperação e pós-recuperação para elevar a qualidade da recuperação e da geração. De modo geral, o RAG avançado pode ser dividido em três etapas: processo de pré-recuperação (Pre-Retrieval Process), processo de pós-recuperação (Post-Retrieval Process) e otimização do pipeline de RAG (RAG Pipeline Optimization):

Os 3 principais paradigmas de RAG - RAG modular (Modular RAG)

O RAG modular é uma forma mais avançada do RAG avançado, indo além do framework tradicional de RAG ao integrar vários módulos e funções para oferecer maior diversidade e flexibilidade. Essa abordagem inclui diversos novos módulos e padrões que permitem ajustar o sistema RAG a diferentes cenários e requisitos.

Principais componentes da tecnologia RAG: Retriever

O retriever representa o “R” da sigla RAG e desempenha no sistema o papel crucial de buscar informações. Ele localiza informações relevantes em grandes conjuntos de dados e prepara os dados para a geração de texto​​. Esses retrievers são usados para preencher a lacuna entre o conhecimento geral do LLM e a necessidade de informações atuais e contextualmente precisas. Isso é especialmente importante em cenários que exigem dados em tempo real, conhecimento especializado de domínios específicos ou verificação de fatos​​.

Principais componentes da tecnologia RAG: Generator

Se o papel do retriever visto anteriormente era extrair documentos candidatos a partir da entrada do usuário, o papel do generator é usar os resultados recuperados para gerar a resposta que será fornecida ao usuário. Para gerar respostas precisas e altamente relevantes usando efetivamente as informações recuperadas, são realizados processos de pós-processamento, como compressão das informações e reranking, além de processos de otimização adaptados aos dados de entrada.

Principais componentes da tecnologia RAG: métodos de augmentação (Augmentation Methods)

Neste capítulo, os métodos de augmentação em RAG serão analisados sob os três aspectos a seguir.

  • etapa de augmentação (the stage of augmentation)
  • augmentação das fontes de dados (augmentation data sources)
  • processo de augmentação (the process of augmentation)

Avaliação de RAG (RAG Evaluation)

A avaliação de RAG (RAG Evaluation) consiste em medir o quão efetivamente o RAG funciona. De forma ampla, a avaliação se divide em dois tipos: a avaliação independente (independent evaluation) de cada módulo, como retriever ou generator, e a avaliação end-to-end (end-to-end evaluation) de todo o processo, da entrada à saída. Vamos ver os métodos de avaliação, as métricas (metric) e os frameworks (framework) que podem ser usados em cada caso.

Perspectivas futuras de RAG (Future Prospects)

Aborda a otimização vertical e a expansão horizontal do RAG, bem como o ecossistema de RAG.


⚠️Publicidade: este texto organizado pela comunidade de usuários do PyTorch na Coreia foi útil para você? Se cadastar como membro, você receberá os principais textos por e-mail! (O padrão é Weekly, mas você também pode mudar para Daily.)

2 comentários

 
959ma 2024-01-04

Obrigado por compartilhar este ótimo material.

 
ninebow 2024-01-04

Ah, obrigado por ler!
Se, por acaso, você notar alguma parte estranha ou incorreta durante a leitura, peço que me avise. ^^;