2023.1:Batch Process (Object): Difference between revisions
added links to other articles and slightly adjusted formatting // via Wikitext Extension for VSCode |
No edit summary |
||
Line 1: | Line 1: | ||
<section begin="glossary" /> | <section begin="glossary" /> | ||
<blockquote> | <blockquote> | ||
Line 5: | Line 4: | ||
</blockquote> | </blockquote> | ||
<section end="glossary" /> | <section end="glossary" /> | ||
'''Batch Processes''' are highly configurable and reusable any time a new '''Batch''' is created. They are comprised of '''[[Batch Process | '''Batch Processes''' are highly configurable and reusable any time a new '''Batch''' is created. They are comprised of '''[[#Batch Process Steps|Batch Process Steps]]''' which reference different Grooper '''[[Activity|Activities]]''' to perform document processing tasks. | ||
== About == | == About == | ||
A '''Batch Process''' defines a repeatable sequence of steps which achieve a specific information processing objective in '''Grooper'''. | |||
'''Grooper’s''' goal is to automate the process of ''Acquiring'', ''Conditioning'', ''Organizing'', ''Collecting'' and ''Delivering'' data from documents. There are many objects in '''Grooper''' that facilitate these '''[[Five Phases of Grooper|Five Phases]]''' of document data acquisition, but it is the '''Batch Process''' that is responsible for determining the flow of documents and accomplishing automation within a '''Grooper''' system. A '''Batch Process''' acts as the assembly line that takes raw documents and converts them into deliverable data. | |||
A '''Batch Process''' object has little meaningful configuration on itself and subsequently does nothing on its own. Instead, it acts as a container for one or more '''Batch Process Steps''', which are configured to execute activities, also known as tasks. | |||
As you build out a '''Batch Process''' you will add '''Batch Process Steps''' and configure them with activities. '''Activities''' may represent automated system tasks, or human-attended tasks which require operator interaction. Collectively, these steps represent a workflow process through which '''Batches''' of a particular class will travel. While most of the configuration items on '''Batch Process Steps''' are specific to their function, all '''Batch Process Steps''' may have either a '''[[Processing Queue]]''' or a '''[[Review Queue]]''' assigned, so that '''Grooper''' knows by which cores or by which individuals that step will be processed. | |||
Upon completion of this configuration, you publish the '''Batch Process''' which places a read-only copy of the '''Batch Process''' into the "Processes" branch of the '''Grooper''' '''[[Node Tree]]'''. Doing so exposes it to be assigned to '''Batches''' created in "Production". This, in turn, allows the tasks of the '''Batch Process Steps''' to be submitted to their configured queues, either '''Processing Queue''' or '''Review Queue'''. '''Batch Processes''' automatically submit tasks for their active step, which get picked up by either an '''[[Activity Processing (Service)|Activity Processing Service]]''' or a human reviewer, depending on task type. If a '''Batch Process''' does not have any attended review activities, it generally processes each step sequentially in a completely unattended fashion. | |||
Once a '''Batch Process''' has been published, all new '''Batches''' will use the current published version. When changes are made to a '''Batch Process''' and a new version is published, the changes will apply to new '''Batches''' created using that '''Batch Process''' but will not impact existing Batches already in progress. One can, however, manually apply the latest published version of a '''Batch Process''' to an existing '''Batch''' by pausing and updating said '''Batch'''. | |||
It is also possible to un-publish a published Batch Process, thus making it unavailable to newly created production Batches. | |||
=== Batch Process Steps === | === Batch Process Steps === | ||
'''Batch Process Steps''' are objects within a '''Batch Process''' that are assigned an '''Activity''' which is a type of processing to be executed on all or a portion of a '''Batch'''. Activities generally fall into one of two categories of activity types: | |||
* Attended | |||
* Unattended | |||
Attended activities, such as '''[[Review (Activity)|Review]]''', are completed by human reviewers and are assigned via '''Review Queues'''. Unattended activities, such as '''[[Image Processing (Activity)|IP processing]]''', '''[[Recognize (Activity)|Recognize]]''', and '''[[Classify (Activity)|Classification]]''', are completed by '''Activity Processing Services''' and are assigned via '''Processing Queues'''. '''Batch Process Steps''' also allow for unit testing of their configured activity on the '''Design''' page via their respective “Activity Tester” tab. | |||
'''Batch Process | As a '''Batch Process''' progresses through its individual steps, each step creates a series of '''[[Task|Tasks]]''' that are submitted to either the designated '''Processing Queue''' or '''Review Queue'''. Once the '''Activity Processors''' or human reviewers pick up and complete all tasks from their respective queues for an individual step, the '''Batch Process''' moves to the next step. '''Batch Processes''' will not submit tasks for a step before all tasks from the previous step have been completed. | ||
'''Batch Process Steps''' are added to '''Batch Processes''' in a top-to-bottom linear fashion, although they may be re-ordered at any time. As such, the execution of these steps is also done in a linear fashion, from top to bottom. The only exception to this is if a '''Batch Process Step''' is configured with a "[[Expressions_Cookbook#Should_Submit_Expression|Should Submit]]" expression. These are simple expressions written on '''Batch Process Steps''' that determine whether the activity of the step should be executed, and upon completion what the next step in the Batch Process should be. "Should Submit Expressions" can send the contents of the '''Batch''' being processed to any '''Batch Process Step''' in any (published) '''Batch Process''', including entirely different '''Batch Processes''', and are powerful tools for configuring workflows for exception queues, requesting additional review, or several other functions. | |||
==== Scope ==== | |||
The "scope" of an '''Activity''' is an important topic to understand. As such, please visit the article on the topic of '''[[Scope]]''' to get a full understanding of the issue. | |||
Revision as of 14:24, 21 March 2024
Batch Processes are the set of processing instructions given to a Batch.
Batch Processes are highly configurable and reusable any time a new Batch is created. They are comprised of Batch Process Steps which reference different Grooper Activities to perform document processing tasks.
About
A Batch Process defines a repeatable sequence of steps which achieve a specific information processing objective in Grooper.
Grooper’s goal is to automate the process of Acquiring, Conditioning, Organizing, Collecting and Delivering data from documents. There are many objects in Grooper that facilitate these Five Phases of document data acquisition, but it is the Batch Process that is responsible for determining the flow of documents and accomplishing automation within a Grooper system. A Batch Process acts as the assembly line that takes raw documents and converts them into deliverable data.
A Batch Process object has little meaningful configuration on itself and subsequently does nothing on its own. Instead, it acts as a container for one or more Batch Process Steps, which are configured to execute activities, also known as tasks.
As you build out a Batch Process you will add Batch Process Steps and configure them with activities. Activities may represent automated system tasks, or human-attended tasks which require operator interaction. Collectively, these steps represent a workflow process through which Batches of a particular class will travel. While most of the configuration items on Batch Process Steps are specific to their function, all Batch Process Steps may have either a Processing Queue or a Review Queue assigned, so that Grooper knows by which cores or by which individuals that step will be processed.
Upon completion of this configuration, you publish the Batch Process which places a read-only copy of the Batch Process into the "Processes" branch of the Grooper Node Tree. Doing so exposes it to be assigned to Batches created in "Production". This, in turn, allows the tasks of the Batch Process Steps to be submitted to their configured queues, either Processing Queue or Review Queue. Batch Processes automatically submit tasks for their active step, which get picked up by either an Activity Processing Service or a human reviewer, depending on task type. If a Batch Process does not have any attended review activities, it generally processes each step sequentially in a completely unattended fashion.
Once a Batch Process has been published, all new Batches will use the current published version. When changes are made to a Batch Process and a new version is published, the changes will apply to new Batches created using that Batch Process but will not impact existing Batches already in progress. One can, however, manually apply the latest published version of a Batch Process to an existing Batch by pausing and updating said Batch.
It is also possible to un-publish a published Batch Process, thus making it unavailable to newly created production Batches.
Batch Process Steps
Batch Process Steps are objects within a Batch Process that are assigned an Activity which is a type of processing to be executed on all or a portion of a Batch. Activities generally fall into one of two categories of activity types:
- Attended
- Unattended
Attended activities, such as Review, are completed by human reviewers and are assigned via Review Queues. Unattended activities, such as IP processing, Recognize, and Classification, are completed by Activity Processing Services and are assigned via Processing Queues. Batch Process Steps also allow for unit testing of their configured activity on the Design page via their respective “Activity Tester” tab.
As a Batch Process progresses through its individual steps, each step creates a series of Tasks that are submitted to either the designated Processing Queue or Review Queue. Once the Activity Processors or human reviewers pick up and complete all tasks from their respective queues for an individual step, the Batch Process moves to the next step. Batch Processes will not submit tasks for a step before all tasks from the previous step have been completed.
Batch Process Steps are added to Batch Processes in a top-to-bottom linear fashion, although they may be re-ordered at any time. As such, the execution of these steps is also done in a linear fashion, from top to bottom. The only exception to this is if a Batch Process Step is configured with a "Should Submit" expression. These are simple expressions written on Batch Process Steps that determine whether the activity of the step should be executed, and upon completion what the next step in the Batch Process should be. "Should Submit Expressions" can send the contents of the Batch being processed to any Batch Process Step in any (published) Batch Process, including entirely different Batch Processes, and are powerful tools for configuring workflows for exception queues, requesting additional review, or several other functions.
Scope
The "scope" of an Activity is an important topic to understand. As such, please visit the article on the topic of Scope to get a full understanding of the issue.