O custo oculto do processamento manual de documentos
Uma pesquisa do IDC revela que os desafios relacionados a documentos custam às organizações cerca de US$ 19.732 por trabalhador da informação por ano, além de reduzir a produtividade em 21,3%. Empresas que recebem faturas de centenas de fornecedores enfrentam um problema ainda maior: cada emissor usa um layout diferente, que muda sem aviso prévio.
Sistemas baseados em templates exigem manutenção constante nessa escala. Funcionários chegam a gastar até 30% do tempo em tarefas relacionadas a documentos, e as taxas de erro na entrada manual de dados variam entre 1% e 4%. As soluções convencionais de Processamento Inteligente de Documentos (IDP) resolvem parte do problema, mas exigem configuração extensiva para cada formato e quebram quando os layouts variam entre fornecedores.
Para endereçar esse cenário, a AWS publicou um guia técnico detalhando como construir um sistema de IDP agnóstico usando o Amazon Bedrock AgentCore — uma plataforma para criar, conectar e otimizar agentes de IA em escala, com qualquer framework ou modelo.
Os três problemas centrais das abordagens baseadas em regras
Antes de entrar na solução, vale entender por que os pipelines tradicionais de IDP falham em ambientes com alta variedade de documentos:
- Rigidez de templates: cada novo formato de documento exige configuração manual, e até pequenas mudanças de layout podem causar falhas na extração.
- Ausência de aprendizado: os mesmos erros de extração se repetem em documentos similares porque o sistema não retém o conhecimento de correções anteriores.
- Escalabilidade comprometida: cada novo fornecedor ou variante de documento multiplica o esforço de manutenção, gerando custos operacionais contínuos para organizações que processam documentos de centenas de origens.
A abordagem agêntica resolve esses três pontos. Em vez de templates estáticos, agentes de IA analisam cada documento, geram instruções de extração, validam os resultados e aprendem com as correções automaticamente. Com o tempo, o sistema constrói uma base de conhecimento sobre os formatos de documentos, processando documentos similares com mínima configuração adicional.
Visão geral da solução
A solução proposta pela AWS envolve oito agentes especializados que colaboram em dois fluxos de trabalho baseados em grafos, rodando sobre o Amazon Bedrock AgentCore. Os agentes são construídos com o Strands Agents, um SDK de código aberto para criação de agentes de IA.
Fluxo de identificação
O agente Analisador extrai o texto do documento usando o Amazon Textract e identifica o tipo e o remetente. Em seguida, o agente Combinador busca documentos similares por similaridade vetorial no Amazon S3 Vectors, uma funcionalidade do Amazon Simple Storage Service (Amazon S3).
Fluxo de treinamento (novos tipos de documento)
Quando nenhuma correspondência é encontrada, o agente de Instruções gera prompts de extração, o agente Extrator produz os dados estruturados, e o agente Validador verifica os resultados contra esquemas e regras de negócio armazenados no Amazon Aurora DSQL. Se a validação falhar, o agente Corretor de Instruções refina os prompts e tenta novamente. Com sucesso, o agente Salvar Instruções persiste as instruções para reutilização futura.
Fluxo de automação (tipos de documento já conhecidos)
Quando uma correspondência é encontrada, o agente Extrator aplica diretamente as instruções existentes. Se a validação falhar, o agente Solucionador de Problemas corrige os dados extraídos sem modificar as instruções.
Arquitetura de infraestrutura
Os documentos chegam via Amazon Simple Email Service (Amazon SES) ou por upload direto ao Amazon S3. O Amazon EventBridge dispara uma função AWS Lambda que cria um job de rastreamento no Amazon DynamoDB e invoca o AgentCore Runtime.
Os agentes acessam recursos da AWS com segurança por meio de credenciais máquina-a-máquina gerenciadas pelo AgentCore Identity e pelo Amazon Cognito. As funções Lambda se tornam ferramentas compatíveis com agentes através da interface do Protocolo de Contexto de Modelo (MCP) do AgentCore Gateway.
O monitoramento e a resolução de problemas são feitos por um dashboard com chat integrado, hospedado no Amazon Elastic Container Service (Amazon ECS). A visibilidade sobre o desempenho dos agentes é fornecida pelo AgentCore Observability e pelo Amazon CloudWatch.
Como implantar a solução
Pré-requisitos
- Uma conta AWS.
- Acesso ao Amazon Bedrock com os modelos Amazon Nova e Anthropic (Claude) habilitados. Consulte os modelos suportados por região no Amazon Bedrock.
- Acesso ao Amazon Bedrock AgentCore (Runtime, Gateway, Identity), S3 Vectors e Amazon Aurora DSQL em uma região suportada.
- AWS Cloud Development Kit (AWS CDK) v2 instalado.
- Docker instalado e em execução (necessário para construir e implantar imagens de contêiner).
- Python 3.11+ e Node.js 18+.
- Permissões de AWS Identity and Access Management (IAM) para criar buckets S3, funções Lambda, tabelas DynamoDB, pools de usuários Cognito, repositórios Amazon Elastic Container Registry (Amazon ECR) e serviços Amazon ECS.
Passos de implantação
Clone o repositório e configure o ambiente:
git clone https://github.com/aws-samples/agenticidp-guidance.git
cd agenticidp-guidance
uv venv
source .venv/bin/activate
uv pip install -r requirements.txt
cd ui/orchestrator
npm install
cd ../..
Em seguida, implante as stacks:
uv run deploy.py --admin-email your-email@example.com
Esse comando implanta seis stacks do AWS CloudFormation: Core (S3, Cognito, DynamoDB), Gateway (ferramentas Lambda, AgentCore Gateway), Aurora (Amazon Aurora DSQL), Agent (AgentCore runtime, contêineres), UI Orchestrator (endpoints de API) e Modern UI (aplicação React no Amazon CloudFront). A implantação leva aproximadamente 15 a 20 minutos.
Exemplos práticos de funcionamento
Novo tipo de documento — fluxo de treinamento
Imagine que uma ordem de compra de um novo varejista, “Two Wheel Store”, é enviada pela primeira vez. O agente Combinador busca no armazenamento vetorial, não encontra correspondência e direciona o job pelo fluxo de treinamento. O agente Analisador usa o Amazon Textract para extrair o texto bruto:
# PURCHASE ORDER
FROM: Two Wheel Store
Order #: PO-2026-0102-2584
Date: 2026-01-02
## Items Ordered
AC-021 Advanced Computer Qty: 1 $75.61
Colors: cr4321 @ $75.61
...
SB-004 Folding Classic Qty: 8 $9634.32
Colors: cb8901 I Sizes: S @ $1204.29
TOTAL: $14931.54
O agente de Instruções gera os prompts de extração a partir do esquema, e o agente Extrator produz um JSON estruturado:
{
"po_number": "PO-2026-0102-2584",
"retailer_name": "Two Wheel Store",
"order_date": "2026-01-02T00:00:00Z",
"line_items": [
{
"sku": "AC-021",
"product_name": "Advanced Computer",
"quantity": 1,
"unit_price": 75.61,
"line_total": 75.61
},
{
"sku": "SB-004",
"product_name": "Folding Classic",
"quantity": 8,
"unit_price": 1204.29,
"line_total": 9634.32
}
],
"order_total": 14931.54
}
O agente Validador verifica o resultado e detecta uma falha:
validation_status: INVALID
error: 'SB-004' does not match '^AB-[A-Z]{2}-\d{3}$'
O formato de SKU do fornecedor (SB-004) não corresponde ao formato interno da empresa (AB-SB-004). O agente Corretor de Instruções diagnostica a incompatibilidade e adiciona uma regra explícita de transformação de SKU ao prompt de extração: prefixar os SKUs do fornecedor com AB-. Na segunda tentativa, os sete itens de linha são validados com sucesso, e o agente Salvar Instruções persiste o prompt refinado no armazenamento vetorial. O tempo total desse primeiro processamento foi de 3 minutos e 49 segundos.
Tipo de documento já conhecido — fluxo de automação
Quando uma segunda ordem de compra da Two Wheel Store chega, o agente Combinador encontra as instruções armazenadas da primeira execução com uma pontuação de confiança de 3,946 (limite: 3,7) e direciona o job pelo fluxo de automação. O agente Extrator aplica as instruções diretamente, a regra de transformação de SKU aprendida no treinamento é aplicada automaticamente (EL-002 → AB-EL-002, HB-071 → AB-HB-071, PD-002 → AB-PD-002), e os três itens de linha são validados na primeira tentativa com um total de US$ 5.979,19. O processamento completo levou 1 minuto e 30 segundos — uma redução significativa em relação aos 3 minutos e 49 segundos do primeiro processamento.
Interface de chat para diagnóstico
O dashboard inclui uma interface de chat para resolução de problemas. É possível perguntar quais ferramentas o agente possui, listar instruções armazenadas, verificar o status de um job específico ou diagnosticar falhas e sugerir atualizações nas instruções.
Como a precisão melhora ao longo do tempo
O sistema evolui por meio de dois ciclos de retroalimentação:
- Ciclo de treinamento: quando o agente Corretor de Instruções refina os prompts após falhas de validação, as instruções melhoradas são salvas e reutilizadas para documentos similares.
- Ciclo de processamento: quando o agente Solucionador de Problemas corrige erros de extração, ele fornece análises detalhadas que ajudam a identificar padrões nas variações de formato dos documentos.
Ao trocar de modelo, a AWS recomenda usar o AgentCore Evaluations para confirmar que a qualidade de extração permanece aceitável.
Estimativa de custo
Como a solução roda em recursos serverless e sob demanda, não há custos ociosos. Para uma carga de trabalho de 10 documentos de treinamento e 1.000 documentos processados por mês na região US East (N. Virginia), o custo estimado é de aproximadamente US$ 58 por mês. A inferência de modelos de fundação (FM) pelo Amazon Bedrock representa cerca de 85% do custo total, a aproximadamente US$ 0,055 por documento. Consulte a página de preços do Amazon Bedrock para detalhes.
Personalizando a solução para o seu caso de uso
A solução já vem com um caso de uso de processamento de ordens de compra, um conjunto de dados sintético de uma empresa de bicicletas, um esquema JSON pré-construído e uma função Lambda de validação. Para processar seus próprios documentos, é necessário substituir os esquemas e a lógica de validação incluídos pelos seus próprios.
Defina o esquema do seu documento
Crie um esquema JSON que defina os campos que você deseja extrair para cada tipo de documento. O esquema de referência está em agents/orchestratorgraph/doc_schema/purchase_order_schema.json. O esquema deve especificar nomes de campos, tipos de dados e se cada campo está explicitamente declarado no documento ou inferido pelo contexto.
Construa seu processo de validação
Para adicionar um novo validador, crie uma função Lambda que aceite o JSON extraído e retorne um resultado de aprovação ou reprovação com mensagens de erro detalhadas, depois registre-a como ferramenta no AgentCore Gateway. Exemplos de validadores possíveis:
- Um validador de faturas que verifica IDs de fornecedores no sistema de contas a pagar e confere se os totais dos itens batem com o total da fatura.
- Um validador de contratos que verifica se o documento contém cláusulas obrigatórias e se datas e nomes das partes correspondem aos registros.
- Um validador de sinistros que confere números de apólices, limites de cobertura e informações do solicitante no sistema de gestão de apólices.
Atualize os prompts dos agentes
Os prompts dos agentes em agents/orchestratorgraph/prompts/ fazem referência à terminologia de ordens de compra. Atualize-os para refletir seus tipos de documentos e requisitos de extração.
Boas práticas de operação
- Comece com amostras representativas: envie de 5 a 10 documentos por tipo durante o treinamento, incluindo casos extremos com variações de formato.
- Use validação com regras de negócio: conecte os validadores aos seus dados de referência (listas de fornecedores, catálogos de produtos) no Aurora DSQL para capturar erros de extração cedo.
- Monitore o desempenho dos agentes: use o AgentCore Observability e o CloudWatch para rastrear caminhos de execução, identificar gargalos e medir a precisão da extração ao longo do tempo.
- Adicione tipos de documentos incrementalmente: crie um esquema JSON para cada novo tipo de documento e uma função Lambda de validação correspondente.
- Adicione guardrails para produção: aplique o Amazon Bedrock Guardrails para impor filtragem de conteúdo e verificações de fundamentação nas saídas dos agentes — especialmente importante para documentos sensíveis como sinistros de seguros ou pedidos de empréstimo.
- Revise o OWASP Top 10 para LLMs: consulte o OWASP Top 10 para LLMs e Apps de IA Generativa para considerações de segurança ao construir aplicações que usam grandes modelos de linguagem (LLMs).
Limpeza dos recursos
Para evitar cobranças contínuas, remova os recursos implantados com o comando:
uv run destroy.py
Importante: antes de executar a limpeza, exporte os dados que deseja manter. O script destroy.py exclui permanentemente documentos processados (S3), histórico de jobs (DynamoDB), dados de validação (Aurora DSQL) e instruções de extração aprendidas (armazenamento vetorial).
Conclusão
A abordagem agêntica apresentada pela AWS representa uma evolução significativa no processamento de documentos corporativos. Em vez de templates rígidos que quebram com qualquer variação de layout, o sistema se adapta automaticamente a novos formatos e melhora sua precisão ao longo do tempo por meio de ciclos de retroalimentação — substituindo a configuração manual por aprendizado autônomo.
Para quem quiser explorar mais, a AWS disponibiliza a solução de exemplo para testes com as amostras de ordens de compra incluídas. Recursos adicionais de referência:
- Strands Agents SDK: mergulho técnico em arquiteturas de agentes e observabilidade
- Introdução ao Amazon Bedrock AgentCore Gateway: transformando o desenvolvimento de ferramentas para agentes de IA empresariais
- Desbloqueando o poder do Protocolo de Contexto de Modelo (MCP) na AWS
- Amazon Bedrock AgentCore Memory: construindo agentes com consciência de contexto
- Documentação do Amazon Bedrock AgentCore
Fonte
Build self-improving document processing using Amazon Bedrock AgentCore (https://aws.amazon.com/blogs/machine-learning/build-self-improving-document-processing-using-amazon-bedrock-agentcore/)
Leave a Reply