Descrição do Projeto
Preciso de um desenvolvedor ou equipe especializada em IA e Engenharia de Dados para criar um sistema/plataforma para classificação e extração inteligente de dados a partir de documentos em formato PDF nativo e arquivos físicos digitalizados (imagens/escaneados).
O sistema deve ser flexível o suficiente para processar diferentes tipos de documentos (ex: ASO - Atestado de Saúde Ocupacional, Laudos de NR33, NR35, Fichas de EPI, etc.) E extrair informações específicas de forma automatizada, mesmo que os layouts mudem drasticamente entre os emissores.
📌 Cenário e Desafio Principal (Layouts Variáveis e Contexto)
Cada emissor (clínica, empresa, consultoria) possui seu próprio layout para um mesmo tipo de documento. Isso significa que a informação que preciso extrair muda de lugar e de rótulo (label) de acordo com o arquivo enviado.
• Exemplo 1 (ASO): Preciso extrair o "Nome do Paciente". Em um modelo, o rótulo pode ser "Nome:"; em outro, "Colaborador:", "Paciente:" ou "Nome do Trabalhador". Além disso, a palavra "Nome" pode aparecer em outros locais (ex: "Nome do Exame", "Nome do Médico"), e o sistema deve usar o contexto para extrair apenas o dado correto.
• Exemplo 2 (NR33): Um documento de espaço confinado (NR33) terá campos, tabelas e rótulos completamente diferentes de um ASO (ex: "Responsável Técnico", "Supervisor de Entrada", "Data da Liberação"). A ferramenta deve ser capaz de isolar e extrair essas informações específicas com base no tipo do documento.
• Manuscritos e Assinaturas: Os documentos podem conter preenchimentos, datas ou assinaturas feitas à caneta, além de assinaturas digitais ou certificados. O sistema precisa ser capaz de lidar com esses elementos textuais e visuais (identificando a presença de vistos/assinaturas).
🖥️ Painel de Configuração e Treinamento (Módulo Administrativo)
O sistema não pode ter regras engessadas (hardcoded) no código para cada documento. Preciso de uma tela/interface administrativa onde eu possa cadastrar e configurar novos tipos de documentos.
• Cadastro de Tipos: Eu poderei criar um novo tipo (Ex: "Laudo NR33").
• Definição de Campos (Mapeamento): Nessa tela, eu irei definir quais campos/informações desejo extrair para aquele tipo de documento e dar instruções contextuais para a IA (ex: "Extraia o nome do supervisor que assina no final do documento", "Busque pelo campo de validade do exame").
• Testes/Treinamento rápido: Uma área onde eu possa fazer o upload de um pdf de teste para validar se as instruções passadas para a ia estão extraindo os dados corretamente antes de colocar o modelo em produção.
🔄 Arquitetura de Comunicação (Assíncrona via Webhook)
Como o processo de ocr e análise contextual por ia leva alguns segundos, a arquitetura da api deve ser estritamente assíncrona:
1. Endpoint de Upload (POST): O meu sistema enviará o arquivo (PDF/Imagem) junto com parâmetros de controle. A API deve apenas validar o recebimento, salvar o arquivo na fila e retornar imediatamente um status 202 Accepted com um identificador único (transaction_id).
2. Processamento em Background: O sistema processará a fila de documentos (identificação do tipo, ocr, extração via ia e validação de assinaturas) em segundo plano, usando mensageria (ex: celery, redis, rabbitmq ou sqs).
3. Envio via Webhook (POST): Assim que a análise for concluída, o sistema disparará um post para uma url de webhook configurável, enviando o transaction_id, os parâmetros iniciais e o json estruturado com todos os dados que a ia extraiu.
🛠️ Requisitos Técnicos Esperados
• Backend & IA: Python ou
Node.js. Uso de APIs de IA Generativa / LLMs (OpenAI, Anthropic ou modelos locais Open Source via Ollama/vLLM) combinado com técnicas de Prompt Engineering ou Structured Outputs (Json Schema) para garantir o formato da resposta.
• OCR Avançado: Integração com ferramentas capazes de ler PDFs digitados, imagens escaneadas e assinaturas/manuscritos (Google Cloud Vision, AWS Textract, Azure Document Intelligence ou Tesseract avançado).
• Frontend (Tela de Configuração): Interface simples, limpa e funcional (React, Vue, ou mesmo o painel administrativo nativo se bem estruturado).
🎯 Entregáveis do Projeto
1. Plataforma completa com a API assíncrona e a tela de configuração de documentos.
2. Código-fonte 100% documentado.
3. Instruções de deploy (preferencialmente utilizando Docker).
Prazo de Entrega: Não estabelecido