- Overview
- Document Processing Contracts
- Release notes
- About the Document Processing Contracts
- Box Class
- IPersistedActivity interface
- PrettyBoxConverter Class
- IClassifierActivity Interface
- IClassifierCapabilitiesProvider Interface
- ClassifierDocumentType Class
- ClassifierResult Class
- ClassifierCodeActivity Class
- ClassifierNativeActivity Class
- ClassifierAsyncCodeActivity Class
- ClassifierDocumentTypeCapability Class
- ContentValidationData Class
- EvaluatedBusinessRulesForFieldValue Class
- EvaluatedBusinessRuleDetails Class
- ExtractorAsyncCodeActivity Class
- ExtractorCodeActivity Class
- ExtractorDocumentType Class
- ExtractorDocumentTypeCapabilities Class
- ExtractorFieldCapability Class
- ExtractorNativeActivity Class
- ExtractorResult Class
- FieldValue Class
- FieldValueResult Class
- ICapabilitiesProvider Interface
- IExtractorActivity Interface
- ExtractorPayload Class
- DocumentActionPriority Enum
- DocumentActionData Class
- DocumentActionStatus Enum
- DocumentActionType Enum
- DocumentClassificationActionData Class
- DocumentValidationActionData Class
- UserData Class
- Document Class
- DocumentSplittingResult Class
- DomExtensions Class
- Page Class
- PageSection Class
- Polygon Class
- PolygonConverter Class
- Metadata Class
- WordGroup Class
- Word Class
- ProcessingSource Enum
- ResultsTableCell Class
- ResultsTableValue Class
- ResultsTableColumnInfo Class
- ResultsTable Class
- Rotation Enum
- Rule Class
- RuleResult Class
- RuleSet Class
- RuleSetResult Class
- SectionType Enum
- WordGroupType Enum
- IDocumentTextProjection Interface
- ClassificationResult Class
- ExtractionResult Class
- ResultsDocument Class
- ResultsDocumentBounds Class
- ResultsDataPoint Class
- ResultsValue Class
- ResultsContentReference Class
- ResultsValueTokens Class
- ResultsDerivedField Class
- ResultsDataSource Enum
- ResultConstants Class
- SimpleFieldValue Class
- TableFieldValue Class
- DocumentGroup Class
- DocumentTaxonomy Class
- DocumentType Class
- Field Class
- FieldType Enum
- FieldValueDetails Class
- LanguageInfo Class
- MetadataEntry Class
- TextType Enum
- TypeField Class
- ITrackingActivity Interface
- ITrainableActivity Interface
- ITrainableClassifierActivity Interface
- ITrainableExtractorActivity Interface
- TrainableClassifierAsyncCodeActivity Class
- TrainableClassifierCodeActivity Class
- TrainableClassifierNativeActivity Class
- TrainableExtractorAsyncCodeActivity Class
- TrainableExtractorCodeActivity Class
- TrainableExtractorNativeActivity Class
- BasicDataPoint Class - preview
- ExtractionResultHandler Class - preview
- Document Understanding ML
- Document Understanding OCR Local Server
- Document Understanding
- Release notes
- About the Document Understanding activity package
- Project compatibility
- Configuring external connection
- Set PDF Password
- Merge PDFs
- Get PDF Page Count
- Extract PDF Text
- Extract PDF Images
- Extract PDF Page Range
- Extract Document Data
- Create Validation Task and Wait
- Wait for Validation Task and Resume
- Create Validation Task
- Classify Document
- Create Classification Validation Task
- Create Classification Validation Task and Wait
- Wait for Classification Validation Task and Resume
- Intelligent OCR
- Release notes
- About the IntelligentOCR activity package
- Project compatibility
- Load Taxonomy
- Digitize Document
- Classify Document Scope
- Keyword Based Classifier
- Document Understanding Project Classifier
- Intelligent Keyword Classifier
- Create Document Classification Action
- Create Document Validation Artifacts
- Retrieve Document Validation Artifacts
- Wait For Document Classification Action And Resume
- Train Classifiers Scope
- Keyword Based Classifier Trainer
- Intelligent Keyword Classifier Trainer
- Data Extraction Scope
- Document Understanding Project Extractor
- Document Understanding Project Extractor Trainer
- RegEx Based Extractor
- Form Extractor
- Intelligent Form Extractor
- Redact Document
- Create Document Validation Action
- Wait For Document Validation Action And Resume
- Train Extractors Scope
- Export Extraction Results
- Machine Learning Extractor
- Machine Learning Extractor Trainer
- Machine Learning Classifier
- Machine Learning Classifier Trainer
- Generative Classifier
- Generative Extractor
- Configuring Authentication
- ML Services
- OCR
- OCR Contracts
- Release notes
- About the OCR Contracts
- Project compatibility
- IOCRActivity Interface
- OCRAsyncCodeActivity Class
- OCRCodeActivity Class
- OCRNativeActivity Class
- Character Class
- OCRResult Class
- Word Class
- FontStyles Enum
- OCRRotation Enum
- OCRCapabilities Class
- OCRScrapeBase Class
- OCRScrapeFactory Class
- ScrapeControlBase Class
- ScrapeEngineUsages Enum
- ScrapeEngineBase
- ScrapeEngineFactory Class
- ScrapeEngineProvider Class
- OmniPage
- PDF
- [Unlisted] Abbyy
- [Unlisted] Abbyy Embedded

Document Understanding activities
Intelligent Keyword Classifier
UiPath.IntelligentOCR.Activities.DocumentClassification.IntelligentKeywordClassifier
Description
This activity enables any user to classify and split document packages into individual document types. You can only use it together with the Classify Document Scope activity.
Project compatibility
Windows-Legacy | Windows
Configuration
Designer panel
-
LearningFilePath - The full path to the file containing the classifier data. This field supports only strings and
Stringvariables.Note:Only one of the above parameters can be set at a time. You can use either the LearningData string or the LearningFilePath string.
The LearningFilePath specifies the locations from where to retrieve the classifier data.
The LearningData contains the actual information of that classifier.
-
Endpoint - The URL to UiPath® server. By default, the endpoint is
https://du.uipath.com/svc/intelligentkeywords. For more information about endpoints, visit Document Understanding Public Endpoints. -
ApiKey - Specifies the API key of the account. The API Key field is automatically pre-populated if defined in local project settings or in the Document Understanding framework.
Properties panel
Common
- DisplayName - The display name of the activity.
Input
-
ApiKey - Specifies the API key of the account. The API Key field is automatically pre-populated if defined in local project settings or in the Document Understanding framework.
-
Endpoint - The URL to UiPath® server. By default, the endpoint is
https://du.uipath.com/svc/intelligentkeywords. For more information about endpoints, visit Document Understanding Public Endpoints. -
LearningData - The string containing the serialized classifier data. This field supports only strings and
Stringvariables. -
LearningFilePath - The full path to the file containing the classifier data. This field supports only strings and
Stringvariables.Note:Only one of the above parameters can be set at a time. You can use either the LearningData string or the LearningFilePath string.
The LearningFilePath specifies the locations from where to retrieve the classifier data.
The LearningData contains the actual information of that classifier.
-
Send documents - When enabled, it allows UiPath® to save the referenced document to improve the algorithm performance. Disabling this feature prevents UiPath® from storing the documents. Regardless of this setting, the algorithm's operation remains unaffected.
Misc
- Private - If selected, the values of variables and arguments are no longer logged at Verbose level.
Note:
The best practice is to create an empty
.jsonfile at that location, then use its name in the LearningFilePath field.
Splitting
- PerformDocumentSplitting - If left unchecked, the model will not perform document splitting, only classification.
- UsePageNumbers - If checked, the mode will use the page numbers feature to decide where to split documents. Use it in case page numbers might improve splitting results.
For optimized splitting performance, use version 6.9.0 or higher.
Using the Manage Learning Wizard
Access the Manage Learning wizard to configure the Intelligent Keyword Classifier activity. The same wizard can be used for reviewing data collected during the document classification training phase, by opening the same wizard with an updated learning file path.
This wizard allows you to configure and manage the training data used by the Intelligent Keyword Classifier activity for identifying the document type and classifying the documents. It was created to suit the need for editing a file path. If a Learning Data option with a variable is used instead, then you are asked if you either want to edit a specific file path or to abort this operation.
The Manage Learning wizard only works when the activity is configured with a Learning File Path string. It does not work with a Learning File Path set as a variable input, or with a LearningData string input.
-
Add an Intelligent Keyword Classifier or Intelligent Keyword Classifier Trainer activity to your workflow.
-
Configure your Intelligent Keyword Classifier activity by adding the path of a
.jsonfile. Take the following information into consideration, when configuring the classifier:- If no path is provided and the Manage Learning option is selected, then a pop-up is displayed, asking for a Learning File Path input. Once the path is provided, the wizard opens.
- A variable can be added instead of a
.jsonfile, but, because the wizard cannot apply the learning pattern to a LearningData variable, it asks for a specific file path that can be edited.
-
Select Manage Learning.
The Intelligent Keyword Classifier wizard window opens.
Figure 1. Overview of the Manage Learning section of the Intelligent Keyword Classifier wizard

-
If no path is provided and the Manage Learning option is selected, then a pop-up is displayed, asking for a LearningFilePath. Once the path is provided, the wizard opens.
Figure 2. The Warning pop-up displayed if no path is provided and the Manage Learning option is selected
Note:Even if no
.jsonfile is available, you can add the name of a new.jsonfile straight into the activity and the.jsonfile is automatically created inside the specified folder.
In the Manage Learning wizard you can see if a document type has been trained or not by the following labels displayed next to them: Trained on X files, or Start Training. The following screenshot shows a document type that has been trained, one that hasn't, and one that has been trained, and selected, so it can be viewed or deleted.
Figure 3. Document types and their training status within the Manage Learning section of the Intelligent Keyword Classifier

Training data
For document types that have not been trained yet, design-time training can be performed using the Start Training option. For document types that already have some training, you can either delete it to start over, by using the
remove option, or perform extra training (cumulative to the already existing one) using the edit
option.
Training files to be used must contain a single document type instance per file. Do not run design-time training on files that contain two or more document types, as your training data will be erroneous.
Once a new training has been initiated, a new screen is displayed asking for the training files and the OCR engine that should be used. The default OCR engine is UiPath® Document OCR. Each OCR engine comes with its own set of custom options.
Figure 4. The wizard that appears after selecting Start Training option

The following OCR engines do not support rotated documents and should not be used to process such documents:
- Microsoft OCR
- Tesseract OCR
The Apply OCR on PDF option establishes if the OCR process should be applied or not to PDF documents. Three options are available in the dropdown list:
- True: If set to True, the OCR is applied to all PDF pages of the document.
- False: If set to False, only digitally typed text is extracted.
- Auto: The default value is Auto, determining if the document requires to apply the OCR algorithm depending on the input document.
If the UiPath.IntelligentOCR.Activities package has been updated to v5.1.0, then the ForceApplyOCR parameter has been replaced with the ApplyOcrOnPDF. Here is the compatibility between the old and new parameters:
- ForceApplyOCR = True is replaced by ApplyOcrOnPDF = Yes
- ForceApplyOCR = False is replaced by ApplyOcrOnPDF = Auto
- ForceApplyOCR = empty is replaced by ApplyOcrOnPDF = Auto
- ForceApplyOCR = Your defined variable is replaced by ApplyOcrOnPDF = Auto
Exporting training data
Only training data from document types that have been trained is eligible for export. Document types that have not been trained cannot be selected.
Figure 5. Document types in the Intelligent Keyword Classifier which have not been trained, hence the Export option is not available

You can export training data following these steps:
-
Select document types that have been trained.
-
Select Export.
If you have unsaved changes, the following message is displayed: "You cannot export while having unsaved changes. Do you want to automatically save before expoerting?". Select Yes to continue the exporting process.
Figure 6. The Save changes message that shows if you have any unsaved changes before exporting training data

-
Save the training data archive with the desired name.
A message is displayed stating how many document type training data sets were exported. For example: "4 word vector(s) exported".
Figure 7. Example of the message that displays how many document type training data sets were exported

-
Select OK to return to the main screen of the wizard.
Importing training data
You can import training data following these steps:
-
Select Import.
-
Select the training data archive and then select Open.
-
Select the document types you want.
Figure 8. Selected document types in the Import Word Vectors section

-
Select Import.
The training data is imported.
Figure 9. The previously selected document types for importing are displayed in the Manage Learning section

The following table shows the messages that are displayed when importing training data, based on the import type:
Table 1. The messages that are displayed for various import types
| Message displayed | |
|---|---|
| New Document Type and Word Vectors | This document type will be added to the taxonomy. |
| New Word Vector (none was previously defined) | No message is displayed. |
| Identical Document Type and Word Vector | The word vector for this document type will be overwritten. |
Document Understanding Integration
The Intelligent Keyword Classifier activity is part of the Document Understanding solutions. Visit the Document Understanding Guide for more information.