Skip to content

Commit 6414eab

Browse files
authored
✨ add job information to inference object (#387)
1 parent 0acd511 commit 6414eab

File tree

17 files changed

+241
-193
lines changed

17 files changed

+241
-193
lines changed

mindee/geometry/point.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,5 +9,8 @@ class Point(NamedTuple):
99
y: float
1010
"""Y coordinate"""
1111

12+
def __str__(self) -> str:
13+
return f"({self.x},{self.y})"
14+
1215

1316
Points = Sequence[Point]

mindee/geometry/polygon.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,9 @@ def is_point_in_y(self, point: Point) -> bool:
5050
min_y, max_y = get_min_max_y(self)
5151
return is_point_in_y(point, min_y, max_y)
5252

53+
def __str__(self):
54+
return "(" + ", ".join(str(p) for p in self) + ")"
55+
5356

5457
def is_point_in_polygon_x(point: Point, polygon: Polygon) -> bool:
5558
"""

mindee/parsing/v2/inference.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,8 @@ def __init__(self, raw_response: StringDict):
2020
def __str__(self) -> str:
2121
return (
2222
f"Inference\n#########"
23-
f"\n{self.model}"
23+
f"\n{self.job}"
24+
f"\n\n{self.model}"
2425
f"\n\n{self.file}"
2526
f"\n\n{self.active_options}"
2627
f"\n\n{self.result}\n"

mindee/v2/parsing/inference/base_inference.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,14 @@
44
from mindee.parsing.common.string_dict import StringDict
55
from mindee.parsing.v2.inference_file import InferenceFile
66
from mindee.parsing.v2.inference_model import InferenceModel
7+
from mindee.v2.parsing.inference.inference_job import InferenceJob
78

89

910
class BaseInference(ABC):
1011
"""Base class for V2 inference objects."""
1112

13+
job: InferenceJob
14+
"""Job the inference belongs to."""
1215
model: InferenceModel
1316
"""Model info for the inference."""
1417
file: InferenceFile
@@ -18,6 +21,7 @@ class BaseInference(ABC):
1821

1922
def __init__(self, raw_response: StringDict):
2023
self.id = raw_response["id"]
24+
self.job = InferenceJob(raw_response["job"])
2125
self.model = InferenceModel(raw_response["model"])
2226
self.file = InferenceFile(raw_response["file"])
2327

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
from mindee.parsing.common.string_dict import StringDict
2+
3+
4+
class InferenceJob:
5+
"""Inference Job info."""
6+
7+
id: str
8+
"""UUID of the Job."""
9+
10+
def __init__(self, raw_response: StringDict) -> None:
11+
self.id = raw_response["id"]
12+
13+
def __str__(self) -> str:
14+
return f"Job\n===\n:ID: {self.id}"

mindee/v2/product/classification/classification_inference.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,4 +16,10 @@ def __init__(self, raw_response: StringDict) -> None:
1616
self.result = ClassificationResult(raw_response["result"])
1717

1818
def __str__(self) -> str:
19-
return f"Inference\n#########\n{self.model}\n{self.file}\n{self.result}\n"
19+
return (
20+
f"Inference\n#########"
21+
f"\n{self.job}"
22+
f"\n\n{self.model}"
23+
f"\n\n{self.file}"
24+
f"\n\n{self.result}\n"
25+
)

mindee/v2/product/crop/crop_inference.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,4 +16,10 @@ def __init__(self, raw_response: StringDict) -> None:
1616
self.result = CropResult(raw_response["result"])
1717

1818
def __str__(self) -> str:
19-
return f"Inference\n#########\n{self.model}\n{self.file}\n{self.result}\n"
19+
return (
20+
f"Inference\n#########"
21+
f"\n{self.job}"
22+
f"\n\n{self.model}"
23+
f"\n\n{self.file}"
24+
f"\n\n{self.result}\n"
25+
)

mindee/v2/product/crop/crop_result.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,6 @@ def __init__(self, raw_response: StringDict) -> None:
1515
def __str__(self) -> str:
1616
crops = "\n"
1717
if len(self.crops) > 0:
18-
crops += "\n\n".join([str(crop) for crop in self.crops])
19-
out_str = f"Crops\n======{crops}"
18+
crops += "\n".join([str(crop) for crop in self.crops])
19+
out_str = f"Crops\n====={crops}"
2020
return out_str

mindee/v2/product/ocr/ocr_inference.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,4 +16,10 @@ def __init__(self, raw_response: StringDict) -> None:
1616
self.result = OCRResult(raw_response["result"])
1717

1818
def __str__(self) -> str:
19-
return f"Inference\n#########\n{self.model}\n{self.file}\n{self.result}\n"
19+
return (
20+
f"Inference\n#########"
21+
f"\n{self.job}"
22+
f"\n\n{self.model}"
23+
f"\n\n{self.file}"
24+
f"\n\n{self.result}\n"
25+
)

mindee/v2/product/split/split_inference.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,4 +16,10 @@ def __init__(self, raw_response: StringDict) -> None:
1616
self.result = SplitResult(raw_response["result"])
1717

1818
def __str__(self) -> str:
19-
return f"Inference\n#########\n{self.model}\n{self.file}\n{self.result}\n"
19+
return (
20+
f"Inference\n#########"
21+
f"\n{self.job}"
22+
f"\n\n{self.model}"
23+
f"\n\n{self.file}"
24+
f"\n\n{self.result}\n"
25+
)

0 commit comments

Comments
 (0)