AutomationProduction

SQB AI Ijro

A fully automated pipeline that ingests, analyses and routes official documents using OCR, LLM and vector search

8
Document types
30+
Bank departments
22
Status stages
Technology stack
PythonFlaskRabbitMQPaddleOCRLLMFAISSPostgreSQLAngular
01

Overview

AI-Ijro is an AI-powered document-processing system. It ingests official documents, reads their text via OCR, detects the document type, extracts the needed fields, derives tasks, and routes them to the responsible bank departments. It runs on an asynchronous architecture as a 5-stage pipeline over RabbitMQ - each stage an independent consumer, giving high reliability and scalability.

02

The problem we solve

Traditionally, incoming documents are read and routed by hand:

  • Reading and processing documents by hand is slow.
  • Extracting tasks is error-prone.
  • Routing to departments is subjective and delayed.
  • The variety of types and formats complicates processing.
  • Process transparency and control are limited.
  • Manual integration with Platon EDMS is slow and error-prone.
03

The 5-stage pipeline

01

1. OCR - text recognition

PaddleOCR reads the document (PDF/DOCX/image); supports Russian and Uzbek, processes each page separately.

02

2. Document type detection

An LLM classifies the document into one of 8 types (appeal, resolution, decree, letter, application, etc.).

03

3. Metadata extraction

A Factory pattern picks a type-specific extractor: number, date, sender, region, language and more; mapped to Platon IDs.

04

4. Task extraction

A type-specific sorter strategy (Filter, Numbered, Court, etc.) extracts the tasks.

05

5. Department routing

FAISS vector search + LLM (or a fine-tuned BERT) routes each task to one of 30+ bank departments.

04

AI & ML capabilities

01

LLM

For typing, metadata, tasks and routing. Via an OpenAI-compatible API: DeepSeek, Qwen3-32B.

02

PaddleOCR

Open-source OCR - recognises Russian and Uzbek documents with high accuracy.

03

FAISS vector search

Embeds department descriptions and searches by cosine similarity.

04

BERT classifier

A fine-tuned multi-label model - classifies tasks across 30+ departments.

05

Fuzzy matching (RapidFuzz)

Matches place and registry names to Platon records (85% threshold, Cyrillic normalisation).

05

Recognised document types

Appeal
Citizens' appeals and complaints
Resolution
Cabinet, Presidential and Central Bank resolutions
Task statement
Documents stating assigned tasks
Decree
Presidential decrees
Letter
Official letters (banks, ministries)
Application
Employee applications
Notice
Court and enforcement notices
Other
Documents of other types
06

Scale

8
Document types
30+
Bank departments
22
Statuses
~50
Consumer replicas
5
Pipeline stages
07

Results

  • Processing time dropped from 10-15 minutes to a few seconds.
  • Human error is minimised - the AI is consistent.
  • Each document's full lifecycle is tracked across 22 statuses.
  • Tasks are auto-routed to 30+ bank departments.
  • Automatic Platon EDMS integration - results return immediately.
  • Real-time monitoring over WebSocket.

Want to know more about this project?

Reach out to the SQB AI team - we'll share the details and show the platform in action.

Contact us