AWS Solution Architecture
The invoice extraction workflow utilises AWS Textract, a machine learning service that automatically extracts text, handwriting and data from document sources. For our invoice extraction solution, we have optimised our Arcanum ML service architecture that we have also developed as our general MLOps architecture. Arcanum’s solution architecture is able to be re-used for our other ML services and is also auto-scalable, which was important for Tapi as they are processing a large volume of invoices. We are continually upgrading our solution architecture, and every improvement will be rolled out to our existing customers.Combining queries with the out of the box capabilities of the analyse expense API, we were able to build our own post processors on top of Textract to create a robust, accurate, and generalised invoice extraction service for Tapi. We also utilised Route 53, VPC, Internet Gateway, Load Balancer, NAT gateway, ECS, ECR, EC2 to secure and scale our infrastructure for enterprise customers.
In the context of Tapi, we effectively employed the powerful queries feature provided by Textract to dynamically handle a wide range of invoice formats. By harnessing the capabilities of these queries, we overcame the constraints posed by changing templates and vendor invoice styles. This was made possible through the advanced integration of natural language processing (NLP) and computer vision (CV) techniques, along with the ability to assign multiple queries to a single alias. As an example, we expanded our search for the invoice number by utilizing various queries such as "What is the invoice number" and "What is the document number." By combining these queries with the pre-existing functionalities of the analyze expense API, we successfully constructed a robust, precise, and versatile invoice extraction service for Tapi.