Agente de IA para Detecção de Anomalias em Dados de Crédito

02 de December de 2025 • Tempo de leitura: 5 min

Como criar um agente de IA que identifica anomalias em dados de crédito, sugerindo ações corretivas para mitigar riscos.

1. Propósito e Escopo

Este documento define todos os prompts, configurações de memória, transição entre estados e demais requisitos funcionais para um agente de IA que identifica anomalias em dados de crédito e sugere ações corretivas para mitigar riscos. Essa documentação é um modelo de PRD ou Documento de Requisitos de Produto específicos para construção de Agentes de IA.

O objetivo principal é monitorar continuamente os dados de crédito, identificar anomalias e sugerir ações corretivas baseadas nas anomalias detectadas, utilizando inteligência artificial para melhorar a precisão e eficiência na detecção de anomalias.

2. Contexto e Problema

O setor financeiro enfrenta desafios significativos relacionados à identificação rápida de anomalias em dados de crédito, o que é crucial para a mitigação de riscos associados.

  • Identificação de anomalias e padrões incomuns em dados de crédito.
  • Necessidade de ações corretivas rápidas para mitigar riscos associados.

A detecção de anomalias nos dados de crédito é atualmente um processo manual, que consome tempo e recursos, e está sujeito a erros humanos.

3. Impactos Esperados

A implementação deste agente de IA visa alcançar os seguintes resultados:

  • Reduzir o tempo de detecção de anomalias em dados de crédito.
  • Aumentar a precisão na identificação de anomalias.
  • Propor ações corretivas de forma automatizada e eficiente.
  • Mitigar riscos associados a dados de crédito de forma proativa.

4. Visão Geral da Solução

O agente de IA para detecção de anomalias em dados de crédito processa dados estruturados, identifica padrões incomuns e sugere ações corretivas para mitigar riscos. A seguir são detalhadas todas as regras de negócio e especificações funcionais necessárias para que esse agente atue como um assistente útil e autônomo na gestão de dados de crédito.

A solução consiste em um fluxo de automação composto por 5 agentes de IA. O processo inicia com a padronização e validação dos dados de crédito e termina com a consolidação de um relatório final para consumo por sistemas externos.

A execução dos agentes é sequencial e linear, seguindo a ordem definida na tabela abaixo.

Agentes Função Principal
Agente de Padronização e Validação de Dados de Crédito (RF 1) Receber dados de crédito, validar integridade e padronizar para análise de anomalias.
Agente de Detecção de Anomalias em Dados de Crédito (RF 2) Identificar anomalias pontuais, contextuais e sequenciais no dataset canônico de crédito.
Agente de Classificação de Risco e Priorização (RF 3) Enriquecer anomalias com categoria de risco de negócio, severidade e prioridade de atendimento.
Agente de Recomendações de Ações Corretivas (RF 4) Sugerir ações corretivas específicas e acionáveis para cada anomalia priorizada.
Agente de Consolidação e Relatório Final (RF 5) Consolidar resultados dos agentes anteriores em um único relatório JSON padronizado.

5. Protótipos

Para proporcionar uma visão clara e tangível da solução proposta, criamos protótipos interativos que demonstram tanto o fluxo de trabalho dos agentes quanto o resultado final que o cliente receberá. Explore os links abaixo para entender melhor a solução em ação.

6. Requisitos Funcionais

RF 1. Agente de Padronização e Validação de Dados de Crédito

1.1 Tarefa do Agente

Receber dados de crédito em CSV ou JSON, validar integridade e consistência, padronizar nomes e tipos de campos, e produzir dataset canônico para análise de anomalias.

1.2 Prompt ou Instruções do Agente
 # 1. Contexto e explicações sobre inputs iniciais
Você está recebendo dados de crédito que precisam ser padronizados e validados. Esses dados são essenciais para a identificação de anomalias e a mitigação de riscos.

# 2. Objetivo
Validar a integridade e consistência dos dados de crédito, padronizar nomes e tipos de campos e produzir um dataset canônico para análise de anomalias.

# 3. Regras que você deve seguir para gerar sua resposta
- Aceite apenas CSV/JSON UTF-8. Rejeite linhas com todos os identificadores ausentes (customer_id e account_id e operation_id).
- Normalização de nomes: mapeie aliases para canônicos: client_id→customer_id; acct_id→account_id; op_id→operation_id; bal→outstanding_balance; limit→credit_limit; dpp/dpd→days_past_due; app_score→application_score; beh_score→behavioral_score.
- Tipos canônicos: ids como string; valores monetários como número decimal com 2 casas; datas em YYYY-MM-DD; taxas como número decimal em percentual ao ano (interest_rate_aa); status e product_type como string.
- Coerção de tipos: se falhar a conversão, registre em type_coercions e defina como null.
- Deduplicação: remova duplicatas exatas por (operation_id) se existir; caso ausente, use chave composta (customer_id, account_id, snapshot_date, product_type) mantendo a última ocorrência; reporte duplicates_removed.
- Regras de datas: snapshot_date obrigatório; se ausente mas houver opened_date e um carimbo consistente no arquivo, use esse carimbo; se múltiplas datas conflitantes, mantenha null e registre em dropped_rows_reasons se inviabilizar cálculo.
- Moeda: se currency ausente, assuma 'BRL' e registre como imputação.
- Cálculos derivados: adicione fields: credit_utilization = (outstanding_balance / credit_limit) se credit_limit>0; dti = (monthly_expenses + installment_amount) / max(income,1); payment_to_income = installment_amount / max(income,1); credit_age_months = meses entre snapshot_date e opened_date; dpd_bucket ∈ {0,1-30,31-60,61-90,>90}.
- Regras de consistência de negócio: outstanding_balance >= 0; credit_limit >= 0; if outstanding_balance=0 então dpd_bucket deve ser 0; se credit_limit=0 e outstanding_balance>0, marque inconsistency_flag.
- Eliminação de linhas: descarte registros sem snapshot_date ou sem (customer_id e account_id) ao mesmo tempo; contabilize em dropped_rows_reasons.
- Saída deve incluir canonical_schema descrevendo cada campo {name, type, description} e field_mapping com origem→canônico. 
1.3 Configurações do Agente

1.3.1 Especificação do Input

  • Mecanismo de Acionamento: Este agente é o ponto de partida do fluxo e deve ser acionado pelo envio de dados de crédito em formato CSV ou JSON via API. Na fase de testes, os dados serão enviados pelo agente diretamente por upload na interface da Prototipe AI, para acelerar o processo de validação.
  • Tipo do input: Dataset de operações de crédito em CSV ou JSON.
  • Formatos Suportados: Esse agente deve ser capaz de receber dados nos formatos: .csv, .json.
  • Número de caracteres esperado: Este agente deve ter capacidade para processar um input de até 100.000 caracteres.

1.3.2 Especificação do Output

  • Formato de output: O output deve ser um JSON com a estrutura padronizada contendo canonical_schema, standardized_records[], validation_summary e feature_derivations_applied[].
  • Exemplo de Estrutura de Output:
     {
      "canonical_schema": {...},
      "standardized_records": [...],
      "validation_summary": {...},
      "feature_derivations_applied": [...]
    } 
  • Número de caracteres esperado: O JSON final será denso, com um tamanho mínimo esperado de 10.000 caracteres.

1.3.3 Parâmetros de Geração

  • Modelo: GPT-5
  • Temperatura: 0.6

1.3.4 Ferramentas do Agente

  • Documentos: Não consulta documentos externos.
  • Calculadora: Utiliza lógica interna para cálculos derivados.
  • Busca Online: Não utiliza.
  • Sistemas Externos: Não se conecta a sistemas externos.

1.3.5 Memória

1.3.6 Regras de Orquestração e Transição

Ao concluir sua execução, esse agente aciona o Agente de Detecção de Anomalias em Dados de Crédito (RF 2).

RF 2. Agente de Detecção de Anomalias em Dados de Crédito

2.1 Tarefa do Agente

Identificar anomalias pontuais, contextuais e sequenciais no dataset canônico de crédito.

2.2 Prompt ou Instruções do Agente
 # 1. Contexto e explicações sobre inputs iniciais
Você está recebendo um JSON padronizado contendo registros de crédito e validações aplicadas.

# 2. Objetivo
Identificar anomalias pontuais, contextuais e sequenciais no dataset canônico de crédito.

# 3. Regras que você deve seguir para gerar sua resposta
- Classifique como anomalia por regra de negócio quando qualquer uma ocorrer: (a) credit_utilization > 1.2; (b) outstanding_balance > credit_limit com diferença > 50; (c) negative monetary values (principal_amount, outstanding_balance, installment_amount) < 0; (d) days_past_due < 0; (e) status='current' com dpd_bucket != 0; (f) installment_amount > outstanding_balance + 1% (exceto quitação); (g) account fechada (closed_date != null e closed_date < snapshot_date) com outstanding_balance > 0.
- Detecção estatística univariada: para variáveis monetárias e taxas [principal_amount, outstanding_balance, credit_limit, installment_amount, interest_rate_aa, credit_utilization, dti, payment_to_income], compute median e IQR e sinalize outliers fortes se valor < Q1 - 3*IQR ou > Q3 + 3*IQR. Registre percentis e IQR no context.
- Detecção contextual por pares (peer groups): defina peer_window por product_type e region (quando disponível). Um valor é anômalo se |observed - peer_median| / max(peer_mad, epsilon) > 6, registrando rationale com peer_median e MAD aproximada.
- Sequências: se dpd_bucket piora por >1 nível em 7 dias sem variação de saldo compatível (Δoutstanding_balance < 5%), marque como comportamento_atipico.
- Inconsistências temporais: credit_limit reduzido >50% em relação ao mês anterior com status='current' e sem variação de renda/income conhecida, marque como erro_dado ou risco_credito com rationale apropriada.
- Atribua score_0_1: 0.9 para violação de regra crítica (a, b, c, e, g); 0.7 para estatística extrema (IQR) e contextual; 0.5 para anomalias moderadas.
- Preencha suggested_label: erro_dado para incompatibilidades lógicas; risco_credito para deterioração de capacidade de pagamento (utilização alta, DPD crescente); risco_fraude para padrões incompatíveis múltiplos no mesmo snapshot; comportamento_atipico para saltos contextuais.
- Não remova ou altera dados de entrada; apenas emite anomalies[]. Cada anomaly deve referenciar pelo menos um identificador (operation_id quando existir). 
2.3 Configurações do Agente

2.3.1 Especificação do Input

  • Mecanismo de Acionamento: Este agente deve ser acionado automaticamente após a conclusão bem-sucedida do agente anterior (RF 1).
  • Tipo do input: Este agente deve ser apto a receber um JSON padronizado contendo standardized_records[], feature_derivations_applied[], validation_summary.
  • Formatos Suportados: Esse agente deve ser capaz de receber inputs no formato: .json.
  • Número de caracteres esperado: Este agente deve ter capacidade para processar um input de até 15.000 caracteres.

2.3.2 Especificação do Output

  • Formato de output: O output deve ser um JSON contendo anomalies[], detection_summary com total_examined, total_anomalies, by_rule{}, timestamp.
  • Exemplo de Estrutura de Output:
     {
      "anomalies": [...],
      "detection_summary": {...}
    } 
  • Número de caracteres esperado: O JSON final será denso, com um tamanho mínimo esperado de 10.000 caracteres.

2.3.3 Parâmetros de Geração

  • Modelo: GPT-5
  • Temperatura: 0.6

2.3.4 Ferramentas do Agente

  • Documentos: Não consulta.
  • Calculadora: Utiliza lógica interna para cálculo de medianas e IQR.
  • Busca Online: Não utiliza.
  • Sistemas Externos: Não utiliza.

2.3.5 Memória

2.3.6 Regras de Orquestração e Transição

Ao concluir sua execução, esse agente aciona o Agente de Classificação de Risco e Priorização (RF 3).

RF 3. Agente de Classificação de Risco e Priorização

3.1 Tarefa do Agente

Enriquecer anomalias com categoria de risco de negócio, severidade e prioridade de atendimento.

3.2 Prompt ou Instruções do Agente
 # 1. Contexto e explicações sobre inputs iniciais
Você está recebendo um JSON de anomalies do agente de detecção.

# 2. Objetivo
Enriquecer anomalias com categoria de risco de negócio, severidade e prioridade de atendimento.

# 3. Regras que você deve seguir para gerar sua resposta
- Mapeie suggested_label para risk_category: risco_credito→credito; risco_fraude→fraude; erro_dado→dados; comportamento_atipico→operacional.
- Cálculo do risk_score_0_100: base = score_0_1*100; aplique bônus: +10 se dpd_bucket ∈ {61-90, >90}; +8 se credit_utilization > 1.2; +6 se inconsistências múltiplas (>2) no mesmo registro; limite em 100.
- Severity: critica se risk_score>=85; alta 70-84; media 40-69; baixa <40.
- SLA: critica=4h; alta=24h; media=72h; baixa=168h.
- Owner_group: dados→DataQuality; fraude→FraudOps; credito→CreditRisk; operacional→Operations.
- priority_rank: ordenar por risk_score desc, em caso de empate, priorizar maior dpd_bucket e depois maior outstanding_balance.
- Não altere anomaly_id; sempre carregue metadados de origem. 
3.3 Configurações do Agente

3.3.1 Especificação do Input

  • Mecanismo de Acionamento: Este agente deve ser acionado automaticamente após a conclusão bem-sucedida do agente anterior (RF 2).
  • Tipo do input: Este agente deve ser apto a receber um JSON contendo anomalies do agente de detecção.
  • Formatos Suportados: Esse agente deve ser capaz de receber inputs no formato: .json.
  • Número de caracteres esperado: Este agente deve ter capacidade para processar um input de até 12.000 caracteres.

3.3.2 Especificação do Output

  • Formato de output: O output deve ser um JSON contendo enriched_anomalies[], prioritization_summary com counts_by_category{}, avg_score, timestamp.
  • Exemplo de Estrutura de Output:
     {
      "enriched_anomalies": [...],
      "prioritization_summary": {...}
    } 
  • Número de caracteres esperado: O JSON final será denso, com um tamanho mínimo esperado de 8.000 caracteres.

3.3.3 Parâmetros de Geração

  • Modelo: GPT-5
  • Temperatura: 0.6

3.3.4 Ferramentas do Agente

  • Documentos: Não consulta.
  • Calculadora: Utiliza lógica interna para cálculos de risk_score e SLA.
  • Busca Online: Não utiliza.
  • Sistemas Externos: Não utiliza.

3.3.5 Memória

3.3.6 Regras de Orquestração e Transição

Ao concluir sua execução, esse agente aciona o Agente de Recomendações de Ações Corretivas (RF 4).

RF 4. Agente de Recomendações de Ações Corretivas

4.1 Tarefa do Agente

Sugerir ações corretivas específicas e acionáveis para cada anomalia priorizada, visando mitigação de risco.

4.2 Prompt ou Instruções do Agente
 # 1. Contexto e explicações sobre inputs iniciais
Você está recebendo um JSON de enriched_anomalies com informações de risk_category, severity, risk_score, dpd_bucket (se existir) e variáveis relevantes.

# 2. Objetivo
Sugerir ações corretivas específicas e acionáveis para cada anomalia priorizada, visando mitigação de risco.

# 3. Regras que você deve seguir para gerar sua resposta
- Para risk_category=credito: se credit_utilization>1.2 e income disponível, recomendar 'Revisão de limite e renegociação' com steps: (1) avaliar renda e DTI; (2) propor ajuste de limite ou parcelamento; (3) agendar contato proativo. expected_impact_basis_points: 30–120 conforme severity; requires_human_approval=true.
- Para dpd_bucket>=31-60: recomendar 'Contato de cobrança estruturado' com roteiro e política de oferta de acordo compatível com severidade; requires_human_approval=false se severity>=alta.
- Para risk_category=fraude: ações 'Bloqueio preventivo de conta/cartão' e 'Verificação de identidade reforçada'; prerequisites: verificar múltiplas inconsistências; requires_human_approval=true; effort=medio.
- Para risk_category=dados: ação 'Correção de registro' com steps: (1) comparar com fonte contratual interna; (2) ajustar campo inconsistente; (3) reprocessar métricas; expected_impact_basis_points: 0 (impacto operacional); requires_human_approval=false.
- Para risk_category=operacional com saltos contextuais: ação 'Observação e monitoramento reforçado por 30 dias' e 'Contato preventivo' se risk_score>=70.
- Defina effort: baixo (1–2 steps simples), medio (3–5 steps), alto (>5 steps).
- Agrupe ações por owner_group: DataQuality, FraudOps, CreditRisk, Operations conforme enriched_anomalies.
- Não sugerir ações que impliquem treino de modelos ou mudanças sistêmicas; focar em procedimentos de negócio e correções de dados. 
4.3 Configurações do Agente

4.3.1 Especificação do Input

  • Mecanismo de Acionamento: Este agente deve ser acionado automaticamente após a conclusão bem-sucedida do agente anterior (RF 3).
  • Tipo do input: Este agente deve ser apto a receber um JSON de enriched_anomalies com informações de risk_category, severity, risk_score, dpd_bucket (se existir) e variáveis relevantes.
  • Formatos Suportados: Esse agente deve ser capaz de receber inputs no formato: .json.
  • Número de caracteres esperado: Este agente deve ter capacidade para processar um input de até 10.000 caracteres.

4.3.2 Especificação do Output

  • Formato de output: O output deve ser um JSON contendo remediation_plan[], guidance_summary com total_items, by_owner_group{}, generated_at.
  • Exemplo de Estrutura de Output:
     {
      "remediation_plan": [...],
      "guidance_summary": {...}
    } 
  • Número de caracteres esperado: O JSON final será denso, com um tamanho mínimo esperado de 8.000 caracteres.

4.3.3 Parâmetros de Geração

  • Modelo: GPT-5
  • Temperatura: 0.6

4.3.4 Ferramentas do Agente

  • Documentos: Não consulta.
  • Calculadora: Utiliza lógica interna para cálculo de impacto esperado.
  • Busca Online: Não utiliza.
  • Sistemas Externos: Não utiliza.

4.3.5 Memória

  • Visibilidade das Instruções (Prompt): As instruções deste agente não devem ser visíveis para nenhum agente subsequente.
  • Visibilidade da Resposta: A resposta gerada por este agente deve ser visível para o Agente de Consolidação e Relatório Final (RF 5).

4.3.6 Regras de Orquestração e Transição

Ao concluir sua execução, esse agente aciona o Agente de Consolidação e Relatório Final (RF 5).

RF 5. Agente de Consolidação e Relatório Final

5.1 Tarefa do Agente

Consolidar resultados dos agentes anteriores em um único relatório JSON padronizado e pronto para consumo por sistemas externos.

5.2 Prompt ou Instruções do Agente
 # 1. Contexto e explicações sobre inputs iniciais
Você está recebendo as saídas dos agentes: validation_summary, anomalies, enriched_anomalies e remediation_plan.

# 2. Objetivo
Consolidar resultados dos agentes anteriores em um único relatório JSON padronizado e pronto para consumo por sistemas externos.

# 3. Regras que você deve seguir para gerar sua resposta
- Inclua generated_at em ISO 8601 UTC.
- dataset_window: derive de date_range_detected do agente de padronização.
- total_records_in e total_records_out vêm do validation_summary.
- Garanta que todos os anomaly_id presentes em enriched_anomalies estejam em anomalies; reporte discrepâncias se houver.
- Valide que cada enriched_anomaly possua ao menos uma ação no remediation_plan; se ausente, marque em um campo missing_actions[].
- Não modifique conteúdos analíticos; apenas consolide e valide integridade referencial. 
5.3 Configurações do Agente

5.3.1 Especificação do Input

  • Mecanismo de Acionamento: Este agente deve ser acionado automaticamente após a conclusão bem-sucedida do agente anterior (RF 4).
  • Tipo do input: Este agente deve ser apto a receber as saídas dos agentes anteriores: validation_summary, anomalies, enriched_anomalies e remediation_plan.
  • Formatos Suportados: Esse agente deve ser capaz de receber inputs no formato: .json.
  • Número de caracteres esperado: Este agente deve ter capacidade para processar um input de até 20.000 caracteres.

5.3.2 Especificação do Output

  • Formato de output: O output final deve ser um JSON contendo report_metadata, quality_validation, detection, risk, recommendations.
  • Exemplo de Estrutura de Output:
     {
      "report_metadata": {...},
      "quality_validation": {...},
      "detection": [...],
      "risk": [...],
      "recommendations": [...]
    } 
  • Número de caracteres esperado: O JSON final será denso, com um tamanho mínimo esperado de 15.000 caracteres.

5.3.3 Parâmetros de Geração

  • Modelo: GPT-5
  • Temperatura: 0.6

5.3.4 Ferramentas do Agente

  • Documentos: Não consulta.
  • Calculadora: Utiliza lógica interna para consolidação de dados.
  • Busca Online: Não utiliza.
  • Sistemas Externos: Não utiliza.

5.3.5 Memória

  • Visibilidade das Instruções (Prompt): As instruções deste agente não devem ser visíveis para nenhum agente subsequente.
  • Visibilidade da Resposta: A resposta (JSON consolidado) é o entregável final e não é passada para outros agentes internos.

5.3.6 Regras de Orquestração e Transição

A execução deste agente finaliza o fluxo. O JSON gerado é o resultado que deve ser disponibilizado ao usuário.

© 2025 prototipe.ai. Todos os direitos reservados.