superb-ai-onprem 0.5.9__py3-none-any.whl → 0.5.11__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of superb-ai-onprem might be problematic. Click here for more details.
- spb_onprem/__init__.py +8 -0
- spb_onprem/_version.py +2 -2
- spb_onprem/activities/service.py +1 -2
- spb_onprem/contents/params/__init__.py +2 -0
- spb_onprem/contents/params/delete_content.py +10 -0
- spb_onprem/contents/queries.py +11 -0
- spb_onprem/contents/service.py +19 -0
- spb_onprem/data/entities/data.py +0 -1
- spb_onprem/data/params/__init__.py +8 -0
- spb_onprem/data/params/create_data.py +2 -10
- spb_onprem/data/params/get_data_detail.py +14 -0
- spb_onprem/data/params/get_evaluation_value_list.py +36 -0
- spb_onprem/data/params/update_data.py +0 -16
- spb_onprem/data/params/upsert_data_meta.py +0 -12
- spb_onprem/data/queries.py +72 -6
- spb_onprem/data/service.py +103 -108
- spb_onprem/datasets/params/__init__.py +2 -0
- spb_onprem/datasets/params/delete_dataset.py +12 -0
- spb_onprem/datasets/queries.py +11 -0
- spb_onprem/datasets/service.py +18 -0
- spb_onprem/entities.py +4 -0
- spb_onprem/inferences/__init__.py +5 -0
- spb_onprem/inferences/service.py +56 -0
- spb_onprem/models/__init__.py +7 -0
- spb_onprem/models/entities.py +9 -0
- spb_onprem/models/params/__init__.py +7 -0
- spb_onprem/models/params/delete_model.py +14 -0
- spb_onprem/models/params/get_models.py +29 -0
- spb_onprem/models/queries.py +33 -0
- spb_onprem/models/service.py +76 -0
- spb_onprem/predictions/__init__.py +7 -0
- spb_onprem/predictions/entities.py +11 -0
- spb_onprem/predictions/params/__init__.py +15 -0
- spb_onprem/predictions/params/create_prediction_set.py +44 -0
- spb_onprem/predictions/params/delete_prediction_from_data.py +20 -0
- spb_onprem/predictions/params/delete_prediction_set.py +14 -0
- spb_onprem/predictions/params/get_prediction_set.py +14 -0
- spb_onprem/predictions/params/get_prediction_sets.py +29 -0
- spb_onprem/predictions/params/update_prediction_set_data_info.py +28 -0
- spb_onprem/predictions/queries.py +110 -0
- spb_onprem/predictions/service.py +225 -0
- {superb_ai_onprem-0.5.9.dist-info → superb_ai_onprem-0.5.11.dist-info}/METADATA +1 -1
- {superb_ai_onprem-0.5.9.dist-info → superb_ai_onprem-0.5.11.dist-info}/RECORD +57 -25
- tests/activities/test_params.py +2 -2
- tests/activities/test_service.py +28 -38
- tests/data/__init__.py +0 -0
- tests/data/test_data_service.py +412 -0
- tests/datasets/__init__.py +1 -0
- tests/datasets/test_dataset_service.py +135 -0
- tests/exports/test_service.py +1 -0
- tests/models/__init__.py +1 -0
- tests/models/test_model_service.py +249 -0
- tests/predictions/__init__.py +1 -0
- tests/predictions/test_prediction_service.py +359 -0
- {superb_ai_onprem-0.5.9.dist-info → superb_ai_onprem-0.5.11.dist-info}/WHEEL +0 -0
- {superb_ai_onprem-0.5.9.dist-info → superb_ai_onprem-0.5.11.dist-info}/licenses/LICENSE +0 -0
- {superb_ai_onprem-0.5.9.dist-info → superb_ai_onprem-0.5.11.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,225 @@
|
|
|
1
|
+
from typing import Optional, Dict, Any, List, Tuple, Union
|
|
2
|
+
|
|
3
|
+
from spb_onprem.base_service import BaseService
|
|
4
|
+
from spb_onprem.base_types import Undefined, UndefinedType
|
|
5
|
+
from spb_onprem.exceptions import BadParameterError
|
|
6
|
+
from .queries import Queries
|
|
7
|
+
from .entities import PredictionSet
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class PredictionService(BaseService):
|
|
11
|
+
"""Service class for handling prediction set operations."""
|
|
12
|
+
|
|
13
|
+
def get_prediction_sets(
|
|
14
|
+
self,
|
|
15
|
+
dataset_id: str,
|
|
16
|
+
filter: Union[UndefinedType, Dict[str, Any]] = Undefined,
|
|
17
|
+
cursor: Union[UndefinedType, str] = Undefined,
|
|
18
|
+
length: int = 50
|
|
19
|
+
) -> Tuple[List[PredictionSet], Optional[str], int]:
|
|
20
|
+
"""Get paginated list of prediction sets for a dataset.
|
|
21
|
+
|
|
22
|
+
Args:
|
|
23
|
+
dataset_id (str): The dataset ID.
|
|
24
|
+
filter (Union[UndefinedType, Dict[str, Any]]): Filter for prediction sets.
|
|
25
|
+
cursor (Union[UndefinedType, str]): Cursor for pagination.
|
|
26
|
+
length (int): Number of items to retrieve per page.
|
|
27
|
+
|
|
28
|
+
Returns:
|
|
29
|
+
Tuple[List[PredictionSet], Optional[str], int]: A tuple containing prediction sets, next cursor, and total count.
|
|
30
|
+
"""
|
|
31
|
+
if dataset_id is None:
|
|
32
|
+
raise BadParameterError("dataset_id is required.")
|
|
33
|
+
|
|
34
|
+
response = self.request_gql(
|
|
35
|
+
Queries.GET_PREDICTION_SETS,
|
|
36
|
+
Queries.GET_PREDICTION_SETS["variables"](
|
|
37
|
+
dataset_id=dataset_id,
|
|
38
|
+
filter=filter,
|
|
39
|
+
cursor=cursor,
|
|
40
|
+
length=length
|
|
41
|
+
)
|
|
42
|
+
)
|
|
43
|
+
prediction_sets_list = response.get("predictionSets", [])
|
|
44
|
+
return (
|
|
45
|
+
[PredictionSet.model_validate(ps) for ps in prediction_sets_list],
|
|
46
|
+
response.get("next"),
|
|
47
|
+
response.get("totalCount", 0)
|
|
48
|
+
)
|
|
49
|
+
|
|
50
|
+
def get_prediction_set(
|
|
51
|
+
self,
|
|
52
|
+
dataset_id: str,
|
|
53
|
+
prediction_set_id: str
|
|
54
|
+
) -> PredictionSet:
|
|
55
|
+
"""Get detailed prediction set information including content IDs.
|
|
56
|
+
|
|
57
|
+
Args:
|
|
58
|
+
dataset_id (str): The dataset ID.
|
|
59
|
+
prediction_set_id (str): The prediction set ID.
|
|
60
|
+
|
|
61
|
+
Returns:
|
|
62
|
+
PredictionSet: The prediction set entity.
|
|
63
|
+
"""
|
|
64
|
+
if dataset_id is None:
|
|
65
|
+
raise BadParameterError("dataset_id is required.")
|
|
66
|
+
if prediction_set_id is None:
|
|
67
|
+
raise BadParameterError("prediction_set_id is required.")
|
|
68
|
+
|
|
69
|
+
response = self.request_gql(
|
|
70
|
+
Queries.GET_PREDICTION_SET,
|
|
71
|
+
Queries.GET_PREDICTION_SET["variables"](
|
|
72
|
+
dataset_id=dataset_id,
|
|
73
|
+
prediction_set_id=prediction_set_id
|
|
74
|
+
)
|
|
75
|
+
)
|
|
76
|
+
prediction_set_dict = response.get("predictionSet", {})
|
|
77
|
+
return PredictionSet.model_validate(prediction_set_dict)
|
|
78
|
+
|
|
79
|
+
def delete_prediction_set(
|
|
80
|
+
self,
|
|
81
|
+
dataset_id: str,
|
|
82
|
+
prediction_set_id: str
|
|
83
|
+
) -> bool:
|
|
84
|
+
"""Delete a prediction set from the dataset.
|
|
85
|
+
|
|
86
|
+
Args:
|
|
87
|
+
dataset_id (str): The dataset ID.
|
|
88
|
+
prediction_set_id (str): The prediction set ID to delete.
|
|
89
|
+
|
|
90
|
+
Returns:
|
|
91
|
+
bool: True if deletion was successful.
|
|
92
|
+
"""
|
|
93
|
+
if dataset_id is None:
|
|
94
|
+
raise BadParameterError("dataset_id is required.")
|
|
95
|
+
if prediction_set_id is None:
|
|
96
|
+
raise BadParameterError("prediction_set_id is required.")
|
|
97
|
+
|
|
98
|
+
response = self.request_gql(
|
|
99
|
+
Queries.DELETE_PREDICTION_SET,
|
|
100
|
+
Queries.DELETE_PREDICTION_SET["variables"](
|
|
101
|
+
dataset_id=dataset_id,
|
|
102
|
+
prediction_set_id=prediction_set_id
|
|
103
|
+
)
|
|
104
|
+
)
|
|
105
|
+
return response.get("deletePredictionSet", False)
|
|
106
|
+
|
|
107
|
+
def delete_prediction_from_data(
|
|
108
|
+
self,
|
|
109
|
+
dataset_id: str,
|
|
110
|
+
data_id: str,
|
|
111
|
+
prediction_set_id: str
|
|
112
|
+
) -> bool:
|
|
113
|
+
"""Delete predictions from a specific data item for a given prediction set.
|
|
114
|
+
|
|
115
|
+
Args:
|
|
116
|
+
dataset_id (str): The dataset ID.
|
|
117
|
+
data_id (str): The data ID.
|
|
118
|
+
prediction_set_id (str): The prediction set ID.
|
|
119
|
+
|
|
120
|
+
Returns:
|
|
121
|
+
bool: True if deletion was successful.
|
|
122
|
+
"""
|
|
123
|
+
if dataset_id is None:
|
|
124
|
+
raise BadParameterError("dataset_id is required.")
|
|
125
|
+
if data_id is None:
|
|
126
|
+
raise BadParameterError("data_id is required.")
|
|
127
|
+
if prediction_set_id is None:
|
|
128
|
+
raise BadParameterError("prediction_set_id is required.")
|
|
129
|
+
|
|
130
|
+
response = self.request_gql(
|
|
131
|
+
Queries.DELETE_PREDICTION_FROM_DATA,
|
|
132
|
+
Queries.DELETE_PREDICTION_FROM_DATA["variables"](
|
|
133
|
+
dataset_id=dataset_id,
|
|
134
|
+
data_id=data_id,
|
|
135
|
+
prediction_set_id=prediction_set_id
|
|
136
|
+
)
|
|
137
|
+
)
|
|
138
|
+
return response.get("deletePrediction") is not None
|
|
139
|
+
|
|
140
|
+
def create_prediction_set(
|
|
141
|
+
self,
|
|
142
|
+
dataset_id: str,
|
|
143
|
+
model_id: str,
|
|
144
|
+
name: str,
|
|
145
|
+
type: str,
|
|
146
|
+
description: Optional[str] = None,
|
|
147
|
+
annotations_count: Optional[int] = None,
|
|
148
|
+
data_count: Optional[int] = None,
|
|
149
|
+
) -> Optional[str]:
|
|
150
|
+
"""Create a new prediction set.
|
|
151
|
+
|
|
152
|
+
Args:
|
|
153
|
+
dataset_id (str): The dataset ID.
|
|
154
|
+
model_id (str): The model ID.
|
|
155
|
+
name (str): Name of the prediction set.
|
|
156
|
+
type (str): Type of the prediction set.
|
|
157
|
+
description (Optional[str]): Description of the prediction set.
|
|
158
|
+
annotations_count (Optional[int]): Number of annotations.
|
|
159
|
+
data_count (Optional[int]): Number of data items.
|
|
160
|
+
|
|
161
|
+
Returns:
|
|
162
|
+
Optional[str]: The created prediction set ID if successful, None otherwise.
|
|
163
|
+
"""
|
|
164
|
+
if dataset_id is None:
|
|
165
|
+
raise BadParameterError("dataset_id is required.")
|
|
166
|
+
if model_id is None:
|
|
167
|
+
raise BadParameterError("model_id is required.")
|
|
168
|
+
if name is None:
|
|
169
|
+
raise BadParameterError("name is required.")
|
|
170
|
+
if type is None:
|
|
171
|
+
raise BadParameterError("type is required.")
|
|
172
|
+
|
|
173
|
+
response = self.request_gql(
|
|
174
|
+
Queries.CREATE_PREDICTION_SET,
|
|
175
|
+
Queries.CREATE_PREDICTION_SET["variables"](
|
|
176
|
+
dataset_id=dataset_id,
|
|
177
|
+
model_id=model_id,
|
|
178
|
+
name=name,
|
|
179
|
+
type=type,
|
|
180
|
+
description=description,
|
|
181
|
+
annotations_count=annotations_count,
|
|
182
|
+
data_count=data_count
|
|
183
|
+
)
|
|
184
|
+
)
|
|
185
|
+
prediction_set = response.get("createPredictionSet")
|
|
186
|
+
return prediction_set.get("id") if prediction_set else None
|
|
187
|
+
|
|
188
|
+
def update_prediction_set_data_info(
|
|
189
|
+
self,
|
|
190
|
+
dataset_id: str,
|
|
191
|
+
id: str,
|
|
192
|
+
annotation_count: int,
|
|
193
|
+
data_count: int
|
|
194
|
+
) -> Optional[str]:
|
|
195
|
+
"""Update the data info of a prediction set.
|
|
196
|
+
|
|
197
|
+
Args:
|
|
198
|
+
dataset_id (str): The dataset ID.
|
|
199
|
+
id (str): The prediction set ID to update.
|
|
200
|
+
annotation_count (int): Number of annotations.
|
|
201
|
+
data_count (int): Number of data items.
|
|
202
|
+
|
|
203
|
+
Returns:
|
|
204
|
+
Optional[str]: The updated prediction set ID if successful, None otherwise.
|
|
205
|
+
"""
|
|
206
|
+
if dataset_id is None:
|
|
207
|
+
raise BadParameterError("dataset_id is required.")
|
|
208
|
+
if id is None:
|
|
209
|
+
raise BadParameterError("id is required.")
|
|
210
|
+
if annotation_count is None:
|
|
211
|
+
raise BadParameterError("annotation_count is required.")
|
|
212
|
+
if data_count is None:
|
|
213
|
+
raise BadParameterError("data_count is required.")
|
|
214
|
+
|
|
215
|
+
response = self.request_gql(
|
|
216
|
+
Queries.UPDATE_PREDICTION_SET_DATA_INFO,
|
|
217
|
+
Queries.UPDATE_PREDICTION_SET_DATA_INFO["variables"](
|
|
218
|
+
dataset_id=dataset_id,
|
|
219
|
+
id=id,
|
|
220
|
+
annotation_count=annotation_count,
|
|
221
|
+
data_count=data_count
|
|
222
|
+
)
|
|
223
|
+
)
|
|
224
|
+
prediction_set = response.get("updatePredictionSet")
|
|
225
|
+
return prediction_set.get("id") if prediction_set else None
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
spb_onprem/__init__.py,sha256=
|
|
2
|
-
spb_onprem/_version.py,sha256=
|
|
1
|
+
spb_onprem/__init__.py,sha256=ugmA-tqXYbVB8OoRYW8SjxRitLTIwHvWQZ-U2KyKjdo,2885
|
|
2
|
+
spb_onprem/_version.py,sha256=Sc1qEPGqm9lq7B7gOJTSc6KB6ru5lGdWZqZtirZLNXQ,706
|
|
3
3
|
spb_onprem/base_model.py,sha256=XLtyoxRBs68LrvbFH8V4EvQGPc2W17koC310MnS37jc,442
|
|
4
4
|
spb_onprem/base_service.py,sha256=dPfr3mGXYlqadOXycu6RBFX1HcZ1qzEsskLoOxERLOU,5737
|
|
5
5
|
spb_onprem/base_types.py,sha256=5HO6uy6qf08b4KSElwIaGy7UkoQG2KqVO6gcHbsqqSo,269
|
|
6
|
-
spb_onprem/entities.py,sha256=
|
|
6
|
+
spb_onprem/entities.py,sha256=LoywYC22ErWIWcJZQYg_foO_5c25pd77_11tFIKhsZk,1084
|
|
7
7
|
spb_onprem/exceptions.py,sha256=jx5rTGsVZ5shOdbgQzk8GcSyMWFtb_3xhPq6Sylwc5o,478
|
|
8
8
|
spb_onprem/searches.py,sha256=-ARAdCumAa1RViwhcinh-E7VHLs4xv5gk9dPyNze6-4,1448
|
|
9
9
|
spb_onprem/activities/__init__.py,sha256=iTHUza8mtiBd_QEPH-0tzrOsd_VSwSQNMbzVWfebQ6c,175
|
|
10
10
|
spb_onprem/activities/queries.py,sha256=L01PRDUQdbbIGoKP_M-CmZ1ORQzuq9NOr-rdWLW0ejE,6083
|
|
11
|
-
spb_onprem/activities/service.py,sha256=
|
|
11
|
+
spb_onprem/activities/service.py,sha256=jWfgAZGrULR8IETdPtUoNjwJDm-Zs8ZiC23eQEYBveA,11431
|
|
12
12
|
spb_onprem/activities/entities/__init__.py,sha256=lJXPl4UqurNscZOYBcCMfRZBp27JKbPEbab5iXtL3ME,237
|
|
13
13
|
spb_onprem/activities/entities/activity.py,sha256=xVJCrtU47ZG-ALRxsOauT0fIxc9EzqkTyw1xt5qVqJQ,1358
|
|
14
14
|
spb_onprem/activities/entities/activity_history.py,sha256=6Iyt8mUjpWvC7KpCJj56Fn73MXuL_uIQKjz90o86cso,1037
|
|
@@ -22,20 +22,21 @@ spb_onprem/activities/params/start_activity.py,sha256=uBf78FYkjGkM5g8shIoMgz8qoC
|
|
|
22
22
|
spb_onprem/activities/params/update_activity.py,sha256=QU3h2YkPFkqHEHXv6078V2PWEa272h60ST6FYPPZLWU,2615
|
|
23
23
|
spb_onprem/activities/params/update_activity_history.py,sha256=ScWxOG7pZ-7WcTzvJleZIm-TsZVTRkwNrTCyNDyyVSc,1620
|
|
24
24
|
spb_onprem/contents/__init__.py,sha256=9EfIMQxbJuUZVUqsTa3Ji-yDidFPQQB5gnJI4R01YWI,74
|
|
25
|
-
spb_onprem/contents/queries.py,sha256=
|
|
26
|
-
spb_onprem/contents/service.py,sha256=
|
|
25
|
+
spb_onprem/contents/queries.py,sha256=DuBlNTvgbo1gYfYIodScu2G5FngerZL6DzteBejV0-g,1188
|
|
26
|
+
spb_onprem/contents/service.py,sha256=Waf3Kx3r4JXL7K8JUeg-LsJ5jEI3OqyoxgM3JWM78QI,5521
|
|
27
27
|
spb_onprem/contents/entities/__init__.py,sha256=HsQ9J8UDxCx4xYTdMKQto7HCVUQilNozQCkIsceWezk,117
|
|
28
28
|
spb_onprem/contents/entities/base_content.py,sha256=nM7NALpeRjtUKPv7eU0-hlqT1rPtD2mwB6Bvv_2Zc1E,346
|
|
29
29
|
spb_onprem/contents/entities/content.py,sha256=YhTGHE9ykiOgFjvxbnLzSLg2665jPYrDATteB9PbGPE,534
|
|
30
|
-
spb_onprem/contents/params/__init__.py,sha256=
|
|
30
|
+
spb_onprem/contents/params/__init__.py,sha256=YCkHhN01Dkx9ytCG35oSh2FmDDZcW-Dv2FhT1bFmzio,240
|
|
31
31
|
spb_onprem/contents/params/create.py,sha256=JLMbNiIecOsVvVSYY6DfUpWjZxZKuO9-NSpuRlSIxS0,408
|
|
32
|
+
spb_onprem/contents/params/delete_content.py,sha256=_M9d6FJpA47_pcM5YyHbMmTZv1F2wUwPryQTL9RxZwM,298
|
|
32
33
|
spb_onprem/contents/params/get_download_url.py,sha256=3oaiqmjJRxw0U59SoTxoih1pcU-cuQvcU-g89lCcqtQ,98
|
|
33
34
|
spb_onprem/data/__init__.py,sha256=5XKxNm2BlKufrX5uRQreUEzJ-nerTrozKpG1RJL5wt8,68
|
|
34
|
-
spb_onprem/data/queries.py,sha256=
|
|
35
|
-
spb_onprem/data/service.py,sha256=
|
|
35
|
+
spb_onprem/data/queries.py,sha256=mGnBBDuFNNVMpATid-uNpqVEzeu3R3u0wZnQDe8wR-o,17154
|
|
36
|
+
spb_onprem/data/service.py,sha256=nUGw9Scn5FLFLURAXOid5sGrlfQLGH7r59uOCzTHVjk,25799
|
|
36
37
|
spb_onprem/data/entities/__init__.py,sha256=ZQ2YWAHIan2ZLa1z5ozPSJwW3pqdlsJCxmAT3NuG89c,376
|
|
37
38
|
spb_onprem/data/entities/annotation.py,sha256=pS97Nx3TWMBrb-iiBfRct4RXl7hPMy2IOzTIpXkmBJU,751
|
|
38
|
-
spb_onprem/data/entities/data.py,sha256=
|
|
39
|
+
spb_onprem/data/entities/data.py,sha256=TOdnete4bfwROQ7C7oew7vV8bZyewQvFdjccyx4mec8,1217
|
|
39
40
|
spb_onprem/data/entities/data_meta.py,sha256=zh5Cw_5F5c9f0Ixp-rHDe6P4PceSdIHHwTqcaMoW9Yk,1064
|
|
40
41
|
spb_onprem/data/entities/data_slice.py,sha256=5ElQvOJE6Ivo9mWeNS3JlUV3EUtw8LAejPkfdLRq2aE,633
|
|
41
42
|
spb_onprem/data/entities/frame.py,sha256=pnJ3rVzduvi_pZdJR_IJp2wRhexZspSDMUhY6CsY5Io,566
|
|
@@ -46,11 +47,11 @@ spb_onprem/data/enums/data_meta_type.py,sha256=9rd12-7C1udbbIGvnuGURKmd5-lndtW7o
|
|
|
46
47
|
spb_onprem/data/enums/data_status.py,sha256=uV_yLtigSmht-tKFaLwvO4MpV5j4GzwuBRDILGrxMBA,292
|
|
47
48
|
spb_onprem/data/enums/data_type.py,sha256=9ErNmOK-RIOrhyt25SE2WVPSx_nTxt3ncTG5UtW92iM,225
|
|
48
49
|
spb_onprem/data/enums/scene_type.py,sha256=pTibjST4nJc3ylUrjQifYBdtLIcS2D0q71bdhyDjbIk,205
|
|
49
|
-
spb_onprem/data/params/__init__.py,sha256=
|
|
50
|
+
spb_onprem/data/params/__init__.py,sha256=R8x9zC7VZK4R5jm41wvBvCQ8qDCTMR1GdKyV13lnYaU,2598
|
|
50
51
|
spb_onprem/data/params/change_data_labeler.py,sha256=jUG6bm0uheR1jVCy-RwFY97C9K93fdDdf3KDHJIelM4,570
|
|
51
52
|
spb_onprem/data/params/change_data_reviewer.py,sha256=dFix3NfS2_8lpaoWxz6anLEJWMLdmRKM34ib8XwQiVQ,577
|
|
52
53
|
spb_onprem/data/params/change_data_status.py,sha256=34gGtmTJT8wiDDpHOgQYvgP0-ziuYEBDFlpfY8SAZtI,593
|
|
53
|
-
spb_onprem/data/params/create_data.py,sha256=
|
|
54
|
+
spb_onprem/data/params/create_data.py,sha256=aL6Bwd9talB2rnmdHbR9QkUx1Msni07-6aoBkhGoivM,1827
|
|
54
55
|
spb_onprem/data/params/data.py,sha256=ZPJRjCbkjOCV73NxlGm5DxbSaNOAztVBRZRE8FFQ9mw,779
|
|
55
56
|
spb_onprem/data/params/data_list.py,sha256=sxMBaK3n2YgbUQ9yNmcRkcngbClnkEJFAeeX07umS2M,8645
|
|
56
57
|
spb_onprem/data/params/delete_annotation_version.py,sha256=R_jBVujor-09VS1Aa8yGP14R8nJ2Aa9OmmKezC4gz4c,457
|
|
@@ -58,6 +59,8 @@ spb_onprem/data/params/delete_data.py,sha256=HN4xXW9o4ZFOSjlzRZJ-F0wwtd_RzgI30gV
|
|
|
58
59
|
spb_onprem/data/params/delete_prediction.py,sha256=X3sV2mrSUqg8FOlZYRtb0o1hAwFos48ydFK2Il8UCp4,479
|
|
59
60
|
spb_onprem/data/params/delete_scene.py,sha256=pD8TtS5Jm2uQC3F2EQ6-nAbQuQbJLG2pAwFqmsgucyM,478
|
|
60
61
|
spb_onprem/data/params/delete_slice_annotation_version.py,sha256=5M12bHKg9HJlh6hQ8XgLwFrfhTU7CiLM__gLZVBYrMg,595
|
|
62
|
+
spb_onprem/data/params/get_data_detail.py,sha256=7_aWRcHHsX0U2chl3CWrVLRUfzeoPzK8JtjwUGQdv0Y,388
|
|
63
|
+
spb_onprem/data/params/get_evaluation_value_list.py,sha256=zsnk5y2FrZXHbb8jIsxQ8BTTX9-HIAVXZe4B37mxvmk,1115
|
|
61
64
|
spb_onprem/data/params/insert_annotation_version.py,sha256=bxw9LndaDJ0DLBo8U8kkGctHz1ToEgD_UxWWVpmJpks,987
|
|
62
65
|
spb_onprem/data/params/insert_data_to_slice.py,sha256=_hLNC80wJbxGSouOpjwTY19mAf-itfRR4sxHnlLiiqk,478
|
|
63
66
|
spb_onprem/data/params/insert_prediction.py,sha256=68q5ZSSq4arAsozy1i52phkUoBfUSzNVVxCuygRYDfI,621
|
|
@@ -66,22 +69,23 @@ spb_onprem/data/params/insert_slice_annotation_version.py,sha256=KinI05UaaQWcv-1
|
|
|
66
69
|
spb_onprem/data/params/remove_data_from_slice.py,sha256=UjoQH0gTdm1nE1DafUmq3CP1nzHiCwDUnytQ6oBcZAA,478
|
|
67
70
|
spb_onprem/data/params/remove_data_meta.py,sha256=nlj2Ln9CtdS4Si8TmETZlQoAU62nCTCLbZR2_yE3yB8,1847
|
|
68
71
|
spb_onprem/data/params/update_annotation.py,sha256=zEmXYlBBYeC8A9eNyGidSw2XbgLd-pgvRZK5eui2plA,787
|
|
69
|
-
spb_onprem/data/params/update_data.py,sha256=
|
|
72
|
+
spb_onprem/data/params/update_data.py,sha256=159Mx-5gmKQZKSAZlpTNiE4_EHVNwkEbjyeOZLs9SuM,1315
|
|
70
73
|
spb_onprem/data/params/update_data_slice.py,sha256=xjxUs0y4koFtW1uW84ARKsepK8FwhGVjMkSMS6A1eFU,523
|
|
71
74
|
spb_onprem/data/params/update_frames.py,sha256=AluCJDUJelq_yrXR3DjkwWF-82qQukvERkIE-qNjO8I,1226
|
|
72
75
|
spb_onprem/data/params/update_scene.py,sha256=zMJFUHF3vz_hVSkkVEwHwdZBjWRbRxgTQFtsBowAg-k,930
|
|
73
76
|
spb_onprem/data/params/update_slice_annotation.py,sha256=7eu2DFvznOv0HuvKiZTHDOTS2UijyTjbEiqLBbUncfE,607
|
|
74
77
|
spb_onprem/data/params/update_slice_annotation_version.py,sha256=M2STViLDSQDZ0WNYLcenum-NHpKQXUOfGh1XE6An_7c,1318
|
|
75
|
-
spb_onprem/data/params/upsert_data_meta.py,sha256=
|
|
78
|
+
spb_onprem/data/params/upsert_data_meta.py,sha256=faBI9UuH9onOxmEHc4C63nFJXqZ8YMnD2q-HKj_ZMxM,1033
|
|
76
79
|
spb_onprem/datasets/__init__.py,sha256=Sjrb1tewB3CoODtHjRYOe-w2HpZi9UgbCyE2p8MzHfw,74
|
|
77
|
-
spb_onprem/datasets/queries.py,sha256=
|
|
78
|
-
spb_onprem/datasets/service.py,sha256=
|
|
80
|
+
spb_onprem/datasets/queries.py,sha256=uJKFD8awmmO6wiltX7fN8ovR0_yewarKkpHAwR7LRXY,2211
|
|
81
|
+
spb_onprem/datasets/service.py,sha256=r5dim9mQcyb_gwBQ9oG4je0K8iHs1elvcWFLW9wvzYA,4439
|
|
79
82
|
spb_onprem/datasets/entities/__init__.py,sha256=yx5tsyX4GLYrjqx6-ZEoceJ7jxQzIh15OgyFFCs7vow,59
|
|
80
83
|
spb_onprem/datasets/entities/dataset.py,sha256=HO7EU5vwSBnILCI9xXhgZb36akIi6AC0ApamQlQczhU,538
|
|
81
|
-
spb_onprem/datasets/params/__init__.py,sha256=
|
|
84
|
+
spb_onprem/datasets/params/__init__.py,sha256=uqy7QijSgvOzrRY0xIg9GxRUo5Bquscs3dTiboLeTCM,370
|
|
82
85
|
spb_onprem/datasets/params/create_dataset.py,sha256=YGhLvY4arthjZwKQ28HLv7ch0Gd2lJ-vyGHBZnMuy4E,719
|
|
83
86
|
spb_onprem/datasets/params/dataset.py,sha256=WTOUl5M5cc6rtTwhLw_z31Cs209LkBq8Ja4LJGzrmGE,668
|
|
84
87
|
spb_onprem/datasets/params/datasets.py,sha256=Hx4YlLxfb-Qwi4Y5AFl5pyyjupvuoVcCtxLPGjIV7UY,1580
|
|
88
|
+
spb_onprem/datasets/params/delete_dataset.py,sha256=hzHV66_2TCJj1UK1czTNDzYm8fbeAthlvRvlVonRySI,323
|
|
85
89
|
spb_onprem/datasets/params/update_dataset.py,sha256=1oaj2qB9hvnypl4-WtcTNCa4iSuEkJjEalq2JsTm5Ro,924
|
|
86
90
|
spb_onprem/exports/__init__.py,sha256=l_eUjnrFJXs-vdOeMNiWYK-UdJkxArv7hxmKDG4Dfio,181
|
|
87
91
|
spb_onprem/exports/queries.py,sha256=sFT6VX2UwAYyVNkiBteQ_JtKYnhMrt64ww_NuXhUhLM,4084
|
|
@@ -94,6 +98,26 @@ spb_onprem/exports/params/delete_export.py,sha256=EusUB86HNLtFYu4gIDJqZsODRETtTY
|
|
|
94
98
|
spb_onprem/exports/params/export.py,sha256=0EP6nkQc6vFI-f8218Yq4NxfFcw8MQtHMNkYlGOXqo4,799
|
|
95
99
|
spb_onprem/exports/params/exports.py,sha256=oOQo-2Cqsm3Th3s-0gNcVGjbOyZqB6ujPRLXipulB4Y,2417
|
|
96
100
|
spb_onprem/exports/params/update_export.py,sha256=iOlZoHEN2iiY83hCZWdgTn-O9J8hcSUqd5K7_gEzvP4,3057
|
|
101
|
+
spb_onprem/inferences/__init__.py,sha256=5SBXFgLWbTQV-lHoP7it4AbSAAAw_7IRm4FGRPPAeYw,68
|
|
102
|
+
spb_onprem/inferences/service.py,sha256=ZkORci7Yt8Ruo0aY2KPsvynZG_uuitMKJO3FR22Nplc,1719
|
|
103
|
+
spb_onprem/models/__init__.py,sha256=7Z6SiJqR0CVoK44Lx_J1WIPBO72Pe0mR4ZrWyb9tqAk,109
|
|
104
|
+
spb_onprem/models/entities.py,sha256=TgsNdN5zJtgZc3FXmB2yv8rFjFwRzLaqhubdK40Zupw,205
|
|
105
|
+
spb_onprem/models/queries.py,sha256=Pwymn30vaxXI89Yl_glkKSJKD5xfVj3PCLes2pUdXrQ,899
|
|
106
|
+
spb_onprem/models/service.py,sha256=pvAHIJFw_0S8sBlUjDb2dUVT0whqR-ZiWfbWdw1cLuw,2499
|
|
107
|
+
spb_onprem/models/params/__init__.py,sha256=iwZ8TWZEt5A4cMmidslkAdsBFspTxhs-WKTNzjAWPys,154
|
|
108
|
+
spb_onprem/models/params/delete_model.py,sha256=onUSod8jKNeOH3zIziK82GCv2BzLF-fiKUjSu7bX87U,403
|
|
109
|
+
spb_onprem/models/params/get_models.py,sha256=IZtCDQZd4lUumDj0NEr0q_PFefJvdHSj2hqmdymyu1E,734
|
|
110
|
+
spb_onprem/predictions/__init__.py,sha256=8BDi5TI_OuCT5aHffosRQVO41v3K909mY48qTWsP6JU,135
|
|
111
|
+
spb_onprem/predictions/entities.py,sha256=KABfAB4L4uP65lEkuZ5TzVS3oejCS-metmhj1YIbB2M,441
|
|
112
|
+
spb_onprem/predictions/queries.py,sha256=oL1d8zI5be6kUTeyYV5GDefPW-r_npPP8DwFDwS-vkY,3477
|
|
113
|
+
spb_onprem/predictions/service.py,sha256=uVECUKGUMgqOw4AxlyV5cnYPhBSF3KRbKlx08tP0DPo,8064
|
|
114
|
+
spb_onprem/predictions/params/__init__.py,sha256=aU5-aQosfVekHqEBBlPImUraeFsmxSThNXd_fhhCsMc,648
|
|
115
|
+
spb_onprem/predictions/params/create_prediction_set.py,sha256=DNp7oHt8X1revLBH-5f__xE5suJS3eCZrTjUlCTkD8A,1374
|
|
116
|
+
spb_onprem/predictions/params/delete_prediction_from_data.py,sha256=wwkivSuFybhbDVmSOlH_08U6ze78yP_BPdiyKdBtqHE,575
|
|
117
|
+
spb_onprem/predictions/params/delete_prediction_set.py,sha256=KMiuc8QIWCMLce_Xn5LZjy0PwJWxuLT9qRjKrYUg0LM,457
|
|
118
|
+
spb_onprem/predictions/params/get_prediction_set.py,sha256=byoUu5CkBRfvv2ucIzSBL-8E_mKjCLMo20Lb7IIP4k4,435
|
|
119
|
+
spb_onprem/predictions/params/get_prediction_sets.py,sha256=w3yLmrVWiTPGtXhERe6hwWd_rIv2M-EbwgeiAWCHPBc,761
|
|
120
|
+
spb_onprem/predictions/params/update_prediction_set_data_info.py,sha256=oGl2pZPjsMCeCr3gjYlg8ms0ukl811ogwpSbDhUyxDk,767
|
|
97
121
|
spb_onprem/slices/__init__.py,sha256=xgpNGYzqgwQ8C-Bgw9AZWMAgBW38UU-U4Wube8hkodI,69
|
|
98
122
|
spb_onprem/slices/queries.py,sha256=13JcjACvCg7AbdGfUODDJeq77gGZlNjngFB-9UmgLZk,3080
|
|
99
123
|
spb_onprem/slices/service.py,sha256=TnWGMVflesdaUXFKOBZTpdHSIKkQwj93Q3q9aGts5xI,5615
|
|
@@ -108,20 +132,28 @@ spb_onprem/slices/params/update_slice.py,sha256=kryOmCnRTQ_OU0qDKgugppLrpeUpuLwm
|
|
|
108
132
|
spb_onprem/users/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
109
133
|
spb_onprem/users/entities/__init__.py,sha256=X8HZsCTlQnuPszok3AwI-i7bsQi0Ehul5L_2jZaol5E,57
|
|
110
134
|
spb_onprem/users/entities/auth.py,sha256=_KP-7yUErBxhJMm-dE3ObprPEG6e0JI2qNg6g8aK1qM,3371
|
|
111
|
-
superb_ai_onprem-0.5.
|
|
135
|
+
superb_ai_onprem-0.5.11.dist-info/licenses/LICENSE,sha256=CdinbFiHKGkGl6cPde6WgXhMuzyUXEG6tzy2-7udZ8o,1066
|
|
112
136
|
tests/__init__.py,sha256=Nqnn8clbgv-5l0PgxcTOldg8mkMKrFn4TvPL-rYUUGg,1
|
|
113
137
|
tests/activities/__init__.py,sha256=Nqnn8clbgv-5l0PgxcTOldg8mkMKrFn4TvPL-rYUUGg,1
|
|
114
138
|
tests/activities/real_test.py,sha256=0gQHg7rIEuZndGZyNHMWSD5nUZPMsUGigfCjWFxMthQ,1786
|
|
115
139
|
tests/activities/test_get_activity_history.py,sha256=gNLc4OQLgw9wqToRxV0y5REAHPudZK58h-plj5oczoE,5292
|
|
116
|
-
tests/activities/test_params.py,sha256=
|
|
117
|
-
tests/activities/test_service.py,sha256=
|
|
140
|
+
tests/activities/test_params.py,sha256=P_k03Ll-We3gyFTeACalErP1UzwS2gB6ayIerKMMLEU,2335
|
|
141
|
+
tests/activities/test_service.py,sha256=8nijwzJlAFL9S0TqyuAvOJZzBvPPjxJbrj3EyziT_Ng,4407
|
|
142
|
+
tests/data/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
143
|
+
tests/data/test_data_service.py,sha256=JgcNozcwECKN9-LR80FXkH4RslXVWAGJh-FyODcmRCk,13702
|
|
144
|
+
tests/datasets/__init__.py,sha256=nMsjhPXe9rU87gI_wasqCtz7SsTae2LzpUUnXXzS5zI,23
|
|
145
|
+
tests/datasets/test_dataset_service.py,sha256=Sgw0HWZZJaPWVsbEq6w8tG4WlRBA98b1EoXLT8hRz_E,4881
|
|
118
146
|
tests/exports/__init__.py,sha256=iBqr781TtnT1Tm5wLTCsdftpuRgQifIibxWrB_I7tiw,23
|
|
119
147
|
tests/exports/real_test.py,sha256=KeHWvQP-vHCvFWvD4_7qFmreAX9o_Dd_YowaGFogZu8,3765
|
|
120
148
|
tests/exports/test_entities.py,sha256=hG7G4kVkyHKT3mv4lvrzUqOW8ILeHiYj87QZjQcmg9E,8836
|
|
121
149
|
tests/exports/test_integration.py,sha256=cCcEgwIIHyQRlc04EAXSKz7RcblQvhI2GBR3uVaOOq8,6201
|
|
122
150
|
tests/exports/test_params.py,sha256=oRRa6nEru_FImlB3TrmFiBidz6ZstCx4rVaCK-EMGfQ,11070
|
|
123
|
-
tests/exports/test_service.py,sha256=
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
151
|
+
tests/exports/test_service.py,sha256=sAoFbLWGgRzE61QjnaZ1yymIAuDz7nrbsw42G3klTCQ,14660
|
|
152
|
+
tests/models/__init__.py,sha256=Z2naiUgIjI-nHGsldwze1BqpV5JfDKTaBk-vg6_h6t4,21
|
|
153
|
+
tests/models/test_model_service.py,sha256=6Wm9nmY7nbqImSu62d0q4VtNiCjKpMji6eSIgSi7lfA,7587
|
|
154
|
+
tests/predictions/__init__.py,sha256=mFAXy0xOEXVYM7quYfIhwSih3kcEDdD4rLPq5G91Igg,26
|
|
155
|
+
tests/predictions/test_prediction_service.py,sha256=9maX0JGxfUJ1QO_YEdS9OI5-o1tXlMWyeEbvZB8LB48,12679
|
|
156
|
+
superb_ai_onprem-0.5.11.dist-info/METADATA,sha256=FK0vXshMvz4-5X8q-xxbJSLXKuvxki54YnRLwrKwEFk,5818
|
|
157
|
+
superb_ai_onprem-0.5.11.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
158
|
+
superb_ai_onprem-0.5.11.dist-info/top_level.txt,sha256=LbqU6FjWKaxO7FPS5-71e3OIS8VgBi5VrtQMWFOW25Q,17
|
|
159
|
+
superb_ai_onprem-0.5.11.dist-info/RECORD,,
|
tests/activities/test_params.py
CHANGED
|
@@ -20,7 +20,7 @@ class TestUpdateActivityHistoryParams:
|
|
|
20
20
|
)
|
|
21
21
|
|
|
22
22
|
# Then
|
|
23
|
-
assert params["
|
|
23
|
+
assert params["id"] == activity_history_id
|
|
24
24
|
assert params["status"] == status
|
|
25
25
|
assert params["meta"] == meta
|
|
26
26
|
assert "progress" not in params
|
|
@@ -37,7 +37,7 @@ class TestUpdateActivityHistoryParams:
|
|
|
37
37
|
)
|
|
38
38
|
|
|
39
39
|
# Then
|
|
40
|
-
assert params["
|
|
40
|
+
assert params["id"] == activity_history_id
|
|
41
41
|
assert params["progress"] == progress
|
|
42
42
|
assert "status" not in params
|
|
43
43
|
assert "meta" not in params
|
tests/activities/test_service.py
CHANGED
|
@@ -15,12 +15,10 @@ class TestActivityService:
|
|
|
15
15
|
def test_create_activity(self, activity_service):
|
|
16
16
|
# Given
|
|
17
17
|
mock_response = {
|
|
18
|
-
"
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
"description": "test_description"
|
|
23
|
-
}
|
|
18
|
+
"id": "test_id",
|
|
19
|
+
"activity_type": "test_type",
|
|
20
|
+
"name": "test_name",
|
|
21
|
+
"description": "test_description"
|
|
24
22
|
}
|
|
25
23
|
activity_service.request_gql = MagicMock(return_value=mock_response)
|
|
26
24
|
|
|
@@ -34,29 +32,27 @@ class TestActivityService:
|
|
|
34
32
|
# Then
|
|
35
33
|
assert isinstance(activity, Activity)
|
|
36
34
|
assert activity.id == "test_id"
|
|
37
|
-
assert activity.
|
|
35
|
+
assert activity.activity_type == "test_type"
|
|
38
36
|
assert activity.name == "test_name"
|
|
39
37
|
assert activity.description == "test_description"
|
|
40
38
|
|
|
41
39
|
def test_get_activities(self, activity_service):
|
|
42
40
|
# Given
|
|
43
41
|
mock_response = {
|
|
44
|
-
"jobs":
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
"totalCount": 2
|
|
59
|
-
}
|
|
42
|
+
"jobs": [
|
|
43
|
+
{
|
|
44
|
+
"id": "test_id_1",
|
|
45
|
+
"activity_type": "test_type",
|
|
46
|
+
"name": "test_name_1"
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
"id": "test_id_2",
|
|
50
|
+
"activity_type": "test_type",
|
|
51
|
+
"name": "test_name_2"
|
|
52
|
+
}
|
|
53
|
+
],
|
|
54
|
+
"next": "next_cursor",
|
|
55
|
+
"totalCount": 2
|
|
60
56
|
}
|
|
61
57
|
activity_service.request_gql = MagicMock(return_value=mock_response)
|
|
62
58
|
|
|
@@ -74,11 +70,9 @@ class TestActivityService:
|
|
|
74
70
|
def test_start_activity(self, activity_service):
|
|
75
71
|
# Given
|
|
76
72
|
mock_response = {
|
|
77
|
-
"
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
"status": ActivityStatus.RUNNING.value
|
|
81
|
-
}
|
|
73
|
+
"id": "test_history_id",
|
|
74
|
+
"jobId": "test_activity_id",
|
|
75
|
+
"status": ActivityStatus.RUNNING.value
|
|
82
76
|
}
|
|
83
77
|
activity_service.request_gql = MagicMock(return_value=mock_response)
|
|
84
78
|
|
|
@@ -97,11 +91,9 @@ class TestActivityService:
|
|
|
97
91
|
def test_update_activity_history_status(self, activity_service):
|
|
98
92
|
# Given
|
|
99
93
|
mock_response = {
|
|
100
|
-
"
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
"status": ActivityStatus.SUCCESS.value
|
|
104
|
-
}
|
|
94
|
+
"id": "test_history_id",
|
|
95
|
+
"jobId": "test_activity_id",
|
|
96
|
+
"status": ActivityStatus.SUCCESS.value
|
|
105
97
|
}
|
|
106
98
|
activity_service.request_gql = MagicMock(return_value=mock_response)
|
|
107
99
|
|
|
@@ -119,11 +111,9 @@ class TestActivityService:
|
|
|
119
111
|
def test_update_activity_history_progress(self, activity_service):
|
|
120
112
|
# Given
|
|
121
113
|
mock_response = {
|
|
122
|
-
"
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
"progress": {"current": 50, "total": 100}
|
|
126
|
-
}
|
|
114
|
+
"id": "test_history_id",
|
|
115
|
+
"jobId": "test_activity_id",
|
|
116
|
+
"progress": {"current": 50, "total": 100}
|
|
127
117
|
}
|
|
128
118
|
activity_service.request_gql = MagicMock(return_value=mock_response)
|
|
129
119
|
|
tests/data/__init__.py
ADDED
|
File without changes
|