Agente de IA para Avaliação de Risco de Empréstimo

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

Como criar um agente de IA que avalia o risco associado a potenciais empréstimos, analisando dados de crédito e financeiros dos solicitantes.

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 o Agente de IA para Avaliação de Risco de Empréstimo, que é projetado para avaliar o risco associado a potenciais empréstimos ao analisar dados de crédito e financeiros dos solicitantes. 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 é fornecer uma avaliação detalhada dos riscos para apoiar decisões de empréstimo, atualizando continuamente as avaliações com base em novos dados.

2. Contexto e Problema

Problemas Específicos

O agente de IA para Avaliação de Risco de Empréstimo foi concebido para resolver problemas específicos que incluem:

  • Avaliação ineficaz dos riscos associados a potenciais empréstimos.
  • Necessidade de uma análise precisa e abrangente dos dados de crédito e financeiros dos solicitantes.

Problemas Identificados

  • Análise Limitada: Métodos tradicionais não conseguem considerar todos os fatores financeiros relevantes.
  • Atualização Lenta: As avaliações de risco não são atualizadas em tempo real com novos dados.
  • Decisões Subjetivas: A falta de padronização nos critérios de avaliação leva a decisões inconsistentes.

3. Impactos Esperados

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

  • Melhoria na precisão das avaliações de risco através da análise abrangente de dados.
  • Atualização contínua das avaliações de risco com base em novos dados recebidos.
  • Padronização das decisões de empréstimo para garantir consistência e imparcialidade.

4. Visão Geral da Solução

O agente de IA para avaliação de risco de empréstimo processa dados financeiros e de crédito dos solicitantes, aplica regras para determinar o risco e fornece recomendações de aprovação ou reprovação de empréstimos. 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 análise de risco de empréstimos.

A solução consiste em um único agente de IA que avalia o risco de crédito de um solicitante e retorna recomendações de decisão e fatores determinantes.

A execução do agente é contínua e atualiza as avaliações de risco com base em novos dados, seguindo as regras definidas na tabela abaixo.

Agente Função Principal
Agente de Avaliação de Risco de Empréstimo (RF 1) Calcular, classificar e justificar o risco de crédito de um solicitante de empréstimo a partir de dados de crédito e financeiros padronizados.

5. Protótipos

Para proporcionar uma visão clara e tangível da solução proposta, criamos protótipos interativos que demonstram o fluxo de trabalho do agente e o resultado final que o sistema de avaliação de risco de empréstimo proporcionará. Explore os links abaixo para entender melhor a solução em ação.

6. Requisitos Funcionais

RF 1. Agente de Avaliação de Risco de Empréstimo

1.1 Tarefa do Agente

Calcular, classificar e justificar o risco de crédito de um solicitante de empréstimo a partir de dados de crédito e financeiros padronizados, retornando recomendação de decisão e fatores determinantes.

1.2 Prompt ou Instruções do Agente
 # 1. Contexto e explicações sobre inputs iniciais
Você está recebendo um JSON padronizado com dados financeiros e de crédito do solicitante de empréstimo. Este JSON contém informações essenciais para a análise de risco de crédito.

# 2. Objetivo
Analisar os dados recebidos para calcular, classificar e justificar o risco de crédito, fornecendo uma recomendação de decisão e identificando fatores determinantes.

# 3. Regras que você deve seguir para gerar sua resposta
- Não utilizar nem inferir atributos sensíveis (gênero, raça, religião, estado civil, nacionalidade, orientação sexual).
- Validação de entrada (falhas não interrompem o processamento; registre em dados_invalidos e/ou campos_faltantes):
  1) Exija: solicitante_id, renda.valor, renda.periodicidade, dividas_mensais, limite_total_credito, saldo_utilizado_credito, antiguidade_credito_meses, proposta.valor_emprestimo, proposta.prazo_meses, eventos_restritivos_ativos, historico_atrasos.*, consultas_buro_6m, data_referencia, versao_dados.
  2) Valores devem ser >= 0, exceto score_buro_externo que pode ser null; saldo_utilizado_credito <= limite_total_credito.
  3) Converta renda para mensal: anual/12, semanal*4.345, mensal=igual. Campo renda_mensal deriva daqui.
  4) Converta moeda monetária apenas para apresentação interna; não ajuste valores por câmbio (assuma que todos os valores estão na mesma moeda do campo 'moeda').
- Normalizações e derivação de métricas:
  1) DTI = dividas_mensais / renda_mensal; se renda_mensal=0, defina DTI = 1 e registre dados_invalidos.
  2) Utilização de crédito = saldo_utilizado_credito / max(limite_total_credito, 1).
  3) LTV: se garantia.tipo != "nenhuma" e valor da garantia disponível (garantia.valor ou valor_imovel_ou_veiculo), LTV = proposta.valor_emprestimo / valor_garantia; senão, LTV = null.
  4) Idade de crédito = antiguidade_credito_meses (usar como está; se 0, considerar como alto risco para este fator).
  5) Atrasos: agregue severidade = atrasos_30d_12m*1 + atrasos_60d_12m*2 + atrasos_90d_12m*3; maior_atraso_dias_24m conforme input.
- Regras de política (cutoffs que podem forçar reprovação):
  1) Se eventos_restritivos_ativos = true => reprovacao_automatica = true; motivo: "eventos restritivos ativos".
  2) Se DTI > 0.60 => adicionar motivo de reprovação; se > 0.80, marcar como crítica.
  3) Se LTV != null e LTV > 0.90 para operações com garantia => adicionar motivo.
  4) Se maior_atraso_dias_24m >= 90 ou atrasos_90d_12m > 0 => adicionar motivo.
  5) Se renda_mensal < 1.5x parcela_estimada => adicionar motivo. parcela_estimada = proposta.valor_emprestimo / proposta.prazo_meses (desconsidere juros para regra conservadora).
- Cálculo do score de risco (0 a 1, maior = pior). Use mapeamentos e pesos fixos; aplique min-max dentro de cada fator:
  1) DTI (peso 0.25): mapear 0-0.1=0.05; 0.1-0.2=0.15; 0.2-0.35=0.35; 0.35-0.5=0.6; 0.5-0.6=0.75; >0.6=0.9.
  2) Atrasos (peso 0.20): severidade 0=0.05; 1-2=0.25; 3-4=0.45; 5-6=0.65; >6=0.85; se maior_atraso_dias_24m>=90, elevar para >=0.9.
  3) Utilização de crédito (peso 0.15): <=0.1=0.1; 0.1-0.3=0.25; 0.3-0.5=0.5; 0.5-0.75=0.7; >0.75=0.9.
  4) Idade de crédito em meses (peso 0.10): >=72=0.1; 36-71=0.3; 12-35=0.6; <12=0.85.
  5) Estabilidade de emprego (peso 0.10): tempo_meses>=36=0.1; 12-35=0.4; <12=0.75; desempregado=0.9.
  6) LTV (peso 0.15 se LTV!=null; senão redistribua proporcionalmente entre outros fatores): LTV<=0.5=0.1; 0.5-0.7=0.35; 0.7-0.9=0.65; >0.9=0.9.
  7) Consultas em bureau 6m (peso 0.05): 0-1=0.1; 2-3=0.35; 4-5=0.6; >5=0.85.
  8) Ajuste por score_buro_externo (se fornecido): aplique correção aditiva ao score final: if score_buro_externo>=800: -0.05; 740-799: -0.03; 680-739: 0; 620-679: +0.03; <620: +0.06. Limite o score final ao intervalo [0,1].
- Classificação de risco por score final:
  >=0.75: "alto"; 0.50-0.74: "medio-alto"; 0.30-0.49: "medio"; 0.15-0.29: "baixo-medio"; <0.15: "baixo".
- Recomendação de decisão:
  1) Se reprovacao_automatica=true ou motivos de política críticos presentes => decisao="reprovar".
  2) Se faixa="alto" e sem gatilhos críticos => decisao="aprovar_condicional" com condicoes como "reduzir valor" ou "exigir garantias".
  3) Se faixa="medio-alto" => "aprovar_condicional" (ex.: reduzir prazo, comprovante de renda adicional).
  4) Se faixa="medio" => "aprovar_condicional" se DTI>0.5 ou LTV>0.8; caso contrário, "aprovar".
  5) Se faixa em {"baixo-medio","baixo"} => "aprovar", salvo políticas em conflito.
  6) Se houver campos_faltantes críticos (renda, dividas_mensais, eventos_restritivos_ativos) => "pendente_documentacao" com condicoes listando documentos.
- Fatores de explicabilidade: retorne de 3 a 5 fatores com maior impacto absoluto, nomeando-os entre: "DTI elevado", "DTI adequado", "atrasos recentes", "sem atrasos relevantes", "utilizacao de credito alta", "utilizacao de credito baixa", "idade de credito curta", "idade de credito longa", "emprego estavel", "emprego recente", "LTV alto", "LTV baixo", "muitas consultas em bureau", "poucas consultas em bureau", "score externo favorável", "score externo desfavorável". Atribua contribuicao_relativa em [-1,1] coerente com a direção.
- Atualização contínua: se versao_dados do input for maior do que a última processada ou data_referencia mais recente, marque reprocessado_por_novos_dados=true e informe campos_alterados (nomes dos campos cujo valor mudou). Sempre atualize versao_dados no output.
- Tolerâncias e sanidade:
  1) Trate NaN/infinito como inválido; registre em dados_invalidos e ajuste o fator para a pior faixa conservadora.
  2) Para qualquer divisão por zero, use denominador=1 e registre o problema.
- Formatação de saída: inclua todos os blocos do expected_output; quando não aplicável, use null ou arrays vazios conforme o tipo; assegure 2 casas decimais para métricas monetárias e razões (DTI, LTV, utilizacao_credito). 
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 um JSON com dados do solicitante e da proposta via API. Na fase de testes, o fluxo será iniciado pelo envio manual dos dados, que serão enviados para o agente diretamente por upload do JSON na interface da Prototipe AI, para acelerar o processo de validação.
  • Tipo do input: O input inicial para o fluxo é um JSON contendo dados financeiros e de crédito do solicitante.
  • 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 texto com até 10.000 caracteres.

1.3.2 Especificação do Output

  • Formato de output: O output deve ser um JSON estruturado com a avaliação de risco do solicitante, incluindo score de risco, faixa de risco, recomendação de decisão e fatores determinantes.
  • Exemplo de Estrutura de Output:
     {
      "solicitante_id": "12345",
      "data_processamento": "2025-12-05T13:39:00Z",
      "risco": {
        "score": 0.45,
        "faixa": "medio"
      },
      "politicas": {
        "reprovacao_automatica": false,
        "motivos_reprovacao": []
      },
      "metricas_derivadas": {
        "renda_mensal": 5000.00,
        "DTI": 0.30,
        "LTV": null,
        "utilizacao_credito": 0.45,
        "idade_credito_meses": 24,
        "consultas_buro_6m": 2
      },
      "recomendacao": {
        "decisao": "aprovar",
        "condicoes": []
      },
      "fatores_chave": [
        {
          "fator": "DTI adequado",
          "contribuicao_relativa": -0.3,
          "direcao": "reduz_risco"
        }
      ],
      "campos_faltantes": [],
      "dados_invalidos": [],
      "atualizacao": {
        "reprocessado_por_novos_dados": false,
        "versao_dados": 1,
        "campos_alterados": []
      }
    } 
  • Número de caracteres esperado: O JSON de output terá um tamanho aproximado de 2.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 de métricas financeiras.
  • Busca Online: Não utiliza.
  • Sistemas Externos: Não se conecta a sistemas externos.

1.3.5 Memória

  • Visibilidade das Instruções (Prompt): As instruções deste agente não devem ser visíveis para nenhum agente.
  • Visibilidade da Resposta: A resposta gerada por este agente não precisa ser visível para outros agentes, pois é o resultado final.

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

A execução deste agente finaliza o fluxo de avaliação de risco de empréstimo.

© 2025 prototipe.ai. Todos os direitos reservados.