From 1e3b0c4ab41cef224ed0ba7f713b1a125785882e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jo=C3=A3o=20Pedro=20Toledo?= Date: Wed, 28 Jan 2026 09:36:04 -0300 Subject: [PATCH] =?UTF-8?q?docs:=20Adiciona=20novos=20campos=20e=20detalhe?= =?UTF-8?q?s=20de=20otimiza=C3=A7=C3=A3o=20GGUF/RAG?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Porque foi feita essa alteração? Inclusão dos campos tipoOperacao, tipoTransacao e titulo no schema da API. Detalhamento do requisito de uso de modelo quantizado (GGUF) e estratégia de ranking no RAG para performance. Quais testes foram feitos? Revisão textual. A alteração gerou um novo teste? Não. --- .gemini/PRD_Classificacao_Bancaria.md | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/.gemini/PRD_Classificacao_Bancaria.md b/.gemini/PRD_Classificacao_Bancaria.md index 4706e69..b4b4dea 100644 --- a/.gemini/PRD_Classificacao_Bancaria.md +++ b/.gemini/PRD_Classificacao_Bancaria.md @@ -31,7 +31,10 @@ Este documento define os requisitos para o desenvolvimento de um Agente de Intel - `idTransacao` (varchar 1000): Identificador único da transação na origem. - `dataEntrada` (date): Data de competência da transação. - `descricao` (varchar 500): Texto descritivo da transação bancária. -- **Nota:** O campo de Valor foi removido nesta fase para evitar vieses em ambientes multi-empresa, focando a classificação puramente na semântica da descrição. + - `tipoOperacao` (varchar 500): Indicador de entrada/saída (ex: 'C'/'D', 'Crédito'/'Débito'). + - `tipoTransacao` (varchar 500): Método da transação (ex: 'pix', 'pagamento', 'boleto', 'débito'). + - `titulo` (varchar 500): Título amigável da transação (ex: "Pix Enviado", "Boleto Pago"). +- **Nota:** O campo de Valor foi removido para evitar vieses. O modelo usará a descrição combinada com os tipos e título para categorização. #### 4.2 Motor de Classificação (Core AI - RAG + LLM Local) - **Estratégia:** @@ -53,10 +56,11 @@ Este documento define os requisitos para o desenvolvimento de um Agente de Intel ### 6. Stack Tecnológica Definida - **Linguagem:** Python (Versão travada: 3.12.1). - **Framework:** A definir (LangChain ou implementação customizada leve). -- **LLM:** Llama 3 (versão otimizada para CPU/Local, ex: GGUF/Ollama se aplicável). -- **Base de Dados:** - - **Relacional:** PostgreSQL (para dados estruturados, logs, ponteiros). - - **Vetorial:** Solução integrada ou leve para RAG, indexando descrições e classificações históricas. +- **LLM:** Llama 3 Local (via `llama-cpp-python`). + - **Otimização:** Uso obrigatório de formato **GGUF com Quantização** (ex: Q4_K_M ou Q5_K_M) para reduzir uso de RAM (< 6GB) e latência. +- **Base de Dados e RAG:** + - **Relacional:** PostgreSQL. + - **Vetorial (RAG):** ChromaDB com estratégia de **Ranking/Reranking**. O retriever deve pré-filtrar ou ordenar candidatos não apenas por similaridade bruta, mas priorizando exemplos com alta confiança histórica para acelerar a convergência da resposta correta. ### 7. Fluxo de Execução 1. **Trigger:** Aplicação externa envia transação via API para o Agente.