Skip to content

Commit 506091c

Browse files
committed
fix: align type hints with paddlex signatures
- Widen layout param types (threshold, unclip_ratio, merge_bboxes_mode) to match paddlex per-pipeline signatures - Fix DocUnderstanding.predict input type: InputType → dict - Remove dict from layout_unclip_ratio in formula/seal pipelines where paddlex doesn't accept it - Use bare dict/tuple to match paddlex exactly, no refinement
1 parent a96572a commit 506091c

File tree

11 files changed

+85
-47
lines changed

11 files changed

+85
-47
lines changed

paddleocr/_models/_object_detection.py

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -31,11 +31,13 @@ class ObjectDetection(PaddleXPredictorWrapper):
3131
def __init__(
3232
self,
3333
*,
34-
img_size: int | None = None,
35-
threshold: float | None = None,
34+
img_size: int | tuple[int, int] | None = None,
35+
threshold: float | dict | None = None,
3636
layout_nms: bool | None = None,
37-
layout_unclip_ratio: float | None = None,
38-
layout_merge_bboxes_mode: str | None = None,
37+
layout_unclip_ratio: (
38+
float | tuple[float, float] | dict | None
39+
) = None,
40+
layout_merge_bboxes_mode: str | dict | None = None,
3941
**kwargs: Any,
4042
) -> None:
4143
self._extra_init_args = {

paddleocr/_models/_text_detection.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ def __init__(
2727
thresh: float | None = None,
2828
box_thresh: float | None = None,
2929
unclip_ratio: float | None = None,
30-
input_shape: tuple[int, int, int] | None = None,
30+
input_shape: tuple | None = None,
3131
**kwargs: Any,
3232
) -> None:
3333
self._extra_init_args = {

paddleocr/_models/text_recognition.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ class TextRecognition(PaddleXPredictorWrapper):
3030
def __init__(
3131
self,
3232
*,
33-
input_shape: tuple[int, int, int] | None = None,
33+
input_shape: tuple | None = None,
3434
**kwargs: Any,
3535
) -> None:
3636
self._extra_init_args = {

paddleocr/_pipelines/doc_understanding.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
from paddlex.utils.pipeline_arguments import custom_type
2121

2222
from .._abstract import CLISubcommandExecutor
23-
from .._types import InputType, PredictResult
23+
from .._types import PredictResult
2424
from .._utils.cli import (
2525
add_simple_inference_args,
2626
get_subcommand_args,
@@ -50,12 +50,12 @@ def __init__(
5050
def _paddlex_pipeline_name(self) -> str:
5151
return "doc_understanding"
5252

53-
def predict_iter(self, input: InputType, **kwargs: Any) -> Iterator[PredictResult]:
53+
def predict_iter(self, input: dict, **kwargs: Any) -> Iterator[PredictResult]:
5454
return self.paddlex_pipeline.predict(input, **kwargs)
5555

5656
def predict(
5757
self,
58-
input: InputType,
58+
input: dict,
5959
**kwargs: Any,
6060
) -> list[PredictResult]:
6161
return list(self.predict_iter(input, **kwargs))

paddleocr/_pipelines/formula_recognition.py

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -42,9 +42,11 @@ def __init__(
4242
use_doc_unwarping: bool | None = None,
4343
layout_detection_model_name: str | None = None,
4444
layout_detection_model_dir: str | None = None,
45-
layout_threshold: float | None = None,
45+
layout_threshold: float | dict | None = None,
4646
layout_nms: bool | None = None,
47-
layout_unclip_ratio: float | None = None,
47+
layout_unclip_ratio: (
48+
float | tuple[float, float] | None
49+
) = None,
4850
layout_merge_bboxes_mode: str | None = None,
4951
layout_detection_batch_size: int | None = None,
5052
use_layout_detection: bool | None = None,
@@ -72,9 +74,11 @@ def predict_iter(
7274
use_doc_orientation_classify: bool | None = None,
7375
use_doc_unwarping: bool | None = None,
7476
layout_det_res: Any = None,
75-
layout_threshold: float | None = None,
77+
layout_threshold: float | dict | None = None,
7678
layout_nms: bool | None = None,
77-
layout_unclip_ratio: float | None = None,
79+
layout_unclip_ratio: (
80+
float | tuple[float, float] | None
81+
) = None,
7882
layout_merge_bboxes_mode: str | None = None,
7983
**kwargs: Any,
8084
) -> Iterator[PredictResult]:
@@ -99,9 +103,11 @@ def predict(
99103
use_doc_orientation_classify: bool | None = None,
100104
use_doc_unwarping: bool | None = None,
101105
layout_det_res: Any = None,
102-
layout_threshold: float | None = None,
106+
layout_threshold: float | dict | None = None,
103107
layout_nms: bool | None = None,
104-
layout_unclip_ratio: float | None = None,
108+
layout_unclip_ratio: (
109+
float | tuple[float, float] | None
110+
) = None,
105111
layout_merge_bboxes_mode: str | None = None,
106112
**kwargs: Any,
107113
) -> list[PredictResult]:

paddleocr/_pipelines/ocr.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -81,10 +81,10 @@ def __init__(
8181
text_det_thresh: float | None = None,
8282
text_det_box_thresh: float | None = None,
8383
text_det_unclip_ratio: float | None = None,
84-
text_det_input_shape: tuple[int, int, int] | None = None,
84+
text_det_input_shape: tuple | None = None,
8585
text_rec_score_thresh: float | None = None,
8686
return_word_box: bool | None = None,
87-
text_rec_input_shape: tuple[int, int, int] | None = None,
87+
text_rec_input_shape: tuple | None = None,
8888
lang: str | None = None,
8989
ocr_version: str | None = None,
9090
**kwargs: Any,

paddleocr/_pipelines/paddleocr_vl.py

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -47,9 +47,11 @@ def __init__(
4747
pipeline_version: str = _DEFAULT_PIPELINE_VERSION,
4848
layout_detection_model_name: str | None = None,
4949
layout_detection_model_dir: str | None = None,
50-
layout_threshold: float | None = None,
50+
layout_threshold: float | dict | None = None,
5151
layout_nms: bool | None = None,
52-
layout_unclip_ratio: float | None = None,
52+
layout_unclip_ratio: (
53+
float | tuple[float, float] | dict | None
54+
) = None,
5355
layout_merge_bboxes_mode: str | None = None,
5456
vl_rec_model_name: str | None = None,
5557
vl_rec_model_dir: str | None = None,
@@ -112,9 +114,11 @@ def predict_iter(
112114
use_chart_recognition: bool | None = None,
113115
use_seal_recognition: bool | None = None,
114116
use_ocr_for_image_block: bool | None = None,
115-
layout_threshold: float | None = None,
117+
layout_threshold: float | dict | None = None,
116118
layout_nms: bool | None = None,
117-
layout_unclip_ratio: float | None = None,
119+
layout_unclip_ratio: (
120+
float | tuple[float, float] | dict | None
121+
) = None,
118122
layout_merge_bboxes_mode: str | None = None,
119123
layout_shape_mode: str = "auto",
120124
use_queues: bool | None = None,
@@ -169,9 +173,11 @@ def predict(
169173
use_chart_recognition: bool | None = None,
170174
use_seal_recognition: bool | None = None,
171175
use_ocr_for_image_block: bool | None = None,
172-
layout_threshold: float | None = None,
176+
layout_threshold: float | dict | None = None,
173177
layout_nms: bool | None = None,
174-
layout_unclip_ratio: float | None = None,
178+
layout_unclip_ratio: (
179+
float | tuple[float, float] | dict | None
180+
) = None,
175181
layout_merge_bboxes_mode: str | None = None,
176182
layout_shape_mode: str = "auto",
177183
use_queues: bool | None = None,

paddleocr/_pipelines/pp_chatocrv4_doc.py

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -56,9 +56,11 @@ def __init__(
5656
use_textline_orientation: bool | None = None,
5757
use_seal_recognition: bool | None = None,
5858
use_table_recognition: bool | None = None,
59-
layout_threshold: float | None = None,
59+
layout_threshold: float | dict | None = None,
6060
layout_nms: bool | None = None,
61-
layout_unclip_ratio: float | None = None,
61+
layout_unclip_ratio: (
62+
float | tuple[float, float] | dict | None
63+
) = None,
6264
layout_merge_bboxes_mode: str | None = None,
6365
text_det_limit_side_len: int | None = None,
6466
text_det_limit_type: str | None = None,
@@ -124,9 +126,11 @@ def visual_predict_iter(
124126
use_textline_orientation: bool | None = None,
125127
use_seal_recognition: bool | None = None,
126128
use_table_recognition: bool | None = None,
127-
layout_threshold: float | None = None,
129+
layout_threshold: float | dict | None = None,
128130
layout_nms: bool | None = None,
129-
layout_unclip_ratio: float | None = None,
131+
layout_unclip_ratio: (
132+
float | tuple[float, float] | dict | None
133+
) = None,
130134
layout_merge_bboxes_mode: str | None = None,
131135
text_det_limit_side_len: int | None = None,
132136
text_det_limit_type: str | None = None,
@@ -177,9 +181,11 @@ def visual_predict(
177181
use_textline_orientation: bool | None = None,
178182
use_seal_recognition: bool | None = None,
179183
use_table_recognition: bool | None = None,
180-
layout_threshold: float | None = None,
184+
layout_threshold: float | dict | None = None,
181185
layout_nms: bool | None = None,
182-
layout_unclip_ratio: float | None = None,
186+
layout_unclip_ratio: (
187+
float | tuple[float, float] | dict | None
188+
) = None,
183189
layout_merge_bboxes_mode: str | None = None,
184190
text_det_limit_side_len: int | None = None,
185191
text_det_limit_type: str | None = None,

paddleocr/_pipelines/pp_doctranslation.py

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -33,9 +33,11 @@ def __init__(
3333
self,
3434
layout_detection_model_name: str | None = None,
3535
layout_detection_model_dir: str | None = None,
36-
layout_threshold: float | None = None,
36+
layout_threshold: float | dict | None = None,
3737
layout_nms: bool | None = None,
38-
layout_unclip_ratio: float | None = None,
38+
layout_unclip_ratio: (
39+
float | tuple[float, float] | dict | None
40+
) = None,
3941
layout_merge_bboxes_mode: str | None = None,
4042
chart_recognition_model_name: str | None = None,
4143
chart_recognition_model_dir: str | None = None,
@@ -120,9 +122,11 @@ def visual_predict_iter(
120122
use_formula_recognition: bool | None = None,
121123
use_chart_recognition: bool | None = None,
122124
use_region_detection: bool | None = None,
123-
layout_threshold: float | None = None,
125+
layout_threshold: float | dict | None = None,
124126
layout_nms: bool | None = None,
125-
layout_unclip_ratio: float | None = None,
127+
layout_unclip_ratio: (
128+
float | tuple[float, float] | dict | None
129+
) = None,
126130
layout_merge_bboxes_mode: str | None = None,
127131
text_det_limit_side_len: int | None = None,
128132
text_det_limit_type: str | None = None,
@@ -191,9 +195,11 @@ def visual_predict(
191195
use_formula_recognition: bool | None = None,
192196
use_chart_recognition: bool | None = None,
193197
use_region_detection: bool | None = None,
194-
layout_threshold: float | None = None,
198+
layout_threshold: float | dict | None = None,
195199
layout_nms: bool | None = None,
196-
layout_unclip_ratio: float | None = None,
200+
layout_unclip_ratio: (
201+
float | tuple[float, float] | dict | None
202+
) = None,
197203
layout_merge_bboxes_mode: str | None = None,
198204
text_det_limit_side_len: int | None = None,
199205
text_det_limit_type: str | None = None,

paddleocr/_pipelines/pp_structurev3.py

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -40,9 +40,11 @@ def __init__(
4040
self,
4141
layout_detection_model_name: str | None = None,
4242
layout_detection_model_dir: str | None = None,
43-
layout_threshold: float | None = None,
43+
layout_threshold: float | dict | None = None,
4444
layout_nms: bool | None = None,
45-
layout_unclip_ratio: float | None = None,
45+
layout_unclip_ratio: (
46+
float | tuple[float, float] | dict | None
47+
) = None,
4648
layout_merge_bboxes_mode: str | None = None,
4749
chart_recognition_model_name: str | None = None,
4850
chart_recognition_model_dir: str | None = None,
@@ -165,9 +167,11 @@ def predict_iter(
165167
use_chart_recognition: bool | None = None,
166168
use_region_detection: bool | None = None,
167169
format_block_content: bool | None = None,
168-
layout_threshold: float | None = None,
170+
layout_threshold: float | dict | None = None,
169171
layout_nms: bool | None = None,
170-
layout_unclip_ratio: float | None = None,
172+
layout_unclip_ratio: (
173+
float | tuple[float, float] | dict | None
174+
) = None,
171175
layout_merge_bboxes_mode: str | None = None,
172176
text_det_limit_side_len: int | None = None,
173177
text_det_limit_type: str | None = None,
@@ -240,9 +244,11 @@ def predict(
240244
use_chart_recognition: bool | None = None,
241245
use_region_detection: bool | None = None,
242246
format_block_content: bool | None = None,
243-
layout_threshold: float | None = None,
247+
layout_threshold: float | dict | None = None,
244248
layout_nms: bool | None = None,
245-
layout_unclip_ratio: float | None = None,
249+
layout_unclip_ratio: (
250+
float | tuple[float, float] | dict | None
251+
) = None,
246252
layout_merge_bboxes_mode: str | None = None,
247253
text_det_limit_side_len: int | None = None,
248254
text_det_limit_type: str | None = None,

0 commit comments

Comments
 (0)