Editar

Share via


Automatizar o processamento de formulários PDF

IA do Azure para Informação de Documentos
Serviços de IA do Azure
Aplicativos Lógicos do Azure
Funções do Azure

Este artigo descreve uma arquitetura do Azure que você pode utilizar para substituir métodos de processamento de formulários dispendiosos e inflexíveis por um processamento automatizado de PDF flexível e econômico.

Arquitetura

Diagrama da arquitetura para processamento de formulários PDF

Baixe um arquivo do PowerPoint dessa arquitetura.

Workflow

  1. Uma conta de email designada do Outlook recebe arquivos PDF como anexos. A chegada de um email dispara um aplicativo lógico para processar o email. O aplicativo lógico é criado usando as capacidades do Aplicativos Lógicos do Azure.
  2. O aplicativo lógico faz upload dos arquivos PDF para um contêiner no Azure Data Lake Storage.
  3. Você também pode fazer upload de arquivos PDF manualmente ou programaticamente para o mesmo contêiner de PDF.
  4. A chegada de um arquivo PDF no contêiner de PDF dispara outro aplicativo lógico para processar os formulários PDF que estão no arquivo PDF.
  5. O aplicativo lógico envia o local do arquivo PDF para um aplicativo de funções para processamento. O aplicativo de funções é criado usando as capacidades do Azure Functions.
  6. O aplicativo de funções recebe o local do arquivo e executa essas ações:
    1. Ele divide o arquivo em páginas únicas se o arquivo tiver várias páginas. Cada página contém um formulário independente. Os arquivos divididos são salvos em um segundo contêiner no Data Lake Storage.
    2. Ele utiliza HTTPS POST, uma API REST do Azure, para enviar o local do arquivo PDF de página única para o IA para Informação de Documentos para processamento. Quando a IA do Azure para Informação de Documentos conclui o processamento, ele envia uma resposta de volta para o aplicativo de funções, que coloca as informações em uma estrutura de dados.
    3. Ela cria um arquivo de dados JSON que contém os dados de resposta e armazena o arquivo em um terceiro contêiner no Data Lake Storage.
  7. O aplicativo lógico de processamento de formulários recebe os dados de resposta processados.
  8. O aplicativo lógico do processamento de formulários envia os dados processados para o Azure Cosmos DB, que salva os dados em um banco de dados e em coleções.
  9. O Power BI obtém os dados do Azure Cosmos DB e fornece insights e painéis.
  10. Você pode implementar um processamento adicional, conforme necessário, nos dados que estão no Azure Cosmos DB.

Componentes

  • O Serviços de IA do Azure é uma categoria de produtos de IA do Azure que utilizam os Serviços de IA do Azure, a IA específica da tarefa e a logica de negócios para fornecer serviços de IA prontos para uso em processos de negócios comuns. Um desses produtos é o IA do Azure para Informação de Documentos, que utiliza modelo de machine learning para extrair pares de chave-valor, texto e tabelas de documentos.
  • Os Aplicativos Lógicos do Azure são um serviço de nuvem sem servidor para criar e executar fluxos de trabalho automatizados que integram aplicativos, dados, serviços e sistemas.
  • O Azure Functions é uma solução sem servidor que permite que você escreva menos código, mantenha menos infraestrutura e economize custos.
  • O Azure Data Lake Storage é a base para a criação de data lakes empresariais no Azure.
  • O Azure Cosmos DB é um banco de dados relacional e NoSQL totalmente gerenciado para o desenvolvimento de aplicativos modernos.
  • O Power BI é uma coleção de serviços de software, aplicativos e conectores que trabalham juntos para que você possa transformar suas fontes de dados não relacionadas em insights coerentes, visualmente imersivos e interativos.

Alternativas

  • Você pode utilizar o Banco de Dados SQL do Azure em vez do Azure Cosmos DB para armazenar os dados dos formulários processados.
  • Você pode utilizar o Azure Data Explorer para visualizar os dados de formulários processados que estão armazenados no Data Lake Storage.

Detalhes do cenário

O processamento de formulários costuma ser uma função comercialmente crítica. Muitas empresas ainda dependem de processos manuais que são dispendiosos, consomem tempo e estão sujeitos a erros. A substituição de processos manuais reduz custos e riscos e torna a empresa mais ágil.

Este artigo descreve uma arquitetura que você pode utilizar para substituir o processamento manual de formulários PDF ou sistemas herdados dispendiosos que automatizam o processamento de formulários PDF. A IA do Azure para Informação de Documentos processa os formulários PDF, os Aplicativos Lógicos do Azure fornecem o fluxo de trabalho e o Functions fornece as capacidades de processamento de dados.

Para obter informações sobre implantação, consulte Implantar este cenário neste artigo.

Possíveis casos de uso

A solução descrita neste artigo pode processar vários tipos de formulários, incluindo:

  • Faturas
  • Registros de pagamento
  • Registros de segurança
  • Registros de incidentes
  • Registros de conformidade
  • Ordens de compra
  • Formulários de Autorização de Pagamento
  • Formulários de triagem de saúde
  • Formulários de pesquisa

Considerações

Essas considerações implementam os pilares do Azure Well-Architected Framework, um conjunto de princípios orientadores que você poderá usar para melhorar a qualidade de uma carga de trabalho. Para obter mais informações, confira Microsoft Azure Well-Architected Framework.

Confiabilidade

A confiabilidade garante que seu aplicativo possa cumprir os compromissos que você assume com os seus clientes. Para obter mais informações, confira Visão geral do pilar de confiabilidade.

Uma carga de trabalho confiável é aquela que é resiliente e disponível. Resiliência é a capacidade de um sistema de se recuperar de falhas e continuar funcionando. A meta da resiliência é retornar o aplicativo a um estado totalmente funcional após uma falha. Disponibilidade é uma medida que indica se os usuários podem acessar sua carga de trabalho quando precisarem.

Essa arquitetura foi concebida como uma arquitetura inicial que você deve implantar rapidamente e criar um protótipo para fornecer uma solução comercial. Se o protótipo for um sucesso, você poderá estender e aprimorar a arquitetura, se necessário, para atender a requisitos adicionais.

Essa arquitetura utiliza a infraestrutura e as tecnologias escalonáveis e resilientes do Azure. Por exemplo, o Azure Cosmos DB tem redundância interna e cobertura global que você pode configurar para atender às suas necessidades.

Para obter as garantias de disponibilidade dos serviços do Azure que essa solução utiliza, consulte Contrato de Nível de Serviço (SLA) para Serviços Online.

Segurança

A segurança fornece garantias contra ataques deliberados e o abuso de seus dados e sistemas valiosos. Para saber mais, confira Visão geral do pilar de segurança.

A conta de email do Outlook utilizada nessa arquitetura é uma conta de email dedicada que recebe formulários PDF como anexos. É uma boa prática limitar os remetentes apenas a partes confiáveis e evitar que agentes mal-intencionados enviem spam para a conta de email.

A implantação dessa arquitetura descrita em Implantar esse cenário toma as seguintes medidas para aumentar a segurança:

  • Os scripts de implantação do PowerShell e do Bicep utilizam o Azure Key Vault para armazenar informações confidenciais, de modo que elas não sejam exibidas nas telas dos terminais ou registradas em logs de implantação.
  • As identidades gerenciadas fornecem uma identidade gerenciada automaticamente no Microsoft Entra ID para que os aplicativos usem quando se conectam a recursos que dão suporte à autenticação do Microsoft Entra. O aplicativo de funções utiliza identidades gerenciadas para que o código não dependa de entidades de segurança individuais e não contenha informações de identidade confidenciais.

Otimização de custo

A otimização de custos consiste em buscar maneiras de reduzir despesas desnecessárias e melhorar a eficiência operacional. Para obter mais informações, confira Visão geral do pilar de otimização de custo.

Aqui estão algumas diretrizes para otimizar os custos:

  • Use a estratégia de pagamento conforme o uso na sua arquitetura e escale horizontalmente a expansão conforme necessário, ao invés de investir em recursos de grande escala no início.
  • A implantação da arquitetura descrita em Desenvolver este cenário implanta uma solução inicial que é adequada para a prova de conceito. Os scripts de implantação criam uma arquitetura funcional com requisitos mínimos de recursos. Por exemplo, os scripts de implantação criam um host Linux sem servidor menor para a execução do aplicativo de funções.

Eficiência de desempenho

A eficiência do desempenho é a capacidade da sua carga de trabalho de reduzir horizontalmente de forma eficiente para atender às demandas impostas a ela pelos usuários. Para saber mais, confira Visão geral do pilar de eficiência de desempenho.

Essa arquitetura usa serviços que têm capacidades internas de colocação em escala que você pode utilizar para melhorar a eficiência do desempenho. Estes são alguns exemplos:

Implantar este cenário

Você pode implantar uma versão rudimentar dessa arquitetura, um acelerador de solução, e utilizá-lo como ponto de partida para implantar sua própria solução. A implementação da referência para o acelerador inclui código, scripts de implantação e um guia de implantação.

O acelerador recebe os formulários PDF, extrai os campos de dados e salva os dados no Azure Cosmos DB. O Power BI visualiza os dados. O projeto utiliza uma metodologia modular e orientada por metadados. Nenhum campo do formulário é codificado de forma fixa. Ele pode processar qualquer formulário PDF.

Você pode utilizar o acelerador como está, sem modificar o código, para processar e visualizar qualquer formulário PDF de página única, como formulários de segurança, faturas, registros de incidentes e muitos outros. Para usá-lo, você só precisa coletar amostras de formulários PDF, treinar um novo modelo para aprender o layout dos formulários e conectar o modelo à solução. Você também precisa reprojetar o relatório do Power BI para seus conjuntos de dados, de modo que ele forneça os insights que você deseja.

A implementação usa o Estúdio de IA do Azure para Informação de Documentos para criar modelos personalizados. O acelerador utiliza os nomes de campo salvos no modelo de machine learning como referência para processar outros formulários. São necessários apenas cinco formulários de amostra para criar um modelo de machine learning personalizado. Você pode mesclar até 100 modelos criados de forma personalizada para criar um modelo composto de aprendizado de máquina que possa processar uma variedade de formulários.

Repositório de implantação

O repositório GitHub para o acelerador de solução está no Acelerador de soluções de automação do processamento de formulários PDF do Azure, que contém o guia de implantação dessa solução.

Pré-requisitos de implantação

Para implantar, você precisa de uma assinatura do Azure. Para obter informações sobre assinaturas gratuitas, consulte Criar na nuvem com uma conta gratuita do Azure.

Para saber mais sobre os serviços que são utilizados no acelerador, consulte a visão geral e os artigos de referência listados em:

Considerações de implantação

Para processar um novo tipo de formulário PDF, você utiliza arquivos PDF de amostra para criar um novo modelo de machine learning. Quando o modelo estiver pronto, você deve inserir a ID do modelo na solução.

Esse nome de contêiner pode ser configurado nos scripts de implantação obtidos no repositório GitHub.

A arquitetura não atende a nenhum requisito de alta disponibilidade (HA) ou recuperação de desastres (DR). Se você deseja estender e aprimorar a arquitetura atual para implantação na produção, considere as seguintes recomendações e melhores práticas:

  • Projete a arquitetura HA/DR com base em seus requisitos e utilize as capacidades internas de redundância quando aplicável.
  • Atualizações do código de implantação do Bicep para criar um ambiente de computação que possa lidar com seus volumes de processamento.
  • Atualização do código de implantação do Bicep para criar mais instâncias dos componentes da arquitetura para satisfazer seus requisitos de HA/DR.
  • Siga as diretrizes em Redundância do Armazenamento do Microsoft Azure ao projetar e provisionar o armazenamento.
  • Siga as diretrizes em Continuidade dos negócios e recuperação de desastres ao projetar e provisionar os aplicativos lógicos.
  • Siga as diretrizes em Confiabilidade no Azure Functions ao projetar e provisionar o aplicativo de funções.
  • Siga as diretrizes em Obter alta disponibilidade com o Azure Cosmos DB quando você projetar e provisionar um banco de dados que foi criado usando o Azure Cosmos DB.
  • Se você considerar colocar esse sistema na produção para processar grandes volumes de formulários PDF, poderá modificar os scripts de implantação para criar um host Linux que tenha mais recursos. Para fazer isso, modifique o código dentro deploy-functionsapp.bicep

Colaboradores

Esse artigo é mantido pela Microsoft. Ele foi originalmente escrito pelos colaboradores a seguir.

Autor principal:

Outros colaboradores:

Para ver perfis não públicos no LinkedIn, entre no LinkedIn.

Próximas etapas