Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

[Projeto] Faça como eu fiz: pipeline de RAG

Durante a implementação, montei uma pipeline RAG completa para consulta de documentos internos de RH. A solução realiza a leitura dos PDFs, extração do texto, divisão em chunks com overlap, enriquecimento com metadados, geração de embeddings e armazenamento em uma VectorStore com ChromaDB.

A versão original do curso utilizava embeddings da OpenAI, porém encontrei limitações de chave/quota durante a execução no Google Colab. Para contornar esse ponto, adaptei a solução utilizando HuggingFaceEmbeddings, mantendo o conceito principal da arquitetura e permitindo a geração dos vetores localmente no ambiente do Colab.

Também foi configurada a recuperação semântica dos chunks mais relevantes, seguida de uma etapa de re-rank com LLM para selecionar os trechos mais pertinentes antes da geração da resposta final. A aplicação com Streamlit foi construída para exibir tanto a resposta quanto os chunks utilizados como base.

Durante os testes, a interface Streamlit apresentou instabilidade ao ser exposta pelo LocalTunnel e pelo proxy do Colab, principalmente no carregamento de arquivos JavaScript internos da própria interface. Por esse motivo, validei a pipeline diretamente no notebook, executando o fluxo principal sem depender da interface web.

Mesmo com essa limitação do ambiente, a arquitetura principal foi concluída: os documentos foram processados, vetorizados, armazenados no ChromaDB, recuperados por similaridade semântica, reordenados com re-rank e utilizados como contexto para geração da resposta.

visual

https://github.com/Moquiuti/Arquiteturas-RAG-com-LLMs-embeddings-busca-sem-ntica-e-cria-o-de-agentes-com-LangChain/blob/main/pipeline_de_RAG.ipynb

Como não cabe todo o código aqui do arquivo .py eu vou por o link dele também à baixo:

https://github.com/Moquiuti/Arquiteturas-RAG-com-LLMs-embeddings-busca-sem-ntica-e-cria-o-de-agentes-com-LangChain/blob/main/app.py

2 respostas

Oi, Leandro! Tudo bem?

Agradeço por compartilhar seus e aprendizados com a comunidade Alura.

Gostei bastante da sua implementação da pipeline RAG completa, ficou bem estruturada e alinhada com o fluxo esperado do curso. Importante como você manteve os conceitos centrais mesmo adaptando para HuggingFaceEmbeddings, mostrando entendimento além da ferramenta específica. A parte de chunking com overlap, metadados e uso do ChromaDB demonstra uma boa preocupação com a qualidade da recuperação.

Outro ponto forte foi a inclusão do re-rank com LLM, que eleva bastante a relevância das respostas. Sobre a instabilidade do Streamlit no Colab, sua decisão de validar diretamente no notebook foi acertada, pois garante a confiabilidade da pipeline independente da interface.

Continue explorando esse tipo de arquitetura, pois isso já te coloca em um nível mais avançado. ✨

Conte com o apoio do Fórum na sua jornada. Abraços e bons estudos!

Como você avalia a qualidade geral das respostas geradas pela sua pipeline até agora? Compartilhe aqui!

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!
solução!

Agradeço o feedback Monalisa.