Pular para o conteúdo
AI Lab · Log de construção

Construindo um classificador de documentos regulatórios com Claude em 9 dias.

Do briefing à produção em uma AGF no Chile. O log da construção, as falhas e o harness de avaliação que ficou.

No fim de fevereiro, o time de compliance de uma AGF de Santiago pediu ajuda. Eles triavam à mão cerca de 1.200 documentos regulatórios recebidos por mês — circulares, pacotes de KYC de fornecedores, pedidos de documentos de fundos. Cada documento tinha de ser classificado em um de seis tipos, encaminhado ao operador certo e registrado na trilha de auditoria correspondente.

A triagem consumia um terço da capacidade do time.

Combinamos construir um classificador em duas semanas. Entregamos em nove dias. Este é o log da construção.

Dia 1 — O briefing

A primeira coisa que fizemos não foi escrever código. Sentamos duas horas com o time de compliance e montamos o conjunto de avaliação. Duzentos documentos reais, rotulados à mão em seis categorias, com um holdout de 30 documentos para a avaliação final.

Essa é a hora mais importante de qualquer projeto de AI Lab. Se não dá para concordar sobre o critério de avaliação, não dá para concordar sobre a resposta. Já vimos times passarem doze semanas em um modelo e depois discordarem sobre se ele funciona.

As seis categorias acabaram sendo:

  1. Circular regulatória — comunicação oficial da CMF / UAF
  2. KYC de fornecedor — documentos de onboarding de custodiantes e contrapartes
  3. Pedido de documento de fundo — solicitações de documentos de relações com investidores
  4. Escalação interna — questões levantadas pelo compliance ao jurídico
  5. Confirmação de rotina — confirmações, recibos, avisos de baixa prioridade
  6. Outros / revisão humana — saída de emergência para casos ambíguos

O conjunto de holdout era o fiscal — o que não passasse de 92% de acurácia, não subia.

Dia 2 — Primeira passada

Um engenheiro sensato teria começado por um classificador com fine-tuning. Começamos com o Claude 3.7 Sonnet puro e um prompt bem cuidado. O motivo: problemas de classificação com texto rico e definições explícitas de categoria são exatamente onde os modelos modernos ajustados por instrução brilham, e você não quer gastar uma semana treinando algo que um prompt resolve.

Acurácia da primeira passada no conjunto de avaliação: 88%. Abaixo do limiar. Mas os modos de falha eram esclarecedores.

Categoria 1 (Circular regulatória): 96% de acurácia
Categoria 2 (KYC de fornecedor):    91% de acurácia
Categoria 3 (Documento de fundo):   89% de acurácia
Categoria 4 (Escalação interna):    71% de acurácia  ← ruim
Categoria 5 (Confirmação de rotina):95% de acurácia
Categoria 6 (Outros):               (cauda de falhas)

O modelo não conseguia distinguir de forma confiável a categoria 4 das categorias 2 e 3. O modo de falha não era capacidade — era uma ambiguidade de definição na especificação. Alguns documentos de “KYC de fornecedor” eram escalações internas, porque o jurídico precisava se manifestar.

Dia 3 — Reespecificar, não retreinar

Em vez de fazer fine-tuning, reespecificamos as categorias. A categoria 4 virou “qualquer coisa que exija aprovação de um operador nomeado” — ortogonal ao tipo de documento. As outras cinco continuaram sendo categorias de conteúdo.

O classificador passou a rodar em duas passadas: classificar o tipo de documento (1, 2, 3, 5 ou 6) e depois classificar se há necessidade de aprovação (sim/não). Duas chamadas de classificação mais simples no lugar de uma mais difícil.

Acurácia após a reespecificação: 94% no tipo de documento, 96% na necessidade de aprovação. Acima do limiar. Não fizemos fine-tuning de nada.

O classificador não estava quebrado. A taxonomia estava. Gastar um dia consertando a taxonomia valeu mais do que uma semana mexendo no modelo.

Dias 4–6 — O harness, a interface, a trilha de auditoria

Com o comportamento do modelo travado, o resto era engenharia. Três coisas a construir:

1. O harness. O conjunto de avaliação roda a cada commit. Pega regressões automaticamente. O nosso roda em 11 segundos contra uma amostra e em 6 minutos contra o holdout completo. A execução completa é o portão dos deploys em produção.

2. A interface de triagem. Uma visão simples de fila para o time de compliance. Cada documento mostra a classificação do modelo, a confiança e a citação de origem via RAG que sustentou a decisão. Os operadores podem sobrescrever; as sobrescritas voltam para um conjunto de reavaliação que usamos nas checagens mensais de deriva.

3. A trilha de auditoria. Cada classificação registrada com a versão do modelo, a versão do prompt e o hash do documento de entrada. Atribuição ao operador em cada sobrescrita. Os auditores do time de compliance conseguem rastrear qualquer decisão até as entradas dela em menos de um minuto.

Dias 7–8 — Avaliação, estresse, deploy

A avaliação completa no holdout rodou limpa. Depois rodamos entradas adversariais (documentos truncados, documentos multilíngues, PDFs escaneados com erro de OCR) e anotamos onde o classificador degradava. Abaixo de 60% de confiança, o documento vai automaticamente para revisão humana — mesmo que o classificador tivesse um palpite.

A virada para produção aconteceu no dia 8. Implantamos de forma gradual: primeiro 10% dos documentos recebidos, monitorados por 24 horas, depois 100%.

Dia 9 — No ar, em produção

A carga de produção no primeiro dia foi de 47 documentos. O modelo processou tudo em menos de 30 segundos. Sobrescritas de operador no primeiro dia: duas. Ambas eram casos de borda que o conjunto de avaliação não cobria, então entraram nele para a checagem de deriva do mês seguinte.

Um mês depois, os números se estabilizaram em:

  • 78% de redução no tempo de triagem manual
  • 94% de acurácia no tipo de documento (mantida desde o primeiro dia)
  • 0 alucinações em produção (RAG com proveniência impede o modelo de responder sem fonte)
  • 6 / 6 deploys de modelo aprovados no portão do harness de avaliação

O que faríamos diferente

Duas coisas, nenhuma delas dramática.

Construir o pipeline do conjunto de avaliação antes do prompt. Montamos o conjunto à mão no primeiro dia. Da próxima vez construiríamos uma ferramentinha que permita ao time de compliance somar casos de avaliação conforme eles aparecem. Fizemos isso na mão no primeiro mês e funcionou, mas a ferramenta teria valido um dia de trabalho.

Entregar o fluxo de sobrescrita mais cedo. O fluxo de sobrescrita saiu no dia 7. Dois dias antes teriam nos dado mais sinal sobre casos adversariais durante a fase de avaliação.

O classificador continua rodando. Hoje processa cerca de 1.500 documentos por mês. Nunca foi retreinado. O conjunto de avaliação cresceu para 340 casos. A deriva segue dentro da tolerância.


Diego Vargas constrói agentes de IA na frente de AI Agents da finnerve. Se você está dimensionando um projeto de IA e quer conversar sobre a abordagem centrada em avaliação, comece uma conversa.

  • #AI Lab
  • #Claude
  • #log de construção
  • #compliance
De operador para operador

Conte o que você — realmente quer
resolver.

Uma conversa de 30 minutos. Entendemos seu stack, seus gargalos e onde a finnerve pode encaixar. Sem deck, sem pitch.