Views
No views yet
[!IMPORTANT] We've just added Paddle OCR's PP-OCRv6 model family
.ort files are the same models pre-serialised in ONNX Runtime's native FlatBuffers format. They load 3-5x faster than the equivalent .onnx (session creation drops from ~24 ms to ~7 ms on M1) while producing byte-identical output. Load them with session: { graphOptimizationLevel: "disabled" } so ORT doesn't re-optimise the already-optimised graph.https://huggingface.co/snowfluke/ppu-paddle-ocr-models/resolve/main1const BASE = "https://huggingface.co/snowfluke/ppu-paddle-ocr-models/resolve/main";
2
3const detection = `${BASE}/detection/ort/PP-OCRv6_tiny_det.ort`;
4const recognition = `${BASE}/recognition/ort/PP-OCRv6_tiny_rec.ort`;
5const dictionary = `${BASE}/recognition/ppocrv6_dict.txt`;ppu-paddle-ocr version resolves them at runtime:1// Git LFS, subject to a bandwidth budget
2export const MODEL_BASE_URL =
3 "https://media.githubusercontent.com/media/PT-Perkasa-Pilar-Utama/ppu-paddle-ocr-models/main";
4
5// plain files, not LFS
6export const DICT_BASE_URL =
7 "https://raw.githubusercontent.com/PT-Perkasa-Pilar-Utama/ppu-paddle-ocr-models/main";Publish to Hugging Face workflow, which uploads only what changed.1.
2├── LICENSE
3├── README.md
4├── convert
5│ ├── README.md
6│ ├── main.py
7│ ├── multi
8│ │ └── japan_PP-OCRv3_mobile_rec_infer
9│ │ ├── inference.json
10│ │ ├── inference.pdiparams
11│ │ └── inference.yml
12│ ├── pyproject.toml
13│ └── uv.lock
14├── correction
15│ ├── PP-LCNet_x0_25_textline_ori.onnx
16│ ├── PP-LCNet_x1_0_doc_ori.onnx
17│ ├── PP-LCNet_x1_0_textline_ori.onnx
18│ └── UVDoc.onnx
19├── detection
20│ ├── PP-OCRv4_mobile_det_infer.onnx
21│ ├── PP-OCRv4_server_det_infer.onnx
22│ ├── PP-OCRv5_mobile_det_infer.onnx
23│ ├── PP-OCRv5_mobile_det_infer.ort
24│ ├── PP-OCRv5_server_det_infer.onnx
25│ ├── PP-OCRv6_medium_det.onnx
26│ ├── PP-OCRv6_small_det.onnx
27│ ├── PP-OCRv6_tiny_det.onnx
28│ └── ort
29│ ├── PP-OCRv6_medium_det.ort
30│ ├── PP-OCRv6_small_det.ort
31│ └── PP-OCRv6_tiny_det.ort
32├── layout
33│ ├── PP-DocLayoutV2.onnx
34│ ├── PP-DocLayoutV2_labels.txt
35│ ├── PP-DocLayoutV3.onnx
36│ └── PP-DocLayoutV3_labels.txt
37├── recognition
38│ ├── PP-OCRv3_mobile_rec_infer.onnx
39│ ├── PP-OCRv4_mobile_rec_infer.onnx
40│ ├── PP-OCRv4_server_rec_doc_infer.onnx
41│ ├── PP-OCRv4_server_rec_infer.onnx
42│ ├── PP-OCRv5_mobile_rec_infer.onnx
43│ ├── PP-OCRv5_server_rec_infer.onnx
44│ ├── PP-OCRv6_medium_rec.onnx
45│ ├── PP-OCRv6_small_rec.onnx
46│ ├── PP-OCRv6_tiny_rec.onnx
47│ ├── multi
48│ │ ├── arabic
49│ │ │ └── v5
50│ │ │ ├── arabic_PP-OCRv5_mobile_rec_infer.onnx
51│ │ │ └── ppocrv5_arabic_dict.txt
52│ │ ├── cyrillic
53│ │ │ └── v5
54│ │ │ ├── cyrillic_PP-OCRv5_mobile_rec_infer.onnx
55│ │ │ └── ppocrv5_cyrillic_dict.txt
56│ │ ├── devanagari
57│ │ │ └── v5
58│ │ │ ├── devanagari_PP-OCRv5_mobile_rec_infer.onnx
59│ │ │ └── ppocrv5_devanagari_dict.txt
60│ │ ├── el
61│ │ │ └── v5
62│ │ │ ├── el_PP-OCRv5_mobile_rec_infer.onnx
63│ │ │ └── ppocrv5_el_dict.txt
64│ │ ├── en
65│ │ │ ├── v4
66│ │ │ │ ├── en_PP-OCRv4_mobile_rec_infer.onnx
67│ │ │ │ └── en_dict.txt
68│ │ │ └── v5
69│ │ │ ├── en_PP-OCRv5_mobile_rec_infer.onnx
70│ │ │ ├── en_PP-OCRv5_mobile_rec_infer.ort
71│ │ │ ├── en_PP-OCRv5_mobile_rec_infer_int8.onnx
72│ │ │ ├── en_PP-OCRv5_mobile_rec_infer_int8.ort
73│ │ │ └── ppocrv5_en_dict.txt
74│ │ ├── eslav
75│ │ │ └── v5
76│ │ │ ├── eslav_PP-OCRv5_mobile_rec_infer.onnx
77│ │ │ └── ppocrv5_eslav_dict.txt
78│ │ ├── japan
79│ │ │ └── v3
80│ │ │ ├── japan_PP-OCRv3_mobile_rec_infer.onnx
81│ │ │ └── japan_dict.txt
82│ │ ├── korean
83│ │ │ └── v5
84│ │ │ ├── korean_PP-OCRv5_mobile_rec_infer.onnx
85│ │ │ └── ppocrv5_korean_dict.txt
86│ │ ├── latin
87│ │ │ └── v5
88│ │ │ ├── latin_PP-OCRv5_mobile_rec_infer.onnx
89│ │ │ └── ppocrv5_latin_dict.txt
90│ │ ├── ta
91│ │ │ └── v5
92│ │ │ ├── ppocrv5_ta_dict.txt
93│ │ │ └── ta_PP-OCRv5_mobile_rec_infer.onnx
94│ │ ├── te
95│ │ │ └── v5
96│ │ │ ├── ppocrv5_te_dict.txt
97│ │ │ └── te_PP-OCRv5_mobile_rec_infer.onnx
98│ │ └── th
99│ │ └── v5
100│ │ ├── ppocrv5_th_dict.txt
101│ │ └── th_PP-OCRv5_mobile_rec_infer.onnx
102│ ├── ort
103│ │ ├── PP-OCRv6_medium_rec.ort
104│ │ ├── PP-OCRv6_small_rec.ort
105│ │ └── PP-OCRv6_tiny_rec.ort
106│ ├── ppocrv3_dict.txt
107│ ├── ppocrv4_dict.txt
108│ ├── ppocrv4_doc_dict.txt
109│ ├── ppocrv5_dict.txt
110│ ├── ppocrv6_dict.txt
111│ └── ppocrv6_tiny_dict.txt
112└── table
113 ├── PP-LCNet_x1_0_table_cls.onnx
114 ├── RT-DETR-L_wired_table_cell_det.onnx
115 ├── RT-DETR-L_wireless_table_cell_det.onnx
116 └── SLANet_plus.onnx| Model | Supported Languages |
|---|---|
| korean_PP-OCRv5_mobile_rec | Korean, English |
| latin_PP-OCRv5_mobile_rec | French, German, Afrikaans, Italian, Spanish, Bosnian, Portuguese, Czech, Welsh, Danish, Estonian, Irish, Croatian, Uzbek, Hungarian, Serbian (Latin), Indonesian, Occitan, Icelandic, Lithuanian, Maori, Malay, Dutch, Norwegian, Polish, Slovak, Slovenian, Albanian, Swedish, Swahili, Tagalog, Turkish, Latin, Azerbaijani, Kurdish, Latvian, Maltese, Pali, Romanian, Vietnamese, Finnish, Basque, Galician, Luxembourgish, Romansh, Catalan, Quechua |
| eslav_PP-OCRv5_mobile_rec | Russian, Belarusian, Ukrainian, English |
| th_PP-OCRv5_mobile_rec | Thai, English |
| el_PP-OCRv5_mobile_rec | Greek, English |
| en_PP-OCRv5_mobile_rec | English |
| cyrillic_PP-OCRv5_mobile_rec | Russian, Belarusian, Ukrainian, Serbian (Cyrillic), Bulgarian, Mongolian, Abkhazian, Adyghe, Kabardian, Avar, Dargin, Ingush, Chechen, Lak, Lezgin, Tabasaran, Kazakh, Kyrgyz, Tajik, Macedonian, Tatar, Chuvash, Bashkir, Malian, Moldovan, Udmurt, Komi, Ossetian, Buryat, Kalmyk, Tuvan, Sakha, Karakalpak, English |
| arabic_PP-OCRv5_mobile_rec | Arabic, Persian, Uyghur, Urdu, Pashto, Kurdish, Sindhi, Balochi, English |
| devanagari_PP-OCRv5_mobile_rec | Hindi, Marathi, Nepali, Bihari, Maithili, Angika, Bhojpuri, Magahi, Santali, Newari, Konkani, Sanskrit, Haryanvi, English |
| ta_PP-OCRv5_mobile_rec | Tamil, English |
| te_PP-OCRv5_mobile_rec | Telugu, English |