paint-brush
Geração Aumentada de Recuperação: Alucinações IA Desaparecidas!por@datastax
1,227 leituras
1,227 leituras

Geração Aumentada de Recuperação: Alucinações IA Desaparecidas!

por DataStax5m2023/08/14
Read on Terminal Reader

Muito longo; Para ler

A Geração Aumentada de Recuperação (RAG) mostra-se promissora no aumento eficiente do conhecimento dos LLMs e na redução do impacto das alucinações de IA.
featured image - Geração Aumentada de Recuperação: Alucinações IA Desaparecidas!
DataStax HackerNoon profile picture
0-item
1-item


No mundo em rápida evolução da IA, grandes modelos de linguagem percorreram um longo caminho, ostentando um conhecimento impressionante do mundo ao nosso redor. Ainda LLMs , por mais inteligentes que sejam, muitas vezes lutam para reconhecer os limites de seu próprio conhecimento, uma deficiência que muitas vezes os leva a “alucinar” para preencher as lacunas. Uma técnica recém-criada, conhecida como geração aumentada de recuperação (RAG), mostra-se promissor no aumento eficiente do conhecimento desses LLMs e na redução do impacto da alucinação, permitindo que os prompts sejam aumentados com dados proprietários.


Navegando na lacuna de conhecimento em LLMs

LLMs são modelos de computador capazes de compreender e gerar texto semelhante ao humano. Eles são a IA por trás do seu assistente digital, da função de autocorreção e até de alguns de seus e-mails. Seu conhecimento do mundo costuma ser imenso, mas não é perfeito. Assim como os humanos, os LLMs podem atingir os limites de seu conhecimento, mas, em vez de parar, tendem a fazer suposições ou “alucinar” para concluir a tarefa. Isso pode levar a resultados que contêm informações imprecisas ou enganosas.


Em um mundo simples, a resposta seria fornecer ao modelo informações proprietárias relevantes no momento exato em que é necessário, exatamente quando a consulta é feita. Mas determinar quais informações são "relevantes" nem sempre é simples e requer uma compreensão do que o LLM foi solicitado a realizar. É aqui que o RAG entra em jogo.


O poder de incorporar modelos e pesquisa de similaridade vetorial

Os modelos de incorporação, no mundo da IA, agem como tradutores. Eles transformam documentos de texto em uma grande lista de números, por meio de um processo conhecido como "codificação de documento". Esta lista representa o "entendimento" interno do LLM sobre o significado do documento. Essa sequência de números é conhecida como vetor: uma representação numérica dos atributos de um dado. Cada ponto de dados é representado como um vetor com muitos valores numéricos, onde cada valor corresponde a uma característica ou atributo específico dos dados.


Embora uma sequência de números possa parecer sem sentido para a pessoa comum, esses números servem como coordenadas em um espaço de alta dimensão. Da mesma forma que latitude e longitude podem descrever uma localização em um espaço físico, essa cadeia de números descreve a localização do texto original no espaço semântico, o espaço de todos os significados possíveis.


Tratar esses números como coordenadas nos permite medir a semelhança de significado entre dois documentos. Essa medida é tomada como a distância entre seus respectivos pontos no espaço semântico. Uma distância menor indicaria uma maior semelhança de significado, enquanto uma distância maior sugere uma disparidade de conteúdo. Conseqüentemente, as informações relevantes para uma consulta podem ser descobertas procurando por documentos "próximos" à consulta no espaço semântico. Esta é a mágica da busca por similaridade vetorial.



A ideia por trás da geração aumentada de recuperação

RAG é uma arquitetura __ de IA generativa que aplica similaridade semântica para descobrir automaticamente informações relevantes para uma consulta.

Em um sistema RAG, seus documentos são armazenados em um banco de dados vetorial (DB). Cada documento é indexado com base em um vetor semântico produzido por um modelo de incorporação para que a localização de documentos próximos a um determinado vetor de consulta possa ser feita rapidamente. Isso significa essencialmente que a cada documento é atribuída uma representação numérica (o vetor), que indica seu significado.



Quando uma consulta chega, o mesmo modelo de incorporação é usado para produzir um vetor semântico para a consulta .



O modelo então recupera documentos semelhantes do banco de dados usando pesquisa vetorial, procurando documentos cujos vetores estejam próximos ao vetor da consulta.



Uma vez recuperados os documentos relevantes, a consulta, juntamente com esses documentos, é utilizada para gerar uma resposta do modelo. Dessa forma, o modelo não precisa depender apenas de seu conhecimento interno, mas pode acessar quaisquer dados que você fornecer no momento certo. O modelo está, portanto, mais bem equipado para fornecer respostas mais precisas e contextualmente adequadas, incorporando dados proprietários armazenados em um banco de dados que oferece pesquisa vetorial como um recurso.


Há um punhado dos chamados “bancos de dados vetoriais” disponíveis, incluindo Data Stax Astra DB , para qual pesquisa de vetores agora está disponível para todos. A principal vantagem de um banco de dados que permite a busca vetorial é a rapidez. Os bancos de dados tradicionais precisam comparar uma consulta a cada item no banco de dados. Por outro lado, a pesquisa vetorial integrada permite uma forma de indexação e inclui algoritmos de pesquisa que aceleram enormemente o processo, tornando possível pesquisar grandes quantidades de dados em uma fração do tempo que levaria em um banco de dados padrão.



O ajuste fino pode ser aplicado ao codificador de consulta e ao gerador de resultados para desempenho otimizado. O ajuste fino é um processo em que os parâmetros do modelo são levemente ajustados para melhor adaptação à tarefa específica em questão.


RAG versus ajuste fino

O ajuste fino oferece muitos benefícios para otimizar LLMs. Mas também tem algumas limitações. Por um lado, não permite a integração dinâmica de dados novos ou proprietários. O conhecimento do modelo permanece estático após o treinamento, levando-o a alucinar quando questionado sobre dados fora de seu conjunto de treinamento. O RAG, por outro lado, recupera e incorpora dinamicamente dados atualizados e proprietários de um banco de dados externo, mitigando o problema de alucinação e fornecendo respostas contextualmente mais precisas. O RAG oferece controle de tempo de consulta sobre exatamente quais informações são fornecidas ao modelo, permitindo que os prompts sejam personalizados para usuários específicos no momento exato em que uma consulta é feita.


O RAG também é computacionalmente mais eficiente e flexível do que o ajuste fino. O ajuste fino requer que todo o modelo seja treinado novamente para cada atualização do conjunto de dados, uma tarefa demorada e com uso intensivo de recursos. Por outro lado, o RAG exige apenas a atualização dos vetores de documentos, permitindo uma gestão mais fácil e eficiente da informação. A abordagem modular do RAG também permite o ajuste fino do mecanismo de recuperação separadamente, permitindo a adaptação a diferentes tarefas ou domínios sem alterar o modelo de linguagem base.


O RAG aumenta o poder e a precisão de grandes modelos de linguagem, tornando-o uma alternativa atraente para o ajuste fino. Na prática, as empresas tendem a usar o RAG com mais frequência do que o ajuste fino.


Mudando o papel dos LLMs com RAG

Integrar RAG em LLMs não apenas melhora a precisão de suas respostas, mas também maximiza seu potencial. O processo permite que os LLMs se concentrem no que eles se destacam em gerar conteúdo de forma inteligente a partir de um prompt. O modelo não é mais a única fonte de informação porque o RAG fornece conhecimento proprietário relevante quando necessário, e o corpus de conhecimento acessível ao modelo pode ser expandido e atualizado sem trabalhos caros de treinamento de modelo.


Em essência, o RAG atua como uma ponte, conectando o LLM a um reservatório de conhecimento que vai além de suas capacidades internas. Como resultado, reduz drasticamente a tendência do LLM de “alucinar” e fornece um modelo mais preciso e eficiente para os usuários.


A DataStax anunciou recentemente a disponibilidade geral do recurso de pesquisa vetorial no Astra DB. Aprenda sobre isso aqui .

Por Ryan Michael, DataStax