OCR services are used for the following purposes:
- At data labeling time, when importing documents into Data Manager. The services available for this step are UiPath Document OCR (free in cloud or on-premises), Google Cloud OCR (cloud only), Microsoft Read OCR (cloud or on-premises), and Omnipage (on-premises only).
- At run time when calling models from RPA workflows. The services available for this step are all the OCR engines integrated with the UiPath RPA platform including the above, plus Abbyy Finereader, Microsoft OCR (legacy), Microsoft Project Oxford OCR, and Tesseract.
In production, we recommend calling the OCR using the Digitize Document activity in your workflow and passing the Document Object Model as input to the activity calling the ML model. For this purpose, you need to use the Machine Learning Extractor activity (Official feed).
As a quick convenience for testing purposes, you can also configure the OCR directly in AI Center (Settings window), but this is not recommended for production deployments.
UiPath Document OCR has 3 deployment options available:
- On the robot using a LocalServer activity package and the UiPath.OCR.Activities package version 3.1.0-preview or later - requires no internet access and no additional hardware but the Robot machine needs a CPU with AVX2 support.
- This should be your default option. For larger volumes you can add more Robots.
- Standalone Docker container running on Linux GPU machine (see below - recommended for volumes over 1M pages/yr) - Internet access required for licensing/metering
- This should be your default option for large volumes over 2-3M pages per year.
- Standalone Docker container running on Linux CPU machine (see below) - Internet access required for licensing/metering
- Only for rare situations where your Robot machines run on CPUs without AVX2 support, or where GPU cannot be obtained.
- ML Skill in AI Center (see ML Packages section) (GPU strongly recommended) - Internet access not required on premises if AI Center installation is airgapped
This section details the hardware and software requirements for installing OCR Engines.
Machines Involved : VM in the Cloud or On-Prem Box or Laptop
Operating Systems: Windows (Windows 10) or Linux (Ubuntu/CentOS/RedHat)
Computing Engines: CPU or GPU
OCR: UiPath Document OCR CPU or UiPath Document OCR GPU or OmniPage OCR CPU
Video RAM (GB)
The software requirements for OCR Engines are the same as for Data Manager.
Data Manager needs access to OCR engine
<IP>:<port_number>. OCR engine might be UiPath Document OCR on-premises, Omnipage OCR on-premises, Google Cloud Vision OCR, Microsoft Read Azure, Microsoft Read on-premises.
Robots need access to OCR
<IP>:<port_number>. Same OCR options as above, except for Omnipage, which is available in the Robots directly as an Activity Pack.
OCR engines need access to the Licensing server hosted by UiPath in Azure, on port 443.
If you only want to serve pre-trained out-of-the-box models, you can run an OCR engine on your Windows 10 laptop. Make sure Docker Desktop has 8G of RAM available.
If you want to try training a custom model as a demo on a small volume of data (under 100 documents), you can run the OCR Engine on an environment with a limit of 4GB of RAM. For small cases like this, a GPU for the OCR engine may not be necessary.
OCR Engines are containerized applications that run on top of docker. You cannot run these on the same machine as AI Center on-premises. To run them on a separate machine, the prerequisites installer commands below can be used to set up docker and optionally the NVidia drivers. These scripts should not be run on the machine where AI Center will be installed.
The prerequisites for OCR Engines are the same as for Data Manager.
Run this command:
curl -fsSL https://raw.githubusercontent.com/UiPath/Infrastructure/master/ML/du_prereq_installer.sh | sudo bash -s -- --env gpu
On some systems running the command twice or a system reboot might be required to install all requirements.
Azure Specific: In order to use the NV-series virtual machines you need to either install the NVIDIA driver before executing the above command, or you can use a Driver Extension from Azure to install the necessary NVIDIA driver according to that tier GPU model.
If you are installing on a VM in Azure, then use this command instead:
curl -fsSL https://raw.githubusercontent.com/UiPath/Infrastructure/master/ML/du_prereq_installer.sh | sudo bash -s -- --env gpu --cloud azure
UiPath Document OCR is a proprietary OCR technology of UiPath, supporting characters used by the following Latin script languages: English, French, German, Italian, Portuguese, Romanian, and Spanish. Text in other languages will be recognized but without accents, for instance, “Ł” in Polish will be recognized as “L”. Pages processed using UiPath Document OCR are not counted towards the page quota purchased along with the Document Understanding Enterprise license so UiPath Document OCR is free to use.
UiPath Document OCR is available both on-premises as a docker container and in the cloud as a cloud service API with the URL: https://du.uipath.com/ocr. See the full description of the available URLs on the Public Endpoints page.
- To install UiPath Document OCR, run these commands:
docker login aiflprodweacr.azurecr.io -u *** -p **
docker pull aiflprodweacr.azurecr.io/uipath-ocr:latest
- Run using CPUs
docker run -d -p 5000:80 aiflprodweacr.azurecr.io/uipath-ocr:latest LicenseAgreement=accept
- Run using GPU
docker run -d -p 5000:80 --gpus all aiflprodweacr.azurecr.io/uipath-ocr:latest LicenseAgreement=accept
- In AI Center, when creating a new ML Package, at the bottom of the screen there is the OCR configuration section where you can define the OCR Engine type, the OCR URL, and the OCR Key. The OCR Key is the API Key you obtain from the Licenses section of your Automation Cloud account.
Running on the same machine as AI Fabric
UiPath Document OCR container and Omnipage OCR container cannot run on the same machine as AI Center on-premises.
The Omnipage docker container is intended to be used only with Data Manager, for importing documents in languages that UiPath Document OCR does not yet support.
Run these commands:
docker login aiflprodweacr.azurecr.io -u *** -p ***
docker pull aiflprodweacr.azurecr.io/omnipage-ocr:latest
docker run -d -p 5100:80 aiflprodweacr.azurecr.io/omnipage-ocr:latest LicenseAgreement=accept
The endpoint can be obtained from the Google Cloud Platform documentation. The ApiKey can be obtained from your Google Cloud Platform Console if you have a Google Cloud Vision service in your subscription.
Applicable to both Azure and on-premises container endpoints.
In the case of Azure services, you need to provide both the Endpoint and the ApiKey.
In the case of on-premises container endpoints, API Key is not necessary.
The table below shows how to configure the six supported OCR engine types in both Data Manager and AI Center.
ocr.methodargument corresponds to the OCR Engine dropdown in the ML Package creation view in AI Center.
UiPath Automation Cloud
UiPath Automation Cloud
GCP Console API Key
Microsoft Read 2.0 On-Prem
Microsoft Read 2.0 Azure
API Key for your resource from Azure Portal
Microsoft Read 3.1 On-Prem
Microsoft Read 3.1 Azure
API Key for your resource from Azure Portal
Updated 2 months ago