Kyc aml · Production

How Grab built a custom vision LLM to improve document processing for eKYC

The problem

Traditional OCR systems struggled with the diversity of Southeast Asian languages and document formats, while proprietary LLMs produced errors, hallucinations, and high latency, and open-source Vision LLMs lacked sufficient accuracy for production use in eKYC workflows.

First attempt

LoRA fine-tuning of Qwen2VL showed promising results for Latin-script documents but still struggled with Thai and Vietnamese documents and unstructured layouts with small, dense text, because open-source Vision LLMs lacked visual text in SEA languages during vision encoder training.

Workflow diagram · grounded in source
1
User document submission
Trigger
User-submitted documents such as ID cards, driver's licenses, and registration certificates initiate the eKYC process.
source quote
“accurate extraction of information from user-submitted documents such as identification (ID) cards, driver's licenses, and registration certificates is a critical first step for processes like electronic know-your-customer (eKYC)”
2
Document detection and orientation
Ai action
The detection module identifies the document region and the orientation module provides a correction angle for skewed or upside-down documents.
source quote
“Detection module: Detect the region from the full picture. Orientation module: Gives correction angle (e.g. if document is upside down, 180 degrees).”
3
OCR text extraction
Ai action
The OCR module returns text values in unstructured format from the document image.
source quote
“OCR module: Returns text values in unstructured format.”
4
Key information extraction
Output
The KIE module converts unstructured text into structured JSON values.
source quote
“KIE module: Returns JSON values from unstructured text.”
5
Human review of training labels
Human review
Training data labels generated by Documint are refined by a human reviewer to achieve high label accuracy.
source quote
“The data was further refined by a human reviewer to achieve high label accuracy.”
Reported outcome

Grab's custom ~1B parameter Vision LLM achieved accuracy within 3pp of the larger 2B model, with Thai document accuracy improving +70pp and Vietnamese +40pp over baseline, while delivering latency that far outperforms traditional OCR models and external APIs.

Reported metrics
Thai document accuracy improvement+70pp from baseline
Vietnamese document accuracy improvement+40pp from baseline
Custom 1B model accuracy gap vs 2B modelwithin a 3pp accuracy gap
Model latency vs alternativesfar outperforms the 2B model, as well as traditional OCR models, as well as external APIs
Show all 6 reported metrics
Thai document accuracy improvement+70pp from baseline
Vietnamese document accuracy improvement+40pp from baseline
Custom 1B model accuracy gap vs 2B modelwithin a 3pp accuracy gap
Model latency vs alternativesfar outperforms the 2B model, as well as traditional OCR models, as well as external APIs
External API P99 vs P50 latency variance3 to 4x the P50 latency
Non-Latin accuracy drop without language-specific training stagedropped by as much as 10%
Reported stack
Qwen2.5 0.5BDocumintCommon Crawl
◆ Does this fit your context?

Compare to your context

Tell us your scale, team, and constraints. We'll show what changes at your size, what fails at your scale, and whether this case is a fit, needs adaptation, or won't scale to you. Free demo, no signup.

Compare to your context →
~30 seconds · free
Source
https://engineering.grab.com/custom-vision-llm-at-grab
Read source ↗

Frequently asked questions

What did this team achieve with this AI workflow?

Grab's custom ~1B parameter Vision LLM achieved accuracy within 3pp of the larger 2B model, with Thai document accuracy improving +70pp and Vietnamese +40pp over baseline, while delivering latency that far outperforms…

What tools did this team use?

Qwen2.5 0.5B, Documint, Common Crawl.

What results were reported?

Thai document accuracy improvement: +70pp from baseline; Vietnamese document accuracy improvement: +40pp from baseline; Custom 1B model accuracy gap vs 2B model: within a 3pp accuracy gap; Model latency vs alternatives: far outperforms the 2B model, as well as traditional OCR models, as well as external APIs (source-reported, not independently verified).

What failed first in this deployment?

LoRA fine-tuning of Qwen2VL showed promising results for Latin-script documents but still struggled with Thai and Vietnamese documents and unstructured layouts with small, dense text, because open-source Vision LLMs l…

How is this kyc aml AI workflow structured?

User document submission → Document detection and orientation → OCR text extraction → Key information extraction → Human review of training labels.

WHAT TO DO WITH THIS

Now compare it to your context

This case is one data point. Whether its pattern fits you depends on your volumes, your stack, and your exception load — that comparison is the step no case study can do for you.

Browse the Kyc aml cases →