Construindo um Sistema de Geração aumentada por Recuperação (RAG)

Construindo um Sistema de Geração aumentada por Recuperação (RAG)

A Retrieval-Augmented Generation (RAG) passou por uma série de avanços nos últimos anos, juntamente com sua crescente popularidade. Na minha palestra no All Things Open (ATO) 2024 em 28 de outubro, abordarei uma série de técnicas necessárias para construir um RAG melhor. Isso inclui chunking, escolhendo um modelo de incorporação e estruturação de metadados.

Considerações para a construção de um sistema RAG

Uma das coisas mais importantes ao construir um sistema RAG é fazê-lo funcionar com o tipo de dados que você precisa. Por exemplo, há muitos tipos de texto — conversacional, documentação, perguntas e respostas, palestras e documentos formais. Você também precisa determinar exatamente o que precisa dos dados: é apenas um despejo de todo o texto, ou você está procurando insights específicos, ou apenas informações de gráficos e tabelas incorporados?

Assim como qualquer outro projeto de dados, você precisa fazer uma análise para determinar quais dados você está usando, como você os ingerirá e quais enriquecimentos e transformações são necessários. Suas decisões incluem custo, tamanho, licença de modelo, tempo para incorporar dados e se eles funcionam com suas especificações de dados.

Uma parte incrivelmente importante do uso de bancos de dados vetoriais e RAG é determinar qual modelo de incorporação usar, de provedores como HuggingFace, OpenAI, Google, Meta, PyTorch, Jina AI, Mistral AI ou Nomic A. Alguns modelos são para incorporações densas, como BAAI/bge-base-en-v1.5, que produz vetores de números de ponto flutuante de 768 dimensões. Existem também modelos de incorporação esparsos que produzem principalmente zeros.

Você também precisa decidir quais ferramentas usar; muitas ferramentas novas tornam a construção do RAG menos manual, como LangChain, LlamaIndex, LangChain4J ou Spring AI. Você também pode usar ferramentas de extração-transformação-carregamento (ETL) de IA, como DataVolo, Cloudera DataFlow, Airbyte, StreamNative UniConn, Apache Spark, Apache Flink, Ray e Fivetran.

Olhando para o futuro da RAG

Além de discutir novos avanços no mundo do RAG, durante minha palestra no ATO, compartilharei alguns exemplos e olharei para o futuro, onde novos modelos, técnicas, bancos de dados de vetores e avanços de IA irão turbinar todo o conceito. Isso inclui:

Fragmentação

Opções de modelo de incorporação

Estruturação de metadados

GráficoRAG

Multilíngue vs. um idioma específico

Recuperação de dados multimodais

Melhoria de consulta

Roteamento de consulta

Indexação hierárquica

Recuperação híbrida RAG

Agente

Auto-reflexão

Roteamento de consulta

Subconsultas

Também compartilharei uma rápida visão geral de um sistema RAG que usa Milvus, um banco de dados de vetores de código aberto, para combinar um sistema de recuperação com um modelo generativo. Ao adicionar contexto inteligente recuperado rapidamente do Milvus ao seu prompt, você pode reduzir as alucinações do LLM, o que é muito importante.

Conteúdo Relacionado

O Rails 8 sempre foi um divisor de águas...
Na era do declínio do império dos Estados Unidos...
Os aplicativos da Web são uma pedra fundamental da...
O mundo da tecnologia tem estado agitado com discussões...
Os desenvolvedores Java enfrentam uma variedade de erros relacionados...
Com várias décadas de experiência, adoro criar aplicativos corporativos...
A escalabilidade é um fator crítico quando se trata...
Ao trabalhar em um projeto de código aberto no...
A Inteligência Artificial (IA) tem se tornado cada vez...
A maioria das organizações enfrenta desafios ao se adaptar...
Quando nós, desenvolvedores, encontramos alguns bugs em nossos logs,...
A cibersegurança é um tópico cada vez mais importante...
A experiência do desenvolvedor (DX) é um tópico cada...
Ao relatar estatísticas resumidas para resultados de testes de...
Explorando as Engrenagens do Kernel Semântico Falei um pouco...
返回網誌

發表留言

請注意,留言須先通過審核才能發佈。