4.4 KiB
4.4 KiB
TODO - Projeto Arthur (Agente de Suporte Técnico N2)
Este documento serve como o roteiro técnico detalhado para a implementação do Agente Arthur. O foco é soberania (local-only), otimização de CPU e integração auditável via e-mail.
Fase 1: Planejamento e Arquitetura de Dados ✅
- Consolidação do PRD N2: Definição de escopo, hardware e lógica de atendimento.
- Mapeamento do Tenant Resolver (Financeiro):
- MockFinancialClient implementado em
src/clients/mock_financial.py - Esquema Pydantic
TenantContextemsrc/models/tenant.py
- MockFinancialClient implementado em
- Design do Schema de Auditoria:
- Modelo
AuditLogemsrc/models/audit.py(PostgreSQL) - Migrations em
src/database/migrations.py
- Modelo
- Mapeamento de Segredos:
SecretsManageremsrc/security/secrets_manager.py- Suporte a Docker Secrets + variáveis de ambiente
Fase 2: Infraestrutura e Conectores Core ✅
- Ambiente de Inferência Local:
OllamaClientemsrc/clients/ollama_client.py- Suporte a Llama 3.2 1B (Triagem) e Llama 3.1 8B (Especialista)
- Configuração do Qdrant Multitenant:
QdrantMultitenantemsrc/clients/qdrant_client.py- Persistência
on_disk: true+ filtro portenant_id
- Conector Zabbix API:
ZabbixConnectoremsrc/clients/zabbix_connector.py- Funções:
get_host_status,get_active_problems,get_neighbor_alerts
- Segurança de Infraestrutura:
- Docker Secrets configurado
DLPFilteremsrc/security/dlp_filter.py(redação de CPF/CNPJ/senhas)
- Módulo de Comunicação (Mail Client):
- ⏳ Aguardando senha do email
arthur.servicedesk@itguys.com.br
- ⏳ Aguardando senha do email
Fase 3: Orquestração e Raciocínio (Cérebro) 🔄
- Implementação do Agente de Triagem (1B):
TriageAgentemsrc/agents/triage_agent.py- Prompt Engineering para extração de entidades + fallback regex
- Classificação de prioridade/categoria
- Implementação do Agente Especialista (8B):
SpecialistAgentemsrc/agents/specialist_agent.py- Coleta de contexto Zabbix + RAG
- Geração de diagnóstico e resposta
- Pipeline de Processamento:
TicketPipelineemsrc/agents/pipeline.py- Orquestração triage → specialist → audit
- Desenvolvimento do Multi-Agent Dispatcher:
- Criar o orquestrador (LangGraph) que gerencia o estado do chamado.
- Incluir lógica de
RateLimiterpor Tenant na entrada do Dispatcher (Fila de Prioridade/Descarte).
- Desenvolvimento do Analista de Causa Raiz:
- Código Python para comparar alertas do host atual com alertas de sub-rede/vizinhança no Zabbix.
- Camada de Validação e Segurança (Self-Correction):
- Implementar Schemas Pydantic rigorosos para todas as saídas de ferramentas.
- Criar nó de "Crítico/Reflexão" no LangGraph para validar a existência de hosts/serviços antes de sugerir ações.
- Adicionar asserções de segurança (Defensive Programming) para bloquear ações em domínios não permitidos.
Fase 4: Flywheel e Qualidade (Aprendizado)
- Pipeline de Ingestão de RAG:
- Criar script para processar diretórios de Markdowns/PDFs técnicos e indexar no Qdrant com metadados de tecnologia.
- Segurança: Implementar passo de sanitização onde anexos rodam em sandbox e apenas texto puro é extraído.
- Parser de Feedback de Encerramento:
- Desenvolver lógica para ler respostas de e-mail dos técnicos e identificar se o caso foi "Resolvido" ou "Reaberto".
- Módulo de Memória Episódica:
- Lógica para salvar casos resolvidos como "Lições Aprendidas" para futuras consultas similares.
Fase 5: Implantação e Monitoramento
- Configuração do Langfuse Local:
- Subir Langfuse via Docker para rastreamento (tracing) de todos os chamados.
- Teste de Stress e Latência:
- Validar tempo de resposta com 5+ chamados simultâneos (Contenção de CPU Xeon).
- Homologação com Sistema Financeiro:
- Validar a busca dinâmica de clientes em tempo real.
Diretrizes para Agentes de Execução:
- CPU Only: Nunca tente usar bibliotecas que exijam CUDA/GPU sem autorização expressa.
- Auditabilidade: Toda decisão do Arthur deve gerar um log no PostgreSQL.
- Isolamento: Garanta que os dados da ENSEG nunca vazem para um diagnóstico da OESTEPAN via filtros de Payload no Qdrant.