by Danish Ali Detho | O365 & Power Platform Solution Architect
Introduction
Organizations all over the world are trying to find new ways of automating their business processes in order to reduce redundancies, minimize manual data entry and human error. Artificial intelligence plays a significant role when it comes to improving the business process by taking automation to the next level where the process is not only automated but smart and self-sufficient as well.
Microsoft Power Automate provides businesses the capability to automate their business processes easily using their suite of low-code/no-code solutions in Power Platform and now they released a new tool in order to provide them the ability to add artificial intelligence in the form of AI Builder. In this article, we will take a look at AI Builder and the different types of models available for various purposes. We will then create a Form processing model that will extract the form data and then save it in a SharePoint List.
What is AI Builder
AI Builder is a new core component of Power Platform that allows us to use Artificial Intelligence to improve business performance by easily automating the business processes and predict outcomes. It is a low code/no-code solution which means pretty much like most of Power Platform components, you don’t need any coding skills to develop AI models using AI builder.
How AI Builder Works
Using AI is easy thanks to integration with Power Apps and Power Automate. Adding intelligence to your business is simple and can be done in the following steps:
- Choose an AI model type from different AI models
- Tailor the AI model based on your requirements
- Train your AI model
- Use AI model in your automated processes using Power platform tools like power automate
AI Builder Models
Category classification
This model belongs to language processing and helps with category classification so you can identify text entries with tags to be used for things like:
- Sentiment analysis
- Spam detection
- Customer request routing
Entity extraction
This language processing model helps you transform unstructured data into structured data that’s machine-readable. You can then apply processing to retrieve information, extract facts, and answer questions.
Form processing
It is a model which helps you transform unstructured data into structured data making it machine-readable. We can then apply processing to retrieve information, extract facts, and answer questions.
Object detection
Object detection models can be very useful in automating processes like checking for faults in objects, streamline inventory management and categorizing objects based on their images.
Prediction
AI Builder prediction models allow you to predict the outcome of an event based on historical data.
Scenario: Extract data from an invoice document and save it in a SharePoint List
Extract the invoice information from the uploaded invoice document and store it in a SharePoint List.
AxioWorks SQList continuously export SharePoint lists and libraries as normalised SQL Server tables with SQList by AxioWorks, making SharePoint data available to reporting tools like Power BI, Crystal Reports, or SSRS.
Prerequisites
Document Library
This will be used for uploading the invoices.
Invoice List
This list will be used for storing the invoice data. It has the following columns
- Invoice No: Single Line of text
- Invoice Date : Date/Time
- Invoice From: Single Line of text
- Bill To: Single Line of text
- Tax: Currency
- Shipping Cost: Currency
- Subtotal: Currency
- Total: Currency
Step 1: Create a Form Processing AI Model
Sign in to https://make.powerapps.com and then expand AI Builder and select Build. Then select form processing model and give your model a name.
Now, we need to specify the invoice information which you want to extract from the documents. Add the following fields which we created in the invoice list.
- Invoice
- From
- Bill To
- Date
- Shipping
- Tax
- Subtotal
- Total
The next step is to add documents, We will use the sample invoice templates provided by Microsoft which can be downloaded from the link below
https://docs.microsoft.com/en-us/ai-builder/form-processing-sample-data
Note: Documents must meet the specified requirements otherwise model will fail with the errors.
Next, draw/select the fields on the invoice to map the fields to data in invoice. Do the same for all the 5 invoice documents.
After that, you will be presented with the model summary and then click on the Train button. This will start the training of your model.
Once the model is trained, click on the Details button to goto the details page.
Here, you can quickly test the model with a test invoice to make sure the model is working fine. Click on quick then upload a test invoice. It should be able to identify all the fields in the invoice.
Once the testing is done, Publish the model.
Step 2: Use the Form Processing Model in Power Automate Flow
After publishing the AI model, the next step is to use this model and save the extracted data in the invoice list. This will be done via power automate flow.
Go to https://flow.microsoft.com and create a new automated flow that triggers when an invoice is uploaded in a SharePoint library.
Add a new action from AI Builder category “Process and save information from a form” and select the AI Builder model we built earlier.
After that, add a Create Item in SharePoint action and map all the values returned from AI Model to the new item columns.
Step 3: Test the solution
Go to the SharePoint site-> Document Library and upload a new invoice. this will trigger the flow and it will use the file content from the uploaded invoice to extract the information and store the data in the Invoice List.
And here is the invoice in our SharePoint list!
AxioWorks SQList continuously export SharePoint lists and libraries as normalised SQL Server tables with SQList by AxioWorks, making SharePoint data available to reporting tools like Power BI, Crystal Reports, or SSRS.
Conclusion
To summarize, AI builder is a great addition to the power platform which will allow businesses to improve the performance and efficiency of their business processes by adding Artificial intelligence in their power platform solutions. There are several different models available in AI Builder to help you in building solutions including automated form processing, object detection, prediction, categorization, and data extraction. In this article, we used the AI Builder form processing model to automate the extraction of invoice data from the invoice document and save it in a SharePoint list in three easy steps that don’t require any coding skills.