Ir para o conteúdo
Ir para insights GenAI

GenAI na sua organização: LLMs internos e o poder do RAG

GenAI na sua organização: LLMs internos e o poder do RAG
Escrito por
Data Science Lab
Publicado em
15 de novembro de 2024

Que possibilidades oferecem a GenAI e os Large Language Models (LLMs) para o funcionamento interno de uma organização? Como podemos implementar um LLM de forma eficaz nas organizações? Não apenas como algo «interessante de ter», mas para garantir que a sua utilização permite trabalhar com mais eficiência e eficácia. Ou seja, dar um passo em frente.

Há muitos processos demorados que um LLM pode executar de forma eficiente. Já falámos de utilizar um LLM para a sua gestão do conhecimento. É um bom exemplo de como tornar a sua base de conhecimento acessível à organização de forma eficiente. Neste artigo, eu, Dave Meijdam (Data Scientist), vou mostrar-lhe o valor acrescentado de um LLM interno combinado com RAG para a Fokker.

O caso de estudo da Fokker em destaque

Imagine que um gestor de programa na Fokker procura detalhes específicos de um contrato elaborado há alguns anos. Em vez de percorrer várias pastas e documentos, pode simplesmente fazer uma pergunta ao LLM. Por exemplo: «Quais são as principais condições do contrato com o fornecedor X para o projeto Y?». Com o apoio de RAG, o LLM recupera o documento relevante e apresenta um resumo da informação pedida. Isto não só acelera o processo, como também fornece informação correta e rastreável.

Outro exemplo é o da equipa de apoio ao cliente que precisa de encontrar rapidamente informação sobre as condições de garantia de uma peça específica de avião. Com uma base de conhecimento centralizada e um LLM, a equipa pode fazer perguntas como «Quais são as condições de garantia da peça Z?». Recebe de imediato uma resposta precisa, baseada nos documentos mais recentes e relevantes.

Numa situação ideal, a Fokker teria uma base de conhecimento central onde todos poderiam encontrar respostas a perguntas sobre processos e procedimentos acordados. Esta situação pode ser criada com a implementação de um LLM, combinado com RAG e uma base de conhecimento. Nesta solução, é importante que a organização consiga validar as respostas do LLM. Assim, pode criar confiança e detetar facilmente eventuais erros. Por exemplo, o LLM pode receber instruções para indicar sempre o nome do documento e o número do parágrafo na resposta. A organização também pode ver que passagens de texto são recuperadas pelo sistema RAG. A DSL implementou parte deste sistema na Fokker, com o nome Anthony Chat.


O potencial da Retrieval-Augmented Generation (RAG)

Uma das tecnologias promissoras nesta área é a RAG. A RAG combina um modelo generativo, como um LLM, com um sistema de recuperação de informação. Este sistema procura documentos ou informações relevantes numa base de conhecimento predefinida. Depois, o LLM utiliza essa informação para gerar uma resposta precisa. Assim, as respostas são relevantes para o contexto e factualmente corretas, porque se baseiam na informação mais recente e específica da base de conhecimento.

Uma base de conhecimento é um conjunto organizado de informação que pode ser pesquisado facilmente. Numa organização como a Fokker, inclui documentos jurídicos, contratos, manuais, especificações técnicas e outros documentos empresariais relevantes. Ao centralizar esta informação, os colaboradores podem encontrar rapidamente o que precisam, sem terem de procurar em várias pastas e documentos. Estes documentos são armazenados numa vector store.

Uma vector store é uma base de dados concebida especificamente para armazenar e pesquisar informação textual com base em vetores. Em vez dos métodos de pesquisa tradicionais baseados em palavras-chave, uma vector store utiliza representações numéricas do texto (vetores). Estes vetores são gerados por um modelo de embeddings, que converte cada frase ou documento num vetor de elevada dimensionalidade.

O processo RAG explicado

Eis uma breve explicação do processo RAG:

Criação de embeddings de documentos: Cada documento da base de conhecimento é dividido em partes mais pequenas (chunks). Estes chunks são depois processados por um modelo de embeddings, que os converte em vetores. Os vetores representam o significado semântico do texto, pelo que textos semelhantes ficam próximos uns dos outros no espaço vetorial.

Armazenamento de vetores: Os vetores gerados são armazenados na vector store juntamente com as informações associadas ao documento (metadados).

Pesquisa com vetores: Quando um utilizador faz uma pergunta, o mesmo modelo de embeddings converte-a num vetor. Este vetor da pergunta é então comparado com os vetores da vector store para encontrar os chunks mais relevantes. Estas comparações recorrem frequentemente a técnicas como a similaridade de cosseno, que mede a proximidade entre vetores.

Recuperação de documentos: Os chunks mais relevantes são recuperados e utilizados pelo LLM para gerar uma resposta precisa.

Diagrama de sequência de Retrieval Augmented Generation, do documento à resposta.
Nvidia, 2023

Vantagens dos LLMs internos combinados com uma implementação de RAG e uma vector store como base de conhecimento

A implementação de GenAI, ou seja, de LLMs internos, em combinação com RAG e uma vector store como base de conhecimento pode trazer vantagens significativas para a Fokker:

Precisão e relevância: A pesquisa baseada em vetores permite recuperar os chunks mais relevantes em termos semânticos, mesmo que não contenham exatamente as mesmas palavras-chave da pergunta.

Escalabilidade: Uma vector store consegue lidar facilmente com grandes volumes de dados e fazer pesquisas rapidamente, mesmo numa base de conhecimento muito extensa.

Pesquisas sensíveis ao contexto: Como os vetores representam o conteúdo semântico do texto, o sistema consegue compreender e responder melhor a perguntas complexas e que dependem do contexto.

Melhoria da eficiência: Uma base de conhecimento permite aos colaboradores aceder mais rapidamente à informação de que precisam. Isto reduz o tempo gasto a procurar documentos e melhora a produtividade geral.

Informação precisa: Um LLM que utiliza RAG baseia as respostas na informação mais relevante da knowledge base. Isto reduz a probabilidade de erros e inconsistências na informação fornecida.

Preservação do conhecimento: Centralizar a informação ajuda a preservar o conhecimento dentro da organização, sobretudo quando colaboradores saem ou mudam de função. Isto assegura a continuidade e reduz a dependência do conhecimento de pessoas específicas.

Lições aprendidas & futuro 

Implementar um sistema RAG não está, naturalmente, isento de desafios. Por exemplo, a organização pretendia colocar dezenas de perguntas sobre um documento de uma só vez, para obter rapidamente muita informação específica. A implementação inicial de RAG não respondia bem a esta necessidade: como criava um embedding genérico do input, não conseguia encontrar todos os chunks relevantes para responder a todas as perguntas. Como resultado, o LLM conseguia responder a algumas perguntas, mas não a todas. Para resolver o problema, acrescentámos uma etapa intermédia: quando necessário, o input do utilizador é primeiro dividido em várias perguntas específicas. Em seguida, cada pergunta é respondida individualmente, e todas as respostas são utilizadas como chunks para a resposta final.

Outro desafio é que os contratos podem ser semelhantes, sobretudo quando estão divididos em chunks numa vector store. É absolutamente indesejável que informação de outro cliente seja acidentalmente utilizada como chunk na resposta do LLM. Para evitar que isso aconteça, é essencial atribuir metadata clara aos documentos e aos chunks. Essa metadata pode indicar, por exemplo, a que cliente se referem ou, no caso da Fokker, a que peças de aeronaves dizem especificamente respeito. Para evitar este risco por enquanto, o utilizador tem de selecionar ou carregar manualmente um documento. No futuro, queremos criar uma knowledge base robusta que elimine a necessidade de selecionar manualmente o documento certo e concretize, assim, a situação ideal descrita anteriormente.

Conclusão

A integração de LLMs internos e RAG na Fokker oferece uma solução inovadora para os desafios do armazenamento distribuído de informação. Melhora a eficiência de várias tarefas, assegura informação consistente e rigorosa, apoia uma melhor tomada de decisões e ajuda a preservar o conhecimento dentro da organização. Ao adotar esta tecnologia, a Fokker pode não só simplificar o trabalho diário, mas também reforçar a sua posição competitiva global. Numa altura em que a informação é fundamental para o sucesso, os LLMs internos e RAG dão à Fokker as ferramentas de que precisa para se manter na vanguarda. Também quer estar na vanguarda? Contacte-nos.

Blog

Também poderá ter interesse nisto,

Subscreva a nossa newsletter.

Quer ser a primeira pessoa a saber quando publicamos um novo artigo no blogue?

Introduza um endereço de e-mail válido.