A velocidade de iteração da IA generativa (GenAI) está crescendo exponencialmente. Um resultado é que a janela de contexto – o número de tokens que um modelo de linguagem grande (LLM) pode usar ao mesmo tempo para gerar uma resposta – também está se expandindo rapidamente.
O Google Gemini 1.5 Pro, lançado em fevereiro de 2024, estabeleceu um recorde para a janela de contexto mais longa até o momento: 1 milhão de tokens, equivalente a 1 hora de vídeo ou 700.000 palavras. O excelente desempenho do Gemini no tratamento de contextos longos levou algumas pessoas a proclamar que “a geração aumentada de recuperação (RAG) está morta”. Os LLMs já são recuperadores muito poderosos, disseram eles, então por que perder tempo construindo um recuperador fraco e lidando com questões relacionadas ao RAG, como fragmentação, incorporação e indexação?
A janela de contexto aumentada iniciou um debate: Com estas melhorias, o RAG ainda é necessário? Ou poderá em breve tornar-se obsoleto?
Como funciona o RAG
Os LLMs estão constantemente ultrapassando os limites do que as máquinas podem compreender e alcançar, mas têm sido limitados por questões como a dificuldade de responder com precisão a dados não vistos ou de estar atualizados com as informações mais recentes. Isso deu origem a alucinações, para as quais o RAG foi desenvolvido.
O RAG combina o poder dos LLMs com fontes externas de conhecimento para produzir respostas mais informadas e precisas. Quando uma consulta do usuário é recebida, o sistema RAG processa inicialmente o texto para compreender seu contexto e intenção. Em seguida, ele recupera dados relevantes para a consulta do usuário de uma base de conhecimento e os passa, junto com a consulta, para o LLM como contexto. Em vez de passar toda a base de conhecimento, ele passa apenas os dados relevantes porque os LLMs têm um limite contextual, a quantidade de texto que um modelo pode considerar ou compreender de uma só vez.
Primeiro, a consulta é convertida em incorporações vetoriais usando um modelo de incorporação. Este vetor de incorporação é então comparado com um banco de dados de vetores de documentos, identificando os documentos mais relevantes. Esses documentos relevantes são obtidos e combinados com a consulta original para fornecer um contexto rico para o LLM gerar uma resposta mais precisa. Esta abordagem híbrida permite que o modelo utilize informações atualizadas de fontes externas, permitindo que os LLMs gerem respostas mais informadas e precisas.
Por que janelas de contexto longo podem ser o fim do RAG
O aumento contínuo na janela contextual dos LLMs afetará diretamente a forma como esses modelos ingerem e geram respostas. Ao aumentar a quantidade de texto que os LLMs podem processar de uma só vez, estas janelas contextuais alargadas melhoram a capacidade do modelo de compreender narrativas mais abrangentes e ideias complexas, melhorando a qualidade global e a relevância das respostas geradas. Isto melhora a capacidade dos LLMs de acompanhar textos mais longos, permitindo-lhes compreender um contexto e seus detalhes mais eficazes. Consequentemente, à medida que os LLMs se tornam mais hábeis no tratamento e integração de contextos extensos, a dependência do RAG para melhorar a precisão e a relevância das respostas pode diminuir.
Precisão
O RAG melhora a capacidade do modelo ao fornecer documentos relevantes como um contexto baseado em uma pontuação de similaridade. No entanto, o RAG não se adapta nem aprende com o contexto em tempo real. Em vez disso, recupera documentos que parecem semelhantes à consulta do utilizador, o que pode nem sempre ser o mais contextualmente apropriado, podendo levar a respostas menos precisas.
Por outro lado, ao utilizar a longa janela contextual de um modelo de linguagem, colocando todos os dados dentro dela, o mecanismo de atenção de um LLM pode gerar melhores respostas. O mecanismo de atenção dentro de um modelo de linguagem concentra-se nas diferentes partes do contexto fornecido para gerar uma resposta precisa. Além disso, este mecanismo pode ser ajustado. Ao ajustar o modelo LLM para reduzir perdas, ele fica cada vez melhor, resultando em respostas mais precisas e contextualmente relevantes.
Recuperação de informação
Ao recuperar informações de uma base de conhecimento para aprimorar as respostas do LLM, é sempre difícil encontrar dados completos e relevantes para a janela contextual. Há uma incerteza contínua sobre se os dados recuperados respondem completamente à consulta do usuário. Esta situação pode causar ineficiências e erros se as informações escolhidas não forem suficientes e não se alinharem bem com as reais intenções do usuário ou com o contexto da conversa.
Armazenamento externo
Tradicionalmente, os LLMs não conseguiam lidar com grandes quantidades de informações simultaneamente porque eram limitados na quantidade de contexto que podiam processar. Mas seus recursos recém-aprimorados permitem lidar diretamente com dados extensos, eliminando a necessidade de armazenamento separado por consulta. Isso simplifica a arquitetura, acelera o acesso a bancos de dados externos e aumenta a eficiência da IA.
Por que o RAG permanecerá por aí
Janelas contextuais expandidas em LLMs podem fornecer um modelo com insights mais profundos, mas também trazem desafios como maiores custos computacionais e eficiência. O RAG enfrenta esses desafios recuperando seletivamente apenas as informações mais relevantes, o que ajuda a otimizar o desempenho e a precisão.
RAG complexo persistirá
Não há dúvida de que o RAG simples, onde os dados são agrupados em documentos de tamanho fixo e recuperados com base na similaridade, está desaparecendo. No entanto, os complexos sistemas RAG não apenas persistem, mas também evoluem significativamente.
O RAG complexo inclui uma gama mais ampla de recursos, como reescrita de consultas, limpeza de dados, reflexão, pesquisa vetorial otimizada, pesquisa gráfica, reclassificadores e técnicas de agrupamento mais sofisticadas. Essas melhorias não estão apenas refinando a funcionalidade do RAG, mas também ampliando suas capacidades.
Desempenho além do comprimento do contexto
Embora a expansão da janela contextual nos LLMs para incluir milhões de tokens pareça promissora, as implementações práticas ainda são questionáveis devido a vários fatores, incluindo tempo, eficiência e custo.
Tempo: À medida que o tamanho da janela contextual aumenta, também aumenta a latência nos tempos de resposta. À medida que você expande o tamanho da janela contextual, o LLM leva mais tempo para processar um número maior de tokens, levando a atrasos e aumento da latência. Muitas aplicações LLM exigem respostas rápidas. O atraso adicional no processamento de blocos de texto maiores pode prejudicar significativamente o desempenho do LLM em cenários em tempo real, criando um grande gargalo na implementação de janelas contextuais maiores.
Eficiência: Estudos sugerem que os LLMs alcançam melhores resultados quando fornecem menos documentos e mais relevantes, em vez de grandes volumes de dados não filtrados. Um estudo recente de Stanford descobriu que os LLMs de última geração muitas vezes lutam para extrair informações valiosas de suas extensas janelas de contexto. A dificuldade é particularmente pronunciada quando dados críticos estão enterrados no meio de um grande bloco de texto, fazendo com que os LLMs ignorem detalhes importantes e levando a um processamento de dados ineficiente.
Custo: Expandir o tamanho da janela de contexto em LLMs resulta em custos computacionais mais elevados. O processamento de um número maior de tokens de entrada exige mais recursos, levando ao aumento das despesas operacionais. Por exemplo, em sistemas como ChatGPT, há foco na limitação do número de tokens processados para manter os custos sob controle.
O RAG otimiza cada um desses três fatores diretamente. Ao transmitir apenas documentos semelhantes ou relacionados como contexto (em vez de inserir tudo), os LLMs processam as informações mais rapidamente, o que não apenas reduz a latência, mas também melhora a qualidade das respostas e reduz o custo.
Por que não fazer o ajuste fino
Além de utilizar uma janela contextual maior, outra alternativa ao RAG é o ajuste fino. No entanto, o ajuste fino pode ser caro e complicado. É um desafio atualizar um LLM sempre que novas informações chegam para garantir que esteja atualizado. Outros problemas com o ajuste fino incluem:
Limitações de dados de treinamento: Não importa os avanços feitos nos LLMs, sempre haverá contextos que estavam indisponíveis no momento da formação ou não foram considerados relevantes.
Recursos computacionais: Para ajustar um LLM em seu conjunto de dados e adaptá-lo para tarefas específicas, você precisa de muitos recursos computacionais.
Experiência necessária: Desenvolver e manter IA de ponta não é para os fracos de coração. Você precisa de habilidades e conhecimentos especializados que podem ser difíceis de obter.
Questões adicionais incluem a coleta de dados, a garantia de que a qualidade é boa o suficiente e a implantação do modelo.
Comparando RAG vs. Janelas de ajuste fino ou de contexto longo
Abaixo está uma visão geral comparativa do RAG e das técnicas de ajuste fino ou janela de contexto longa (como as duas últimas têm características semelhantes, combinei-as neste gráfico). Ele destaca aspectos importantes como custo, prazos de dados e escalabilidade.
Otimizando Sistemas RAG com Bancos de Dados de Vetores
LLMs de última geração podem processar milhões de tokens simultaneamente, mas a complexidade e a evolução constante das estruturas de dados tornam um desafio para os LLMs gerenciar dados corporativos heterogêneos de maneira eficaz. O RAG aborda esses desafios, embora a precisão da recuperação continue sendo um grande gargalo para o desempenho de ponta a ponta. Quer se trate da grande janela de contexto dos LLMs ou do RAG, o objetivo é fazer o melhor uso do big data e garantir a alta eficiência do processamento de dados em grande escala.
A integração de LLMs com big data usando bancos de dados vetoriais SQL avançados, como MyScaleDB, aumenta a eficácia dos LLMs e facilita uma melhor extração de inteligência de big data. Além disso, atenua a alucinação do modelo, oferece transparência de dados e melhora a confiabilidade. MyScaleDB, um banco de dados vetorial SQL de código aberto construído no ClickHouse, é adaptado para grandes aplicações AI/RAG. Aproveitando o ClickHouse como base e apresentando o algoritmo proprietário MSTG, o MyScaleDB demonstra desempenho superior no gerenciamento de dados em grande escala em comparação com outros bancos de dados vetoriais.
A tecnologia LLM está mudando o mundo e a importância da memória de longo prazo persistirá. Os desenvolvedores de aplicações de IA estão sempre buscando o equilíbrio perfeito entre qualidade e custo da consulta. Quando as grandes empresas colocam IA generativa em produção, elas precisam controlar os custos e, ao mesmo tempo, manter a melhor qualidade de resposta. Os bancos de dados RAG e vetoriais continuam sendo ferramentas importantes para atingir esse objetivo.
Você está convidado a mergulhar no MyScaleDB no GitHub ou discutir mais sobre LLMs ou RAG em nosso Discord.
YOUTUBE.COM/THENEWSTACK
A tecnologia avança rápido, não perca um episódio. Inscreva-se em nosso canal no YouTube para transmitir todos os nossos podcasts, entrevistas, demonstrações e muito mais.
SE INSCREVER
Usama Jamil, defensor do desenvolvedor na MyScale, traz consigo uma vasta experiência e um profundo interesse em ciência de dados. Com paixão por explorar novas tendências no domínio de IA/ML, Usama se esforça para tornar conceitos complexos acessíveis a…
Este site utiliza cookies para melhorar sua experiência de navegação. Ao continuar, você concorda com o uso de cookies. Para mais informações, consulte nossa Política de Privacidade.
Funcional
Sempre ativo
O armazenamento ou acesso técnico é estritamente necessário para a finalidade legítima de permitir a utilização de um serviço específico explicitamente solicitado pelo assinante ou utilizador, ou com a finalidade exclusiva de efetuar a transmissão de uma comunicação através de uma rede de comunicações eletrónicas.
Preferências
O armazenamento ou acesso técnico é necessário para o propósito legítimo de armazenar preferências que não são solicitadas pelo assinante ou usuário.
Estatísticas
O armazenamento ou acesso técnico que é usado exclusivamente para fins estatísticos.O armazenamento técnico ou acesso que é usado exclusivamente para fins estatísticos anônimos. Sem uma intimação, conformidade voluntária por parte de seu provedor de serviços de Internet ou registros adicionais de terceiros, as informações armazenadas ou recuperadas apenas para esse fim geralmente não podem ser usadas para identificá-lo.
Marketing
O armazenamento ou acesso técnico é necessário para criar perfis de usuário para enviar publicidade ou para rastrear o usuário em um site ou em vários sites para fins de marketing semelhantes.