Ir para seção

RAG e ajuste fino

Copiar URL

O objetivo da RAG e do ajuste fino é aprimorar os Large Language Models (LLMs). A RAG faz isso sem modificar o LLM subjacente, enquanto o ajuste fino requer que os pesos e parâmetros do LLM sejam alterados. Com frequência, você pode personalizar um modelo usando tanto o ajuste fino quanto a arquitetura de RAG.

Conheça a IA da Red Hat

Um LLM é um tipo de modelo de inteligência artificial (IA) que usa técnicas de machine learning (aprendizado de máquina) para entender e produzir linguagem humana. Entre outras habilidades, esses modelos de machine learning geram, resumem, traduzem, reescrevem, classificam, categorizam e analisam textos. O uso mais conhecido dos LLMs de nível empresarial é a criação de um sistema de resposta a perguntas, como um chatbot.

Os modelos de base de LLMs são treinados com conhecimento geral para oferecer suporte a uma ampla variedade de casos de uso. No entanto, eles provavelmente não estão equipados com o conhecimento proprietário da sua organização. A RAG e o ajuste fino são duas maneiras de ajustar e alimentar o LLM com os dados que você deseja para que ele produza um resultado específico.

Por exemplo, digamos que você esteja criando um chatbot para interagir com clientes. Nesse cenário, o chatbot é um representante da sua empresa, então você quer que ele aja como um funcionário de alto desempenho. Você precisa que o chatbot entenda as nuances da sua empresa, como as soluções que você vende e as políticas que adota. Assim como você treinaria um funcionário fornecendo documentos para ele estudar e scripts para seguir, um chatbot é treinado com RAG e ajuste fino para desenvolver a base de conhecimento dele. 

A RAG complementa os dados de um LLM ao recuperar informações de fontes à sua escolha, como repositórios de dados, coleções de texto e documentações pré-existentes. Depois de recuperar os dados, as arquiteturas de RAG os processam no contexto de um LLM e geram uma resposta com base na combinação dessas fontes.

A maior utilidade da RAG é complementar seu modelo com informações atualizadas regularmente. Ao fornecer ao LLM uma linha de comunicação com as fontes externas selecionadas, o resultado será mais preciso. E como você pode projetar a RAG para citar a fonte, é fácil rastrear como um resultado é formulado, o que gera mais transparência e confiança.

Voltando ao nosso exemplo: se você fosse criar um chatbot que respondesse a perguntas como “Qual é a sua política de devolução?”, poderia usar uma arquitetura de RAG. Você poderia conectar seu LLM a um documento que detalha a política de devolução da sua empresa e direcionar o chatbot para extrair informações dele. Poderia até instruir o chatbot a citar a fonte e fornecer um link contendo mais detalhes. E se o seu documento de política de devolução mudasse, o modelo da RAG extrairia as informações mais recentes e as forneceria ao usuário.

Saiba mais sobre RAG

 

Casos de uso de RAG

A RAG pode coletar e organizar informações de uma maneira que simplifique a interação das pessoas com os dados. Com uma arquitetura de RAG, os modelos podem obter insights e fornecer um LLM com contexto de fontes de dados on-premise e baseadas em nuvem. Isso significa que dados externos, documentos internos e, até mesmo, feeds de redes sociais podem ser usados para responder perguntas, fornecer contexto e informar uma tomada de decisão.

Por exemplo, você pode criar uma arquitetura de RAG que, quando consultada, forneça respostas específicas sobre políticas, procedimentos e documentações da empresa. Isso economiza um tempo que, de outra forma, seria gasto procurando e interpretando um documento manualmente.

Descubra como a RAG é usada na engenharia de software

Pense no ajuste fino como uma maneira de comunicar uma intenção ao LLM para que o modelo adapte os resultados de acordo com os seus objetivos. O ajuste fino é o processo de incrementar um modelo pré-treinado com um conjunto de dados menor e mais direcionado para que ele possa executar tarefas específicas com mais eficiência. Esses dados de treinamento extras são incorporados à arquitetura do modelo.

Vamos voltar ao nosso exemplo do chatbot. Digamos que você queira que seu chatbot interaja com pacientes em um contexto médico. É importante que o modelo conheça a terminologia médica relacionada ao seu trabalho. Usando técnicas de ajuste fino, você garante que quando um paciente perguntar ao chatbot sobre "serviços de fisio", ele entenderá isso como "serviços de fisioterapia" e direcionará o usuário para os recursos certos.

Casos de uso do ajuste fino

A maior utilidade do ajuste fino é treinar seu modelo para interpretar as informações às quais ele tem acesso. Por exemplo, você pode treinar um modelo para compreender as nuances e terminologias específicas do seu setor, como siglas e valores organizacionais.

O ajuste fino também é útil em tarefas de classificação de imagens. Por exemplo, se você trabalhar com ressonância magnética (RM), poderá usar o ajuste fino para treinar seu modelo para identificar anomalias.

O ajuste fino também pode ajudar sua organização a aplicar o tom certo ao se comunicar com as pessoas, especialmente em um contexto de atendimento ao cliente. Esse recurso permite que você treine um chatbot para analisar o sentimento ou emoção da pessoa com quem ele está interagindo. Além disso, você pode treinar o modelo para responder de uma forma que atenda ao usuário e, ao mesmo tempo, esteja alinhada aos valores da sua organização

Compreender as diferenças entre RAG e ajuste fino pode ajudar você a tomar decisões estratégicas sobre qual recurso de IA implantar para atender às suas necessidades. Confira algumas questões básicas que precisam ser analisadas:

Quais são as habilidades da sua equipe?

Personalizar um modelo com RAG requer habilidades de programação e arquitetura. Em comparação com os métodos tradicionais de ajuste fino, a RAG oferece uma maneira mais simples e acessível de coletar feedback, solucionar problemas e corrigir aplicações. O ajuste fino de um modelo requer experiência com PNL (Processamento de Linguagem Natural), deep learning, configuração de modelo, reprocessamento de dados e avaliação. No geral, é um processo mais técnico e demorado.

Seus dados são estáticos ou dinâmicos?

O ajuste fino ensina um modelo a aprender padrões que não mudam com o tempo. Como ele se baseia em snapshots estáticos de conjuntos de dados de treinamento, as informações do modelo podem ficar desatualizadas e exigir um novo treinamento. Por outro lado, a RAG direciona o LLM a recuperar informações específicas em tempo real nas fontes que você escolher. Isso significa que seu modelo extrai os dados mais atualizados para informar sua aplicação, promovendo resultados precisos e relevantes.

Qual é o seu orçamento?

Tradicionalmente, o ajuste fino é uma técnica de deep learning que exige muitos dados e recursos computacionais. Historicamente, para informar um modelo com ajuste fino, você precisa rotular os dados e executar o treinamento em um hardware caro e de última geração. Além disso, o desempenho do modelo ajustado depende da qualidade dos seus dados, e a obtenção de dados de alta qualidade pode ter um custo alto.

Em comparação, a RAG tende a ter um custo-benefício maior do que o ajuste fino. Para configurar a RAG, você desenvolve sistemas de pipeline para conectar seus dados ao seu LLM. Essa conexão direta reduz as despesas com recursos porque usa dados existentes para informar seu LLM em vez de gastar tempo, energia e recursos gerando novos dados. 

As soluções open source e o ecossistema de parceiros de IA da Red Hat podem ajudar você a implementar a RAG e o ajuste fino no seu processo de Large Language Model Operations (LLMOps).

Teste o ajuste fino com o InstructLab

Criado pela Red Hat e a IBM, o InstructLab é um projeto da comunidade open source para contribuir com LLMs usados em aplicações de IA generativa (gen AI). Ele proporciona um framework que usa dados sintéticos para tornar o ajuste fino do LLM mais acessível.

Como os dados sintéticos do InstructLab aprimoram os LLMs

Crie seu próprio modelo de base com o Red Hat Enterprise Linux AI

Quando sua empresa estiver pronta para criar aplicações com gen AI, o Red Hat® Enterprise Linux® AI fornecerá a plataforma de modelo de base necessária para atender aos seus casos de uso de dados com rapidez.

O Red Hat Enterprise Linux AI une a família Granite de LLMs licenciados por open source e ferramentas de alinhamento de modelos do InstructLab em um ambiente de servidor integrado. Isso significa que especialistas sem experiência em ciência de dados podem ajustar e contribuir, com facilidade, para um modelo de IA escalável em toda a nuvem híbrida.

O Red Hat Enterprise Linux AI também conta com os benefícios de uma subscrição da Red Hat, que inclui distribuição confiável de soluções empresariais, suporte à produção em tempo integral, suporte estendido ao ciclo de vida do modelo e as proteções legais do Open Source Assurance.

Escale suas aplicações com o Red Hat OpenShift AI

Depois de treinar seu modelo com o Red Hat Enterprise Linux AI, você poderá escalá-lo para produção usando o Red Hat OpenShift® AI.

O Red Hat OpenShift AI é uma plataforma de operações de machine learning (MLOps) flexível e escalável, com ferramentas para ajudar você a criar, implantar e gerenciar aplicações com IA. Ele fornece a infraestrutura de carga de trabalho subjacente, como um LLM para criar embeddings, (mecanismos de recuperação necessários para produzir resultados) e acesso a um banco de dados vetorial. 

Padrão da solução

Aplicações de IA com a Red Hat e o NVIDIA AI Enterprise

Crie uma aplicação com RAG

O Red Hat OpenShift AI é uma plataforma para criar projetos de ciência de dados e disponibilizar aplicações com IA. Você pode integrar todas as ferramentas para dar suporte à Geração Aumentada de Recuperação (RAG), um método para receber respostas da IA a partir dos seus próprios documentos de referência. Quando você conecta o OpenShift AI ao NVIDIA AI Enterprise, é possível testar large language models (LLMs) para encontrar o melhor modelo para sua aplicação.

Crie um pipeline de documentos

Para usar a RAG, primeiro você precisa ingerir seus documentos em um banco de dados vetorial. Na nossa app de exemplo, inserimos um conjunto de documentos da solução em um banco de dados do Redis. Como esses documentos mudam com frequência, criamos um pipeline para esse processo que executaremos periodicamente. Dessa forma, sempre teremos as versões mais recentes dos documentos.

Confira o catálogo de LLM

O NVIDIA AI Enterprise oferece um acesso a um catálogo de diferentes LLMs para que você tenha opções diversas e selecione o modelo com os melhores resultados. Os modelos são hospedados no catálogo da API da NVIDIA. Depois de configurar um token de API, é possível implantar um modelo usando o NVIDIA NIM que disponibiliza a plataforma diretamente a partir do OpenShift AI.

Como escolher o modelo ideal

Conforme você testa LLMs diferentes, seus usuários podem avaliar cada resposta gerada. Você pode configurar um dashboard de monitoramento do Grafana para comparar as avaliações e o tempo de resposta e latência de cada modelo. Depois, use esses dados para escolher o melhor LLM para a produção.

Ícone "Faça o download do PDF"

Um diagrama de arquitetura mostra uma aplicação criada com o Red Hat OpenShift AI e o NVIDIA AI Enterprise. Os componentes incluem o OpenShift GitOps para conexão com o GitHub e gerenciamento de interações DevOps, o Grafana para monitoramento, o OpenShift AI para ciência de dados, o Redis como um banco de dados vetorial e o Quay como um registro de imagem. Esses componentes todos são direcionados ao front-end e back-end da app. Eles são baseados no Red Hat OpenShift AI, com uma integração ao ai.nvidia.com.
Novo

InstructLab

O InstructLab é um projeto open source para aprimorar os modelos de linguagem de larga escala ou Large Language Models (LLMs).

Leitura recomendada

Artigo

O que é IA generativa?

A inteligência artificial generativa depende de modelos de deep learning treinados em grandes conjuntos de dados para criar novos conteúdos.

Artigo

O que é machine learning?

Machine learning (aprendizado de máquina) é a técnica de treinamento de computadores para encontrar padrões, fazer previsões e aprender com a experiência sem que seja necessário programá-los explicitamente.

Artigo

O que são modelos de base?

Um modelo de base é um tipo de modelo de machine learning (aprendizado de máquina) treinado previamente para realizar diversas tarefas. 

Mais informações sobre inteligência artificial e machine learning

Soluções

Já disponível

Uma plataforma de modelo base usada para desenvolver, testar e executar modelos de linguagem de larga escala (LLMs) da família Granite para aplicações empresariais.

Um portfólio com foco em IA que oferece ferramentas para você treinar, ajustar, disponibilizar, monitorar e gerenciar experimentos e modelos de inteligência artificial e machine learning no Red Hat OpenShift.

Uma plataforma empresarial de aplicações com um conjunto de serviços testados para você implantar apps na infraestrutura que quiser. 

O Red Hat Ansible Lightspeed with IBM watsonx Code Assistant é um serviço de IA generativa criado por e para criadores de automação, operadores e desenvolvedores do Ansible. 

Recursos

ebook

Principais considerações sobre a criação de um ambiente de inteligência artificial e machine learning pronto para produção

Conteúdo de analistas

The Total Economic Impact™ of Red Hat Hybrid Cloud Platform for MLOps

Webinar

Getting the most out of AI with open source and Kubernetes