OCR für bengalische Geburtsurkunden bei bKash
Eine bislang einzigartige mehrsprachige OCR für bangladeschische Geburtsurkunden, betrieben auf NVIDIA Triton für das Kunden-Onboarding bei bKash.
Überblick
- Rolle
- ML Engineer, später Senior ML Engineer (Data Science)
- Zeitraum
- Apr. 2023 – Okt. 2025
- Technologien
- Python · ONNX Runtime · NVIDIA Triton
- Links
- Nicht öffentlich (Arbeitsprojekt)
3×
erfolgreiche Onboardings pro Woche, höchstens
gegenüber der Zeit vor den neuen Dokumenttypen
+8%
OCR-Leistung
gegenüber dem vorherigen Produktivmodell
100k+
Anfragen pro Woche
betrieben auf Triton mit ONNX Runtime
Arbeitsprojekt. Details sind verallgemeinert – ohne proprietären Code, Daten oder Screenshots.
Auf dieser Seite
Problem
Das Kunden-Onboarding bei bKash hängt davon ab, Ausweisdokumente zuverlässig zu lesen. Bangladeschische Geburtsurkunden mischen bengalischen und englischen Text und existieren in mehreren Layouts – keine fertige OCR konnte sie zuverlässig lesen. Eine Urkunde, die das System nicht lesen kann, ist ein Onboarding, das nicht abgeschlossen wird.
Rahmenbedingungen
- Zwei Schriften auf einer Seite. Bengalischer und lateinischer Text stehen nebeneinander, also mussten Erkennung und Texterkennung beide beherrschen.
- Vielfalt der Layouts. Urkunden gibt es in mehreren Formaten. Neue Formate zu unterstützen, erwies sich später als größter einzelner Gewinn.
- Produktiver Maßstab. Der Dienst ist Teil eines laufenden Onboarding-Prozesses und verarbeitet über 100.000 Anfragen pro Woche.
- Sensible Daten. Geburtsurkunden sind persönliche Ausweisdokumente. Diese Seite enthält keine echten Beispiele oder Screenshots, und das Diagramm ist nachgezeichnet und verallgemeinert.
Vorgehen und Architektur
Bild der Urkunde
Eingabe
Aufgenommen beim Kunden-Onboarding
- NVIDIA Triton · ONNX Runtime
Vorverarbeitung
Stufe 1
Ausrichtung, Zuschnitt und Kontrast
Texterkennung
Stufe 2
Textzeilen und Felder lokalisieren
Zeichenerkennung
Stufe 3
Bengalischer und englischer Text nebeneinander
Feldextraktion & Prüfung
Stufe 4
Text Feldern zuordnen und Formate prüfen
Onboarding-Dienst
Ausgabe
Strukturierte Felder für die Kundenprüfung
Beschreibung des Diagramms
Ein Urkundenbild aus dem Onboarding durchläuft Vorverarbeitung, Texterkennung und bengalisch-englische Zeichenerkennung. Diese Stufen laufen als ONNX-Modelle auf NVIDIA Triton. Der erkannte Text wird strukturierten Feldern zugeordnet und geprüft, bevor er den Onboarding-Dienst erreicht.
Entscheidung
Eine eigene mehrsprachige Pipeline bauen
Erkennung, Zeichenerkennung und Feldextraktion wurden um die Urkunde selbst herum entworfen: zwei Schriften, feste Felder und eine bekannte Menge an Layouts.
Ebenfalls erwogen
- Eine Allzweck-OCR-EngineKeine verfügbare Lösung las die Mischung aus Bengalisch und Englisch zuverlässig – deshalb war das Ergebnis eine Premiere.
Entscheidung
Modelle nach ONNX exportieren und auf NVIDIA Triton betreiben
Triton betreibt ONNX-Runtime-Modelle hinter einer standardisierten Inferenz-API, mit dynamischem Batching und Modellversionierung. Das hat die OCR auf über 100.000 Anfragen pro Woche skalieren lassen.
Ebenfalls erwogen
- Die Modelle im Anwendungsprozess ausführenKoppelt die Modellausführung an die Web-Schicht und lässt Batching, Versionierung und Skalierung als Eigenbau zurück.
Entscheidung
Abdeckung durch neue Dokumenttypen erweitern
Als Senior ML Engineer habe ich das System um neue Dokumenttypen erweitert. Das steigerte die OCR-Leistung um 8 % und hat die erfolgreichen Onboardings pro Woche bis zu verdreifacht.
Ebenfalls erwogen
- Das bestehende Modell nur auf den ursprünglichen Layouts verbessernUrkunden in nicht unterstützten Layouts scheiterten, egal wie gut die bekannten gelesen wurden.
Ergebnisse
3×
erfolgreiche Kunden-Onboardings pro Woche, höchstens
Basis: erfolgreiche Onboardings pro Woche vor den neuen Dokumenttypen
+8%
OCR-Leistung nach Ergänzung neuer Dokumenttypen
Basis: das vorherige Produktivmodell
100k+
Anfragen pro Woche im Produktivbetrieb
Betrieben auf NVIDIA Triton mit ONNX Runtime
Die erste Version machte das Onboarding mit Geburtsurkunden durchgängig möglich. Die Erweiterung um neue Dokumenttypen im Jahr 2025 steigerte die OCR-Leistung gegenüber dem vorherigen Produktivmodell um 8 % und hat die erfolgreichen Kunden-Onboardings pro Woche bis zu verdreifacht.
Was ich heute anders machen würde
- Von Anfang an einen Evaluationsdatensatz pro Dokumenttyp aufbauen, damit jedes neue Layout eine Vorher-nachher-Zahl bekommt, statt erst im Betrieb aufzufallen.
- Genauigkeit auf Feldebene neben dem Onboarding-Erfolg berichten, damit ein Rückschritt in einem Feld sichtbar wird, bevor er sich in den Geschäftszahlen zeigt.