Consumer Law RAG
Assistente de atendimento com RAG hierárquico que detecta quando a política de uma loja contradiz o Código de Defesa do Consumidor e avisa o cliente do que a lei garante.

- Node.js
- RAG
- ChromaDB
- OpenAI Embeddings
- Claude
- Gemini
- Docker
O projeto
Um chat de atendimento pré-venda que responde dúvidas de consumidores a partir de três fontes organizadas em hierarquia de autoridade: o Código de Defesa do Consumidor, o termo de compra da loja e o FAQ da loja.
Quando a política da loja contradiz o CDC, o assistente sinaliza a divergência na resposta e informa o que a lei garante. No exemplo do projeto, uma loja fictícia proíbe devolução por arrependimento, e o sistema responde citando o Art. 49 do CDC.
Decisões de design
- Coleções separadas por fonte no ChromaDB, para que o CDC nunca perca espaço no contexto para um trecho de FAQ semanticamente mais próximo da pergunta.
- Padrão Adapter para embeddings e LLM: trocar de provedor (Claude ou Gemini) é uma variável de ambiente.
- Detecção de divergência delegada ao modelo via system prompt, em vez de regras que falhariam com a variação da linguagem natural.
- Chunker que respeita parágrafos, com overlap de 200 caracteres, para não cortar artigos de lei ao meio.
Limitações conhecidas
- Cada pergunta é tratada de forma independente, sem memória de conversa.
- O retrieval traz os 6 trechos mais similares por fonte, então perguntas sobre artigos muito específicos podem não recuperar o trecho exato.