Best Practices and Known Limitations

Best Practices

  • Single Labeler pool per project - In the BYOL scenario, although the HITL Setup UI supports creating new labeler pools for each processor, it is recommended to use a single labeler pool across all processors in a project to keep things simple. This is because users from multiple labeler pools can still be assigned to the same task, and assigning a labeler pool to a task doesn't restrict the Labeling Manager from assigning other labelers to that task.
  • Multiple tasks/document-type - Multiple tasks may be required to process a single document-type. This is required in the following scenarios:
    • Labelers with different skills or credentials required to review/validate different fields of the same document.
    • Documents with different fields (e.g. invoices from different vendors) may need different schema to be validated, hence need to be routed to different tasks.
    • Documents from different customers have different labeler pools working on them (e.g. invoices from different customers, languages or countries).
    In this scenario, we recommend creating multiple processors (and tasks) and posting the documents to the appropriate task. [A classifier may be required to classify these documents and post to the correct processor].
  • Limit Review to the fields required (vs all extracted fields on page), to save Review time and cost - The Answer time/page scales with the number of fields to be reviewed. The Google labeler costs are based on the # of fields reviewed. Therefore it is recommended to limit the fields to be reviewed to the ones used in downstream business process.
    • For example, an Invoice might have 30+ fields but you may want to limit Review to only 4-5 fields that are important for settling the invoice.
  • Naming HITL-enabled Processors - The HITL task name is the same as the processor name. It is recommended to use a name that is understood by the labeling managers and labelers, and easily distinguished from other tasks they would be working on.
  • Prioritizing Tasks - If a labeler is assigned to multiple tasks, they process these sequentially. If a labeler needs to switch tasks (e.g. to respond to a customer escalation or meet an SLO), the Labeling Manager should un-assign the current task and assign the High Priority task to the labeler(s) using the Assignments tab in the Labeling Manager Console.
    • The Labelers X Tasks grid in the Console (shown below) allows the Labeling Manager to see all the labeler assignments to various tasks and to fine-tune which labeler works on which task in order to support the task priorities.
  • Setting Validation Filters Validation filters
  • Rejected documents - Rejected state of the document along with the Reason code [e.g. different doc-type, forged, glare, blurry, edge cut off, etc] is captured in the Document JSON files (TextChange construct for all changes, HumanReview for reject reason), output in the configured Cloud Storage bucket. It is recommended to use this metadata to separate the rejected documents.
  • Handling large document ingest volume - Current quotas limit 600 online document requests/minute and upto 5 concurrent offline (batch) requests, each handling upto 50 documents. This is expected to handle 36000 online requests/hour and upto 15000 offline (batch) document requests/hour [since each batch handles upto 50 documents]. If higher volumes are required, please contact Support.
  • Managing human validation costs and time - Human validation can get expensive, whether you use your own labelers or Google labelers. The time spent per page scales with the # of fields reviewed. Google Workforce (in Private Preview) is billed per label reviewed. You can control your review effort and cost by limiting HITL to the important fields that need to be verified and corrected. To do so, use the Label-level Validation filters in the Human Review configuration screen.
  • Single Sign-on access with Enterprise credentials - The Labeler Workbench and Labeling Manager Console support Google Workforce or Gmail credentials. If single sign-on with enterprise credentials is required, please create Basic Google Workforce accounts for your labeler workforce. Google Workforce supports SAML and you can configure your SSO provider to sign onto the Labeler Workbench or Labeling Manager Console with enterprise credentials.

Known Limitations and Workarounds

Following are some known limitations and possible workarounds. We are currently addressing the limitations.

  • The bounding box must capture some text - If HITL is used to annotate documents for training, any bounding box drawn must detect some OCR. The value should not be empty. Manually entering a value does not fix this issue.
  • New Labeler Pool
  • VPC-SC - Customers with VPC-SC activated in their HITL project may not be able to use Google labelers for HITL Review.
  • Post-review Latency - After a document is reviewed, it may take up to 30 minutes for it to be deposited in the pre-configured Cloud Storage folder.
  • 10 page limit - HITL review is limited to 10 pages for Invoices. Invoices larger than 10 pages are not sent for HITL review.
  • Single-labeler workflow - The current workflow tasks are limited to a single labeler review. If the document needs to be reviewed by multiple reviewers (for QA, fraud prevention etc), please upload the reviewed documents to a second processor in the mode "Skip processor, send all docs for HITL Review", so they are reviewed.
  • Edit Labeling Managers of Labeling pool - In BYOL tasks, labeling managers cannot be added or removed to a labeling pool once it's created. Workaround: When creating a new labeling pool,
    • Please assign more than 1 labeling managers, so that if one leaves before the task completes, the other(s) can manage the pool and task assignments.
    • Individuals that need to view the labeler or task analytics dashboards in the Labeling Manager UI should be added as Pool Managers when creating the pool.
  • Canceling a Task - Once started, a task cannot be cancelled. The work-around is for the Labeling Manager to pause the task or unassign labelers from the task in the Labeling Manager Console.
  • Assigning a Task to an entire Labeler Pool in a single click - isn't currently supported but will be supported shortly. The work-around is to select all the labelers and assigning the task to them.
  • New Labeler Pool
  • BYOL Labelers with Google Workspace accounts - If BYOL labeling managers and labelers have Google Workspace accounts, the Google Workspace Admin may need to enable "Other Services" at the bottom of the Google Services page (screenshots below), in order to enable access to the Labeling Manager Console and Labeler Workbench. Google Workspace