Agente Frete Mínimo
Samuel Magalhães Marques
0:00 / 0:00
Agente Frete Mínimo
83 просмотра · 13 дней назад
Samuel Magalhães Marques
7 подписчиков
83 просмотра · 13 дней назад
"Agente de Frete Mínimo" "Frete Mínimo ANTT"
📦 Agente de Frete Mínimo ANTT (AgenteFreteMinimo)
Projeto Avaliativo — Curso: IA para Desenvolvedores [T2]
🔗 Repositório GitHub: samuelmarquesgit/AgenteFreteMinimo
🎥 Vídeo de Demonstração: • Agente Frete Mínimo
🎯 1. Visão Geral e Objetivo
O Agente de Frete Mínimo ANTT é um sistema agêntico autônomo baseado em LangGraph projetado para automatizar e auditar o cálculo oficial de frete rodoviário conforme a Resolução ANTT nº 5.867/2020 e a Lei nº 13.703/2018.
Principais Destaques:
Entrada via linguagem natural ou JSON estruturado (Pydantic v2).
Consulta defensiva à calculadora oficial da ANTT com fallback de contingência e TAG (Table-Augmented Generation).
Resiliência com failover multi-LLM (OpenAI ➔ Anthropic ➔ Google ➔ Groq).
Camada de segurança e guardrails (anti-jailbreak, PII/LGPD, rate limit).
Auditoria ponta a ponta com persistência em 8 tabelas relacionais.
Fila assíncrona (Redis + Celery) com DLQ e automação low-code via n8n.
Machine Learning preditivo (LightGBM + SHAP) e observabilidade OpenTelemetry.
100% de cobertura de testes automatizados (linhas e branches).
📋 2. Resumo da Arquitetura e Entregas
Orquestração Agêntica: Grafo cognitivo acíclico (StateGraph no LangGraph) com desvios condicionais e processamento paralelo para combinações veiculares.
Integração de Tools: Captura de CSRF, web scraping (BeautifulSoup) e cache-aside em SQLite local.
Multi-LLM com Failover: Fallback automático entre 4 provedores de IA.
Guardrails & Segurança: Filtros pré/pós-LLM para injeção de prompt, mascaramento de PII e sanitização.
Auditoria & Persistência: Histórico completo de sessões, nós, custos e guardrails via SQLAlchemy (SQLite/PostgreSQL).
Múltiplas Interfaces: Web UI (Streamlit), API REST corporativa (FastAPI) e CLI.
Automação & Notificações: Webhook n8n integrado para fretes críticos (maior que R$ 5.000) via filas Celery/Redis.
CI/CD Robusto: Pipeline no GitHub Actions com 7 jobs (Ruff, Pytest 100% coverage, Gitleaks, Trivy, SonarCloud e análise inteligente de logs).
⚙️ 3. Decisões Arquiteturais Importantes
Por que NÃO usar RAG Vetorial?
O cálculo do piso mínimo é 100% matemático e determinístico. O uso de RAG vetorial geraria risco de aproximação semântica e valores defasados frente às oscilações do diesel S10. A solução adotada foi TAG (Table-Augmented Generation) com scraping em tempo real e matriz de contingência local.
Por que sem aprovação humana (Human-in-the-loop)?
O agente atua exclusivamente em modo de consulta analítica (Read-Only), sem impacto financeiro direto ou escrita em sistemas externos.
🔄 4. Fluxo de Execução Simplificado
Entrada (Chat/API/CLI) ➔ Guardrails (Segurança/PII) ➔ Interpretação (Multi-LLM + Pydantic) ➔ Validação de Parâmetros ➔ Consulta ANTT (TAG / Scraper / Contingência) ➔ Auditoria (8 Tabelas) ➔ Relatório Final ➔ Fila Celery/Redis ➔ n8n (Fretes Críticos)
💻 5. Como Executar Localmente
Bash
1. Configurar ambiente e dependências
python -m venv .venv
source .venv/bin/activate # (.venv\Scripts\activate no Windows)
pip install -r requirements.txt -r requirements-dev.txt
cp env.example .env
2. Executar serviços
streamlit run streamlit_app.py # Interface Web (Porta 8501)
uvicorn api:app --reload --port 8000 # API REST (FastAPI)
streamlit run monitoring/dashboard.py --server.port 8502 # Observabilidade
docker compose up -d redis n8n # Serviços Docker
celery -A agent.tasks.celery_app worker -l info # Worker Celery
3. Testes Automatizados (100% Cobertura)
pytest
#LangGraph #Python #IA #FastAPI #Streamlit #n8n #MachineLearning #ANTT #OpenAI #EngenhariaDeSoftware #AgenteFreteMinimo