Chatbot com Arquitetura RAG
Descrição do post.
Assistente Virtual Corporativo com Arquitetura RAG
Foi desenvolvido um chatbot que pode ser utilizado por empresas para consultar informações internas que não estão disponíveis publicamente. A solução é baseado na arquitetura RAG, foi desenvolvida em Python, utilizando Django para a aplicação web e LangChain para orquestrar a pipeline de IA Generativa.
Python | Django | LangChain | RAG


Introdução


Este projeto consiste em um chatbot desenvolvido em Python, utilizando Django como framework web e LangChain para orquestração da pipeline de IA Generativa.
O chatbot utiliza a arquitetura RAG (Retrieval-Augmented Generation), que combina Modelos de Linguagem (LLMs) com uma base de conhecimento externa. Dessa forma, o modelo responde às perguntas utilizando informações presentes em documentos da empresa, reduzindo alucinações e aumentando a precisão das respostas.
Objetivo


Responder perguntas sobre informações internas da organização que não estão disponíveis publicamente, fornecendo respostas precisas e contextualizadas.
Demonstração do Chatbot


Para fins de demonstração, foi criado um conjunto de documentos contendo informações de uma empresa fictícia, utilizado como base de conhecimento do chatbot.
No vídeo abaixo, são apresentadas algumas consultas sobre a empresa fictícia. Ao final, é feita a pergunta "O céu é azul?" para demonstrar que o chatbot responde apenas com base nas informações presentes nos documentos utilizados como contexto.
Também é demonstrado o uso do botão "Salvar Histórico", que permite exportar toda a conversa para um arquivo .txt.

Perguntas apresentadas na demonstração
Qual o nome da empresa?
Quando a TechNova Solutions foi fundada?
Como funciona o processo de atendimento ao cliente?
Qual equipe é responsável pelos pipelines RAG?
Qual é o e-mail do setor Comercial?
Posso usar meu notebook pessoal para acessar informações confidenciais da empresa?
O céu é azul?
Tecnologias utilizadas


Python
Django
LangChain
FAISS
OpenAI Embeddings
Large Language Model (LLM)
Arquitetura da solução


A pipeline do projeto é composta por três etapas principais.


1. Data Ingestion
Nesta etapa, os documentos são preparados para consulta.
O documento é disponibilizado em formato PDF.
O conteúdo é dividido em pequenos trechos (chunking).
Cada trecho é convertido em um vetor numérico (embedding).
Os embeddings são indexados e armazenados em um banco vetorial utilizando FAISS, permitindo buscas rápidas por similaridade.
2. Retrieval
Quando o usuário realiza uma pergunta, ocorre o processo de recuperação das informações mais relevantes.
O usuário envia uma pergunta.
A pergunta é convertida em um embedding.
É realizada uma busca por similaridade no banco vetorial.
São recuperados os k trechos mais semelhantes à pergunta (Top-k Retrieval).
3. Generation
Na etapa final, a resposta é gerada utilizando o contexto recuperado.
Os trechos recuperados são inseridos no prompt (Retrieved Context).
O contexto recuperado e a pergunta do usuário são enviados para a LLM.
A LLM utiliza essas informações para produzir uma resposta fundamentada nos documentos consultados.
Contato
Obrigada pela visita! Fique à vontade para entrar em contato, será um prazer te responder.
Copyright © 2025 - 2026. Catarina Aguiar. Todos os direitos reservados.