Minha IBM Efetue login Inscreva-se

Qual é a diferença entre RAG (retrieval augmented generation) e fine tuning?

14 de agosto de 2024 

Autores

Ivan Belcic

Staff writer

Cole Stryker

Editorial Lead, AI Models

Qual é a diferença entre RAG (retrieval augmented generation) e fine tuning?

A diferença entre RAG LLM e fine tuning é que o RAG amplia um modelo de processamento de linguagem natural (NLP) conectando-o ao banco de dados proprietário de uma organização, enquanto o ajuste fino otimiza modelos de deep learning para tarefas específicas de um domínio.

O resultado pretendido tanto do RAG quanto do ajuste fino é melhorar o desempenho do modelo para maximizar o benefício para a empresa que o utiliza.

Enquanto a RAG emprega dados internos da empresa para ampliar a engenharia de prompts, o ajuste fino retreina o modelo com dados externos focados para otimizar o desempenho.

 

O que é RAG e Fine tuning?

 

A geração aumentada de recuperação (RAG) e o ajuste fino (fine tuning) são dois métodos que as empresas podem usar para obter mais valor dos grandes modelos de linguagem (LLMs). Ambos funcionam adaptando o LLM aos casos de uso específicos, mas as metodologias por trás deles diferem significativamente.

Apesar dos grandes avanços da IA generativa desde o seu início, a tarefa de criar respostas automáticas em tempo real às perguntas dos usuários permanece um desafio considerável.

Enquanto as empresas correm para incorporar a IA generativa em seus processos para reduzir custos, agilizar fluxos de trabalho e se manter à frente dos concorrentes, elas frequentemente enfrentam dificuldades em fazer com que seus chatbots e outros modelos gerem respostas precisas de forma consistente.

Projeto 3D de bolas rolando em uma pista

As últimas notícias e insights sobre IA 


Descubra insights selecionadas por especialistas sobre IA, nuvem e outros assuntos no boletim informativo semanal Think. 

A importância do RAG LLM e do fine tuning

O RAG conecta um LLM a repositórios de dados atuais e privados que, de outra forma, seriam inacessíveis. Os modelos RAG conseguem gerar respostas mais precisas ao utilizar o contexto dos dados internos, algo que não seria possível sem essa integração.

Um modelo ajustado geralmente supera seu modelo base correspondente, como GPT-3 ou GPT-4, ao aplicar seu treinamento com dados específicos de um domínio. O LLM ajustado tem uma melhor compreensão do domínio específico e de sua terminologia, permitindo que ele gere respostas precisas.

Grandes modelos de linguagem ficam obsoletos sem o acesso constante a dados atualizados. Os LLMs modernos são redes neurais massivas que exigem enormes conjuntos de dados e recursos computacionais para serem treinados. Mesmo os maiores fornecedores de LLM, como Meta, Microsoft e OpenAI, retreinam periodicamente seus modelos, o que torna qualquer LLM quase instantaneamente obsoleto assim que é lançado.

Quando os modelos não podem aprender com dados novos, frequentemente alucinam ou confabulam: um fenômeno que ocorre quando modelos de IA generativa "inventam" respostas para perguntas que não podem responder com certeza. Os modelos de IA generativa utilizam algoritmos estatísticos complexos para prever respostas às consultas do usuário. Se um usuário perguntar algo que a IA não encontrar facilmente em seu conjunto de dados de treinamento, o melhor que poderá fazer será adivinhar.

Mistura de Especialistas | Podcast

Decodificando a IA: resumo semanal das notícias

Junte-se a nosso renomado painel de engenheiros, pesquisadores, líderes de produtos e outros enquanto filtram as informações sobre IA para trazerem a você as mais recentes notícias e insights sobre IA.

O que é RAG (Retrieval augmented generation)?

RAG é um método de otimização de LLM introduzido pela Meta AI em um artigo de 2020 intitulado "Retrieval-Augmented Generation for Knowledge-Intensive Tasks".[1]

Trata-se de um framework de arquitetura de dados que liga um LLM aos dados exclusivos da organização, geralmente mantidos em data lakehouses. Essas vastas plataformas de dados são dinâmicas e contêm todos os dados que circulam pela organização em todos os pontos de contato, internos e externos.

Como o RAG funciona?

A geração aumentada de recuperação funciona localizando informações em fontes de dados internas que são relevantes para a consulta do usuário, e então usando esses dados para gerar respostas mais precisas. Um mecanismo de "recuperação" de dados é adicionado para "aumentar" o LLM, ajudando-o a "gerar" respostas mais relevantes.

RAG geram respostas por meio de um processo com quatro etapas:

  1. Consulta: Um usuário envia uma consulta, que inicializa o sistema RAG.
     

  2. Recuperação de informações: algoritmos complexos examinam os repositórios de conhecimento da empresa procurando informações pertinentes.
     

  3. Integração: os dados recuperados são combinados com a consulta do usuário e entregues ao modelo RAG para resposta. Até este ponto, o LLM não processou a consulta.
     

  4. Resposta: combinando as informações obtidas com seu treinamento e conhecimento prévio, o LLM cria uma resposta adequada ao contexto.
     

Ao pesquisar em documentos internos, sistemas RAG utilizam busca semântica. Os bancos de dados vetoriais organizam dados por similaridade, permitindo buscas por significado em vez de por palavras-chave. As técnicas de pesquisa semântica permitem que algoritmos RAG consigam ir além das palavras-chave, captando a intenção da pergunta e fornecendo os dados mais pertinentes.

Os sistemas RAG demandam ampla elaboração e manutenção da arquitetura de dados. Os engenheiros de dados devem construir os pipelines de dados necessários para conectar os data lakehouses da organização ao LLM.

Para entender o RAG, imagine um modelo de IA generativa como um cozinheiro amador. Eles conhecem o básico de culinária, mas não possuem o conhecimento especializado do banco de dados proprietário de uma organização ou de um chef treinado em uma cozinha específica. O RAG é como oferecer ao cozinheiro amador um livro de receitas daquela culinária. Ao combinar seu conhecimento geral de cozinha com as receitas do livro, o cozinheiro amador consegue preparar facilmente pratos específicos dessa culinária.

O processo de recuperação de dados do RAG

Para usar RAG de forma eficaz, engenheiros de dados devem criar sistemas de armazenamento e pipelines de dados que atendam a uma série de critérios importantes.

Armazenamento de dados corporativos

Para melhorar as funções do sistema RAG e permitir a recuperação de dados em tempo real, é fundamental que os dados estejam cuidadosamente organizados e atualizados. Manter metadados atualizados e evitar dados redundantes assegura consultas mais eficientes.

Armazenamento de documentos

Dividir dados não estruturados, como documentos, em partes menores pode facilitar uma recuperação mais eficaz. Essa segmentação de dados permite que os sistemas RAG retornem dados mais precisos e economizem recursos, pois somente a parte mais relevante do documento é usada no prompt para o LLM.

Depois, essas partes são transformadas em números, a conversão de texto em valores numéricos e armazenadas em um banco de dados vetorial.

Proteção de dados

Os pipelines de dados devem incluir restrições de segurança para impedir que os funcionários acessem dados fora do escopo de suas respectivas funções. Com legislações importantes de privacidade, como a GDPR da UE, as organizações devem aplicar proteções rigorosas a todos os dados internos. Informações de identificação pessoal (PII) nunca devem ser disponibilizadas a usuários não autorizados.

Ajuste imediato

O sistema RAG combina a consulta do usuário com os dados obtidos para criar um prompt personalizado para o LLM. Um processo contínuo de ajuste de prompt facilitado por outros modelos de aprendizado de máquina pode fortalecer a capacidade de responder às perguntas do sistema RAG ao longo do tempo.

O que é fine tuning?

Fine tuning (ajuste fino) é o processo de retreinar um modelo pré-treinado em um conjunto menor e mais específico de dados, dando a ele conhecimento especializado em um domínio. O modelo ajusta então seus parâmetros, que governam seu comportamento, e suas representações internas para se adequar melhor ao conjunto de dados específico.

Como funciona o fine tuning?

O ajuste fino opera apresentando ao modelo um conjunto de dados com exemplos identificados. O modelo aprimora seu treinamento inicial ao atualizar seus pesos com base nos novos dados. O ajuste fino é um método de aprendizado supervisionado, ou seja, os dados usados no treinamento são organizados e rotulados. Por outro lado, a maioria dos modelos básicos utiliza aprendizado não supervisionado, onde os dados não são organizados e o modelo precisa categorizá-los sozinho.

Usando novamente a comparação do modelo de IA com um cozinheiro amador, o ajuste fino seria um curso de culinária especializado em determinada gastronomia. Antes de fazer o curso, o cozinheiro amador teria um entendimento geral dos fundamentos da cozinha. Mas após receber treinamento culinário e adquirir conhecimento específico, ele seria muito mais proficiente em cozinhar aquele tipo de prato.

Ajuste fino completo vs. ajuste fino de parâmetros com eficiência

Os modelos podem ser totalmente ajustados, atualizando todos os seus parâmetros, ou ajustados de forma que apenas os parâmetros mais relevantes sejam atualizados. Esse último processo é chamado de ajuste fino de parâmetros com eficiência (PEFT) e é excelente para tornar modelos mais eficientes em um domínio específico, mantendo baixos os custos de treinamento.

O ajuste fino de um modelo demanda muita capacidade computacional e precisa de várias GPUs poderosas funcionando simultaneamente, além da memória para armazenar o LLM. O PEFT permite que usuários de LLM retreinarem seus modelos em hardwares mais simples, obtendo melhorias de desempenho similares no caso de uso desejado, como suporte ao cliente ou análise de sentimento. O ajuste fino é especialmente eficaz em ajudar modelos a superar tendências, que são diferenças entre as previsões do modelo e os resultados reais.

Comparação entre ajuste fino e pré-treinamento contínuo

O pré-treinamento ocorre no início do processo de treinamento. Os pesos ou parâmetros do modelo são inicializados aleatoriamente, e o modelo começa a treinar em seu conjunto de dados inicial. O pré-treinamento contínuo envolve apresentar um modelo treinado a novos dados não etiquetados, em um processo conhecido como aprendizado por transferência. O modelo pré-treinado "transfere" o que aprendeu até então para novas informações externas.

Por outro lado, o ajuste fino utiliza dados rotulados para aprimorar o desempenho do modelo em um caso de uso específico. O ajuste fino é excelente para aprimorar a habilidade do modelo em tarefas específicas, enquanto o pré-treinamento contínuo pode aprofundar o conhecimento do modelo em um domínio.

Soluções relacionadas

Soluções relacionadas

IBM watsonx.ai

Treine, valide, ajuste e implemente recursos de IA generativa, modelos de base e recursos de aprendizado de máquina com o IBM watsonx.ai, um estúdio empresarial de última geração para construtores de IA. Crie aplicações de IA em uma fração do tempo com uma fração dos dados.

Conheça o watsonx.ai
Soluções de inteligência artificial

Use a IA a serviço de sua empresa com a experiência e o portfólio de soluções líder do setor da IBM à sua disposição.

Explore as soluções de IA
Serviços de IA

Reinvente os fluxos de trabalho e operações críticos adicionando IA para maximizar experiências, tomadas de decisão em tempo real e valor de negócios.

Explore os serviços de IA
Dê o próximo passo

Obtenha acesso completo aos recursos que abrangem o ciclo de vida do desenvolvimento da IA. Produza soluções poderosas de IA com interfaces fáceis de usar, fluxos de trabalhos e acesso a APIs e SDKs padrão do setor.

Explore o watsonx.ai Agende uma demonstração em tempo real
Notas de rodapé

1 “Retrieval-Augmented Generation for Knowledge-Intensive NLP Task”, Lewis et al, 12 de abril 2021.