Overview
O Sistema de Chatbot Inteligente para o Procon foi
desenvolvido com o objetivo de democratizar o acesso à informação e
reduzir a sobrecarga no atendimento humano. A solução permite que
cidadãos tirem dúvidas sobre seus direitos, prazos, documentação e
procedimentos diretamente pelo WhatsApp, utilizando uma IA treinada com
a base de conhecimento oficial do órgão.
Diferente de chatbots convencionais baseados apenas em palavras-chave,
este sistema utiliza a técnica de RAG (Retrieval-Augmented
Generation) para buscar as perguntas e respostas mais
relevantes no banco de dados, gerando respostas contextuais e precisas.
Além disso, o sistema é totalmente auditável, registrando cada interação
e modificação para garantir transparência e conformidade.
Principais Funcionalidades
-
Chatbot via WhatsApp: Atendimento automático e
humanizado diretamente pelo WhatsApp da população;
-
IA com RAG: Busca inteligente na base de perguntas
oficiais para gerar respostas precisas e contextualizadas;
-
Gestão completa da base de conhecimento: Funcionários
podem cadastrar, editar e revisar perguntas/respostas com controle de
versão;
-
Sistema de moderação e auditoria: Coordenadores
revisam conteúdos sensíveis, com detecção automática de palavras
ofensivas e níveis de gravidade;
-
Notificações em tempo real: Alertas para
coordenadores sobre perguntas pendentes de revisão ou com alta
gravidade;
-
Logs completos de auditoria: Todo o histórico de
criação, edição e revisão fica registrado para possíveis
conferências.
-
Agendamento via WhatsApp: População agenda
atendimentos diretamente pelo chat, sem precisar ligar ou ir até o
balcão;
-
Painel Administrativo em React: Interface moderna e
responsiva para a equipe do Procon gerenciar todo o sistema.
Arquitetura e Tecnologias Utilizadas
O sistema foi projetado com foco em escalabilidade, segurança e
manutenibilidade. A arquitetura é composta por três frentes principais
que se comunicam de forma harmoniosa.
Front-end (Painel Administrativo)
-
React com Vite: Interface moderna, rápida e com
hot-reload para desenvolvimento ágil.
-
TypeScript: Código tipado garantindo maior segurança
e manutenibilidade.
-
Axios: Comunicação eficiente com a API REST do
back-end.
-
Context API + Hooks: Gerenciamento de estado global
(autenticação, notificações, temas).
-
CSS Modules: Estilização escopada e organizada por
componente.
-
Design Responsivo: Interface adaptada para desktop e
tablets, com foco na usabilidade da equipe do Procon.
Back-end Principal (Gestão e API)
-
Node.js + TypeScript: Garantindo tipagem estática e
código mais seguro e escalável.
-
Prisma ORM + PostgreSQL: Modelagem robusta do banco
de dados com suporte a embeddings vectorizados para busca
semântica.
-
JWT + Bcrypt: Autenticação segura com diferentes
níveis de permissão (Funcionário, Coordenador, Diretor, DEV).
-
Sistema de moderação com status: APROVADO,
PENDENTE_REVISAO, REPROVADO e BLOQUEADO, garantindo controle total
sobre o que entra na base de conhecimento.
-
AuditLog completo: Registro de todas as ações
(criação, edição, revisão) com dados anteriores e novos, IP e
user-agent.
Chatbot com RAG e WhatsApp
-
whatsapp-web.js: Integração nativa com WhatsApp para
envio e recebimento de mensagens, incluindo agendamentos.
-
RAG (Retrieval-Augmented Generation): Busca semântica
por similaridade de vetores (embeddings) na tabela de Perguntas,
encontrando as respostas mais relevantes para a dúvida do usuário.
-
Fuse.js: Busca difusa (fuzzy search) como fallback
para perguntas com pequenas variações de texto.
-
Natural (NLP): Biblioteca de processamento de
linguagem natural para melhor compreensão das perguntas dos usuários.
-
Geração de QR Code automático: Para autenticação e
conexão com a conta do WhatsApp Business.
A base de conhecimento é alimentada diretamente pelos funcionários do
Procon através do painel administrativo em React. Lá,
eles podem cadastrar novas perguntas, editar respostas, revisar
conteúdo pendente, acompanhar estatísticas de atendimento e gerenciar
agendamentos. Quando uma dúvida chega pelo WhatsApp, o chatbot utiliza o
RAG para buscar as respostas mais relevantes. Caso a dúvida não seja
encontrada, o sistema encaminha para um atendente humano ou registra
como uma nova pergunta pendente de revisão. Os agendamentos de
atendimento também são feitos diretamente pelo WhatsApp, integrados ao
sistema.
×
--!>
Tecnologias Utilizadas
- HTML
- CSS
- React
- Vite
- TypeScript
- Node.js
- Express
- Prisma
- PostgreSQL
- WhatsApp-Web.js
- RAG
- JWT
- Bcrypt
- Axios
- Context API
- Fuse.js
- Natural (NLP)
- GitHub
- GIT