superb-ai-onprem 0.9.0__py3-none-any.whl → 0.10.0__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 +39 -9
- spb_onprem/_version.py +2 -2
- spb_onprem/data/entities/__init__.py +2 -0
- spb_onprem/data/entities/data.py +2 -0
- spb_onprem/data/entities/data_annotation_stats.py +8 -0
- spb_onprem/data/params/data_list.py +7 -2
- spb_onprem/data/params/update_data.py +11 -0
- spb_onprem/data/params/update_data_slice.py +14 -2
- spb_onprem/data/queries.py +12 -1
- spb_onprem/data/service.py +9 -0
- spb_onprem/entities.py +24 -6
- spb_onprem/models/__init__.py +8 -3
- spb_onprem/models/entities/__init__.py +9 -0
- spb_onprem/models/entities/model.py +32 -0
- spb_onprem/models/entities/model_page_info.py +14 -0
- spb_onprem/models/entities/model_train_class.py +15 -0
- spb_onprem/models/params/__init__.py +16 -4
- spb_onprem/models/params/create_model.py +70 -0
- spb_onprem/models/params/delete_model.py +11 -8
- spb_onprem/models/params/model.py +17 -0
- spb_onprem/models/params/models.py +60 -0
- spb_onprem/models/params/pin_model.py +17 -0
- spb_onprem/models/params/unpin_model.py +17 -0
- spb_onprem/models/params/update_model.py +61 -0
- spb_onprem/models/queries.py +224 -19
- spb_onprem/models/service.py +251 -30
- spb_onprem/reports/__init__.py +25 -0
- spb_onprem/reports/entities/__init__.py +10 -0
- spb_onprem/reports/entities/analytics_report.py +22 -0
- spb_onprem/reports/entities/analytics_report_item.py +30 -0
- spb_onprem/reports/entities/analytics_report_page_info.py +14 -0
- spb_onprem/reports/params/__init__.py +29 -0
- spb_onprem/reports/params/analytics_report.py +17 -0
- spb_onprem/reports/params/analytics_reports.py +87 -0
- spb_onprem/reports/params/create_analytics_report.py +35 -0
- spb_onprem/reports/params/create_analytics_report_item.py +47 -0
- spb_onprem/reports/params/delete_analytics_report.py +17 -0
- spb_onprem/reports/params/delete_analytics_report_item.py +20 -0
- spb_onprem/reports/params/update_analytics_report.py +38 -0
- spb_onprem/reports/params/update_analytics_report_item.py +46 -0
- spb_onprem/reports/queries.py +239 -0
- spb_onprem/reports/service.py +328 -0
- spb_onprem/searches.py +18 -0
- {superb_ai_onprem-0.9.0.dist-info → superb_ai_onprem-0.10.0.dist-info}/METADATA +53 -9
- {superb_ai_onprem-0.9.0.dist-info → superb_ai_onprem-0.10.0.dist-info}/RECORD +48 -38
- spb_onprem/models/entities.py +0 -9
- spb_onprem/models/params/get_models.py +0 -29
- spb_onprem/predictions/__init__.py +0 -7
- spb_onprem/predictions/entities.py +0 -11
- spb_onprem/predictions/params/__init__.py +0 -15
- spb_onprem/predictions/params/create_prediction_set.py +0 -44
- spb_onprem/predictions/params/delete_prediction_from_data.py +0 -20
- spb_onprem/predictions/params/delete_prediction_set.py +0 -14
- spb_onprem/predictions/params/get_prediction_set.py +0 -14
- spb_onprem/predictions/params/get_prediction_sets.py +0 -29
- spb_onprem/predictions/params/update_prediction_set_data_info.py +0 -28
- spb_onprem/predictions/queries.py +0 -110
- spb_onprem/predictions/service.py +0 -225
- tests/models/__init__.py +0 -1
- tests/models/test_model_service.py +0 -249
- tests/predictions/__init__.py +0 -1
- tests/predictions/test_prediction_service.py +0 -359
- {superb_ai_onprem-0.9.0.dist-info → superb_ai_onprem-0.10.0.dist-info}/WHEEL +0 -0
- {superb_ai_onprem-0.9.0.dist-info → superb_ai_onprem-0.10.0.dist-info}/licenses/LICENSE +0 -0
- {superb_ai_onprem-0.9.0.dist-info → superb_ai_onprem-0.10.0.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
def delete_analytics_report_item_params(
|
|
2
|
+
item_id: str,
|
|
3
|
+
report_id: str,
|
|
4
|
+
dataset_id: str,
|
|
5
|
+
):
|
|
6
|
+
"""Get parameters for deleting an analytics report item.
|
|
7
|
+
|
|
8
|
+
Args:
|
|
9
|
+
item_id: The item ID
|
|
10
|
+
report_id: The report ID
|
|
11
|
+
dataset_id: The dataset ID
|
|
12
|
+
|
|
13
|
+
Returns:
|
|
14
|
+
dict: Parameters for deleting an analytics report item
|
|
15
|
+
"""
|
|
16
|
+
return {
|
|
17
|
+
"itemId": item_id,
|
|
18
|
+
"reportId": report_id,
|
|
19
|
+
"datasetId": dataset_id,
|
|
20
|
+
}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
from typing import Union, Any
|
|
2
|
+
from spb_onprem.base_types import Undefined, UndefinedType
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
def update_analytics_report_params(
|
|
6
|
+
dataset_id: str,
|
|
7
|
+
report_id: str,
|
|
8
|
+
title: Union[str, UndefinedType] = Undefined,
|
|
9
|
+
description: Union[str, UndefinedType] = Undefined,
|
|
10
|
+
meta: Union[Any, UndefinedType] = Undefined,
|
|
11
|
+
):
|
|
12
|
+
"""Get parameters for updating an analytics report.
|
|
13
|
+
|
|
14
|
+
Args:
|
|
15
|
+
dataset_id: The dataset ID
|
|
16
|
+
report_id: The report ID
|
|
17
|
+
title: Optional new title
|
|
18
|
+
description: Optional new description
|
|
19
|
+
meta: Optional new metadata
|
|
20
|
+
|
|
21
|
+
Returns:
|
|
22
|
+
dict: Parameters for updating an analytics report
|
|
23
|
+
"""
|
|
24
|
+
params = {
|
|
25
|
+
"datasetId": dataset_id,
|
|
26
|
+
"reportId": report_id,
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
if not isinstance(title, UndefinedType):
|
|
30
|
+
params["title"] = title
|
|
31
|
+
|
|
32
|
+
if not isinstance(description, UndefinedType):
|
|
33
|
+
params["description"] = description
|
|
34
|
+
|
|
35
|
+
if not isinstance(meta, UndefinedType):
|
|
36
|
+
params["meta"] = meta
|
|
37
|
+
|
|
38
|
+
return params
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
from typing import Union, Any
|
|
2
|
+
from spb_onprem.base_types import Undefined, UndefinedType
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
def update_analytics_report_item_params(
|
|
6
|
+
dataset_id: str,
|
|
7
|
+
report_id: str,
|
|
8
|
+
item_id: str,
|
|
9
|
+
title: Union[str, UndefinedType] = Undefined,
|
|
10
|
+
description: Union[str, UndefinedType] = Undefined,
|
|
11
|
+
content_id: Union[str, UndefinedType] = Undefined,
|
|
12
|
+
meta: Union[Any, UndefinedType] = Undefined,
|
|
13
|
+
):
|
|
14
|
+
"""Get parameters for updating an analytics report item.
|
|
15
|
+
|
|
16
|
+
Args:
|
|
17
|
+
dataset_id: The dataset ID
|
|
18
|
+
report_id: The report ID
|
|
19
|
+
item_id: The item ID
|
|
20
|
+
title: Optional new title
|
|
21
|
+
description: Optional new description
|
|
22
|
+
content_id: Optional new content ID
|
|
23
|
+
meta: Optional new metadata
|
|
24
|
+
|
|
25
|
+
Returns:
|
|
26
|
+
dict: Parameters for updating an analytics report item
|
|
27
|
+
"""
|
|
28
|
+
params = {
|
|
29
|
+
"datasetId": dataset_id,
|
|
30
|
+
"reportId": report_id,
|
|
31
|
+
"itemId": item_id,
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
if not isinstance(title, UndefinedType):
|
|
35
|
+
params["title"] = title
|
|
36
|
+
|
|
37
|
+
if not isinstance(description, UndefinedType):
|
|
38
|
+
params["description"] = description
|
|
39
|
+
|
|
40
|
+
if not isinstance(content_id, UndefinedType):
|
|
41
|
+
params["contentId"] = content_id
|
|
42
|
+
|
|
43
|
+
if not isinstance(meta, UndefinedType):
|
|
44
|
+
params["meta"] = meta
|
|
45
|
+
|
|
46
|
+
return params
|
|
@@ -0,0 +1,239 @@
|
|
|
1
|
+
from spb_onprem.reports.params import (
|
|
2
|
+
analytics_report_params,
|
|
3
|
+
analytics_reports_params,
|
|
4
|
+
create_analytics_report_params,
|
|
5
|
+
update_analytics_report_params,
|
|
6
|
+
delete_analytics_report_params,
|
|
7
|
+
create_analytics_report_item_params,
|
|
8
|
+
update_analytics_report_item_params,
|
|
9
|
+
delete_analytics_report_item_params,
|
|
10
|
+
)
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class Schemas:
|
|
14
|
+
ANALYTICS_REPORT_ITEM = '''
|
|
15
|
+
id
|
|
16
|
+
type
|
|
17
|
+
title
|
|
18
|
+
description
|
|
19
|
+
content {
|
|
20
|
+
id
|
|
21
|
+
downloadURL
|
|
22
|
+
}
|
|
23
|
+
meta
|
|
24
|
+
createdAt
|
|
25
|
+
createdBy
|
|
26
|
+
updatedAt
|
|
27
|
+
updatedBy
|
|
28
|
+
'''
|
|
29
|
+
|
|
30
|
+
ANALYTICS_REPORT = '''
|
|
31
|
+
datasetId
|
|
32
|
+
id
|
|
33
|
+
title
|
|
34
|
+
description
|
|
35
|
+
meta
|
|
36
|
+
createdAt
|
|
37
|
+
updatedAt
|
|
38
|
+
createdBy
|
|
39
|
+
updatedBy
|
|
40
|
+
items {
|
|
41
|
+
id
|
|
42
|
+
type
|
|
43
|
+
title
|
|
44
|
+
description
|
|
45
|
+
content {
|
|
46
|
+
id
|
|
47
|
+
downloadURL
|
|
48
|
+
}
|
|
49
|
+
meta
|
|
50
|
+
createdAt
|
|
51
|
+
createdBy
|
|
52
|
+
updatedAt
|
|
53
|
+
updatedBy
|
|
54
|
+
}
|
|
55
|
+
'''
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
class Queries():
|
|
59
|
+
ANALYTICS_REPORT = {
|
|
60
|
+
"name": "analyticsReport",
|
|
61
|
+
"query": f'''
|
|
62
|
+
query AnalyticsReport(
|
|
63
|
+
$reportId: ID!,
|
|
64
|
+
$datasetId: String!
|
|
65
|
+
) {{
|
|
66
|
+
analyticsReport(
|
|
67
|
+
reportId: $reportId,
|
|
68
|
+
datasetId: $datasetId
|
|
69
|
+
) {{
|
|
70
|
+
{Schemas.ANALYTICS_REPORT}
|
|
71
|
+
}}
|
|
72
|
+
}}
|
|
73
|
+
''',
|
|
74
|
+
"variables": analytics_report_params,
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
ANALYTICS_REPORTS = {
|
|
78
|
+
"name": "analyticsReports",
|
|
79
|
+
"query": f'''
|
|
80
|
+
query AnalyticsReports(
|
|
81
|
+
$datasetId: ID!,
|
|
82
|
+
$filter: AnalyticsReportFilter,
|
|
83
|
+
$cursor: String,
|
|
84
|
+
$length: Int,
|
|
85
|
+
$orderBy: AnalyticsReportOrderBy
|
|
86
|
+
) {{
|
|
87
|
+
analyticsReports(
|
|
88
|
+
datasetId: $datasetId,
|
|
89
|
+
filter: $filter,
|
|
90
|
+
cursor: $cursor,
|
|
91
|
+
length: $length,
|
|
92
|
+
orderBy: $orderBy
|
|
93
|
+
) {{
|
|
94
|
+
analyticsReports {{
|
|
95
|
+
{Schemas.ANALYTICS_REPORT}
|
|
96
|
+
}}
|
|
97
|
+
next
|
|
98
|
+
totalCount
|
|
99
|
+
}}
|
|
100
|
+
}}
|
|
101
|
+
''',
|
|
102
|
+
"variables": analytics_reports_params,
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
CREATE_ANALYTICS_REPORT = {
|
|
106
|
+
"name": "createAnalyticsReport",
|
|
107
|
+
"query": f'''
|
|
108
|
+
mutation CreateAnalyticsReport(
|
|
109
|
+
$datasetId: ID!,
|
|
110
|
+
$title: String,
|
|
111
|
+
$description: String,
|
|
112
|
+
$meta: JSONObject
|
|
113
|
+
) {{
|
|
114
|
+
createAnalyticsReport(
|
|
115
|
+
datasetId: $datasetId,
|
|
116
|
+
title: $title,
|
|
117
|
+
description: $description,
|
|
118
|
+
meta: $meta
|
|
119
|
+
) {{
|
|
120
|
+
{Schemas.ANALYTICS_REPORT}
|
|
121
|
+
}}
|
|
122
|
+
}}
|
|
123
|
+
''',
|
|
124
|
+
"variables": create_analytics_report_params,
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
UPDATE_ANALYTICS_REPORT = {
|
|
128
|
+
"name": "updateAnalyticsReport",
|
|
129
|
+
"query": f'''
|
|
130
|
+
mutation UpdateAnalyticsReport(
|
|
131
|
+
$datasetId: ID!,
|
|
132
|
+
$reportId: ID!,
|
|
133
|
+
$title: String,
|
|
134
|
+
$description: String,
|
|
135
|
+
$meta: JSONObject
|
|
136
|
+
) {{
|
|
137
|
+
updateAnalyticsReport(
|
|
138
|
+
datasetId: $datasetId,
|
|
139
|
+
reportId: $reportId,
|
|
140
|
+
title: $title,
|
|
141
|
+
description: $description,
|
|
142
|
+
meta: $meta
|
|
143
|
+
) {{
|
|
144
|
+
{Schemas.ANALYTICS_REPORT}
|
|
145
|
+
}}
|
|
146
|
+
}}
|
|
147
|
+
''',
|
|
148
|
+
"variables": update_analytics_report_params,
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
DELETE_ANALYTICS_REPORT = {
|
|
152
|
+
"name": "deleteAnalyticsReport",
|
|
153
|
+
"query": '''
|
|
154
|
+
mutation DeleteAnalyticsReport(
|
|
155
|
+
$reportId: String!,
|
|
156
|
+
$datasetId: String!
|
|
157
|
+
) {
|
|
158
|
+
deleteAnalyticsReport(
|
|
159
|
+
reportId: $reportId,
|
|
160
|
+
datasetId: $datasetId
|
|
161
|
+
)
|
|
162
|
+
}
|
|
163
|
+
''',
|
|
164
|
+
"variables": delete_analytics_report_params,
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
CREATE_ANALYTICS_REPORT_ITEM = {
|
|
168
|
+
"name": "createAnalyticsReportItem",
|
|
169
|
+
"query": f'''
|
|
170
|
+
mutation CreateAnalyticsReportItem(
|
|
171
|
+
$datasetId: ID!,
|
|
172
|
+
$reportId: ID!,
|
|
173
|
+
$type: AnalyticsReportItemType!,
|
|
174
|
+
$title: String,
|
|
175
|
+
$description: String,
|
|
176
|
+
$contentId: String,
|
|
177
|
+
$meta: JSONObject
|
|
178
|
+
) {{
|
|
179
|
+
createAnalyticsReportItem(
|
|
180
|
+
datasetId: $datasetId,
|
|
181
|
+
reportId: $reportId,
|
|
182
|
+
type: $type,
|
|
183
|
+
title: $title,
|
|
184
|
+
description: $description,
|
|
185
|
+
contentId: $contentId,
|
|
186
|
+
meta: $meta
|
|
187
|
+
) {{
|
|
188
|
+
{Schemas.ANALYTICS_REPORT_ITEM}
|
|
189
|
+
}}
|
|
190
|
+
}}
|
|
191
|
+
''',
|
|
192
|
+
"variables": create_analytics_report_item_params,
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
UPDATE_ANALYTICS_REPORT_ITEM = {
|
|
196
|
+
"name": "updateAnalyticsReportItem",
|
|
197
|
+
"query": f'''
|
|
198
|
+
mutation UpdateAnalyticsReportItem(
|
|
199
|
+
$datasetId: ID!,
|
|
200
|
+
$reportId: ID!,
|
|
201
|
+
$itemId: ID!,
|
|
202
|
+
$title: String,
|
|
203
|
+
$description: String,
|
|
204
|
+
$contentId: String,
|
|
205
|
+
$meta: JSONObject
|
|
206
|
+
) {{
|
|
207
|
+
updateAnalyticsReportItem(
|
|
208
|
+
datasetId: $datasetId,
|
|
209
|
+
reportId: $reportId,
|
|
210
|
+
itemId: $itemId,
|
|
211
|
+
title: $title,
|
|
212
|
+
description: $description,
|
|
213
|
+
contentId: $contentId,
|
|
214
|
+
meta: $meta
|
|
215
|
+
) {{
|
|
216
|
+
{Schemas.ANALYTICS_REPORT_ITEM}
|
|
217
|
+
}}
|
|
218
|
+
}}
|
|
219
|
+
''',
|
|
220
|
+
"variables": update_analytics_report_item_params,
|
|
221
|
+
}
|
|
222
|
+
|
|
223
|
+
DELETE_ANALYTICS_REPORT_ITEM = {
|
|
224
|
+
"name": "deleteAnalyticsReportItem",
|
|
225
|
+
"query": '''
|
|
226
|
+
mutation DeleteAnalyticsReportItem(
|
|
227
|
+
$itemId: String!,
|
|
228
|
+
$reportId: String!,
|
|
229
|
+
$datasetId: String!
|
|
230
|
+
) {
|
|
231
|
+
deleteAnalyticsReportItem(
|
|
232
|
+
itemId: $itemId,
|
|
233
|
+
reportId: $reportId,
|
|
234
|
+
datasetId: $datasetId
|
|
235
|
+
)
|
|
236
|
+
}
|
|
237
|
+
''',
|
|
238
|
+
"variables": delete_analytics_report_item_params,
|
|
239
|
+
}
|
|
@@ -0,0 +1,328 @@
|
|
|
1
|
+
from typing import Optional, Union, Any
|
|
2
|
+
from spb_onprem.base_service import BaseService
|
|
3
|
+
from spb_onprem.exceptions import BadParameterError
|
|
4
|
+
from spb_onprem.base_types import Undefined, UndefinedType
|
|
5
|
+
from .queries import Queries
|
|
6
|
+
from .entities import (
|
|
7
|
+
AnalyticsReport,
|
|
8
|
+
AnalyticsReportItem,
|
|
9
|
+
AnalyticsReportItemType,
|
|
10
|
+
AnalyticsReportPageInfo,
|
|
11
|
+
)
|
|
12
|
+
from .params.analytics_reports import AnalyticsReportsFilter, AnalyticsReportsOrderBy
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
class ReportService(BaseService):
|
|
16
|
+
"""
|
|
17
|
+
Service class for handling analytics report-related operations.
|
|
18
|
+
"""
|
|
19
|
+
|
|
20
|
+
def get_analytics_reports(
|
|
21
|
+
self,
|
|
22
|
+
dataset_id: str,
|
|
23
|
+
analytics_reports_filter: Optional[AnalyticsReportsFilter] = None,
|
|
24
|
+
cursor: Optional[str] = None,
|
|
25
|
+
length: Optional[int] = 10,
|
|
26
|
+
order_by: Union[AnalyticsReportsOrderBy, UndefinedType] = Undefined,
|
|
27
|
+
):
|
|
28
|
+
"""
|
|
29
|
+
Get a list of analytics reports based on the provided filter and pagination parameters.
|
|
30
|
+
|
|
31
|
+
Args:
|
|
32
|
+
dataset_id (str): The dataset ID
|
|
33
|
+
analytics_reports_filter (Optional[AnalyticsReportsFilter]): Filter criteria for reports
|
|
34
|
+
cursor (Optional[str]): Cursor for pagination
|
|
35
|
+
length (Optional[int]): Number of items per page (default: 10)
|
|
36
|
+
order_by (Optional[AnalyticsReportsOrderBy]): Order by options
|
|
37
|
+
|
|
38
|
+
Returns:
|
|
39
|
+
tuple: A tuple containing:
|
|
40
|
+
- List[AnalyticsReport]: A list of AnalyticsReport objects
|
|
41
|
+
- str: Next cursor for pagination
|
|
42
|
+
- int: Total count of reports
|
|
43
|
+
"""
|
|
44
|
+
if dataset_id is None:
|
|
45
|
+
raise BadParameterError("dataset_id is required.")
|
|
46
|
+
|
|
47
|
+
if length and length > 50:
|
|
48
|
+
raise BadParameterError("The maximum length is 50.")
|
|
49
|
+
|
|
50
|
+
response = self.request_gql(
|
|
51
|
+
Queries.ANALYTICS_REPORTS,
|
|
52
|
+
Queries.ANALYTICS_REPORTS["variables"](
|
|
53
|
+
dataset_id=dataset_id,
|
|
54
|
+
analytics_reports_filter=analytics_reports_filter,
|
|
55
|
+
cursor=cursor,
|
|
56
|
+
length=length,
|
|
57
|
+
order_by=order_by,
|
|
58
|
+
)
|
|
59
|
+
)
|
|
60
|
+
|
|
61
|
+
page_info = AnalyticsReportPageInfo.model_validate(response)
|
|
62
|
+
return (
|
|
63
|
+
page_info.analytics_reports or [],
|
|
64
|
+
page_info.next,
|
|
65
|
+
page_info.total_count or 0
|
|
66
|
+
)
|
|
67
|
+
|
|
68
|
+
def get_analytics_report(
|
|
69
|
+
self,
|
|
70
|
+
dataset_id: str,
|
|
71
|
+
report_id: str,
|
|
72
|
+
):
|
|
73
|
+
"""
|
|
74
|
+
Retrieve an analytics report by its ID.
|
|
75
|
+
|
|
76
|
+
Args:
|
|
77
|
+
dataset_id (str): The dataset ID
|
|
78
|
+
report_id (str): The ID of the report to retrieve
|
|
79
|
+
|
|
80
|
+
Returns:
|
|
81
|
+
AnalyticsReport: The retrieved analytics report object
|
|
82
|
+
"""
|
|
83
|
+
if dataset_id is None:
|
|
84
|
+
raise BadParameterError("dataset_id is required.")
|
|
85
|
+
|
|
86
|
+
if report_id is None:
|
|
87
|
+
raise BadParameterError("report_id is required.")
|
|
88
|
+
|
|
89
|
+
response = self.request_gql(
|
|
90
|
+
Queries.ANALYTICS_REPORT,
|
|
91
|
+
Queries.ANALYTICS_REPORT["variables"](
|
|
92
|
+
dataset_id=dataset_id,
|
|
93
|
+
report_id=report_id
|
|
94
|
+
),
|
|
95
|
+
)
|
|
96
|
+
return AnalyticsReport.model_validate(response)
|
|
97
|
+
|
|
98
|
+
def create_analytics_report(
|
|
99
|
+
self,
|
|
100
|
+
dataset_id: str,
|
|
101
|
+
title: Union[str, UndefinedType] = Undefined,
|
|
102
|
+
description: Union[str, UndefinedType] = Undefined,
|
|
103
|
+
meta: Union[Any, UndefinedType] = Undefined,
|
|
104
|
+
):
|
|
105
|
+
"""
|
|
106
|
+
Create a new analytics report.
|
|
107
|
+
|
|
108
|
+
Args:
|
|
109
|
+
dataset_id (str): The dataset ID
|
|
110
|
+
title (Optional[str]): The title of the report
|
|
111
|
+
description (Optional[str]): The description of the report
|
|
112
|
+
meta (Optional[Any]): The metadata of the report
|
|
113
|
+
|
|
114
|
+
Returns:
|
|
115
|
+
AnalyticsReport: The created analytics report object
|
|
116
|
+
"""
|
|
117
|
+
if dataset_id is None:
|
|
118
|
+
raise BadParameterError("dataset_id is required.")
|
|
119
|
+
|
|
120
|
+
response = self.request_gql(
|
|
121
|
+
Queries.CREATE_ANALYTICS_REPORT,
|
|
122
|
+
Queries.CREATE_ANALYTICS_REPORT["variables"](
|
|
123
|
+
dataset_id=dataset_id,
|
|
124
|
+
title=title,
|
|
125
|
+
description=description,
|
|
126
|
+
meta=meta,
|
|
127
|
+
),
|
|
128
|
+
)
|
|
129
|
+
return AnalyticsReport.model_validate(response)
|
|
130
|
+
|
|
131
|
+
def update_analytics_report(
|
|
132
|
+
self,
|
|
133
|
+
dataset_id: str,
|
|
134
|
+
report_id: str,
|
|
135
|
+
title: Union[str, UndefinedType] = Undefined,
|
|
136
|
+
description: Union[str, UndefinedType] = Undefined,
|
|
137
|
+
meta: Union[Any, UndefinedType] = Undefined,
|
|
138
|
+
):
|
|
139
|
+
"""
|
|
140
|
+
Update an analytics report.
|
|
141
|
+
|
|
142
|
+
Args:
|
|
143
|
+
dataset_id (str): The dataset ID
|
|
144
|
+
report_id (str): The ID of the report to update
|
|
145
|
+
title (Optional[str]): The new title of the report
|
|
146
|
+
description (Optional[str]): The new description of the report
|
|
147
|
+
meta (Optional[Any]): The new metadata of the report
|
|
148
|
+
|
|
149
|
+
Returns:
|
|
150
|
+
AnalyticsReport: The updated analytics report object
|
|
151
|
+
"""
|
|
152
|
+
if dataset_id is None:
|
|
153
|
+
raise BadParameterError("dataset_id is required.")
|
|
154
|
+
|
|
155
|
+
if report_id is None:
|
|
156
|
+
raise BadParameterError("report_id is required.")
|
|
157
|
+
|
|
158
|
+
response = self.request_gql(
|
|
159
|
+
Queries.UPDATE_ANALYTICS_REPORT,
|
|
160
|
+
Queries.UPDATE_ANALYTICS_REPORT["variables"](
|
|
161
|
+
dataset_id=dataset_id,
|
|
162
|
+
report_id=report_id,
|
|
163
|
+
title=title,
|
|
164
|
+
description=description,
|
|
165
|
+
meta=meta,
|
|
166
|
+
),
|
|
167
|
+
)
|
|
168
|
+
return AnalyticsReport.model_validate(response)
|
|
169
|
+
|
|
170
|
+
def delete_analytics_report(
|
|
171
|
+
self,
|
|
172
|
+
dataset_id: str,
|
|
173
|
+
report_id: str,
|
|
174
|
+
) -> bool:
|
|
175
|
+
"""Delete an analytics report.
|
|
176
|
+
|
|
177
|
+
Args:
|
|
178
|
+
dataset_id (str): The dataset ID
|
|
179
|
+
report_id (str): The ID of the report to delete
|
|
180
|
+
|
|
181
|
+
Returns:
|
|
182
|
+
bool: True if deletion was successful
|
|
183
|
+
"""
|
|
184
|
+
if dataset_id is None:
|
|
185
|
+
raise BadParameterError("dataset_id is required.")
|
|
186
|
+
|
|
187
|
+
if report_id is None:
|
|
188
|
+
raise BadParameterError("report_id is required.")
|
|
189
|
+
|
|
190
|
+
response = self.request_gql(
|
|
191
|
+
Queries.DELETE_ANALYTICS_REPORT,
|
|
192
|
+
Queries.DELETE_ANALYTICS_REPORT["variables"](
|
|
193
|
+
dataset_id=dataset_id,
|
|
194
|
+
report_id=report_id
|
|
195
|
+
)
|
|
196
|
+
)
|
|
197
|
+
return response
|
|
198
|
+
|
|
199
|
+
def create_analytics_report_item(
|
|
200
|
+
self,
|
|
201
|
+
dataset_id: str,
|
|
202
|
+
report_id: str,
|
|
203
|
+
type: AnalyticsReportItemType,
|
|
204
|
+
title: Union[str, UndefinedType] = Undefined,
|
|
205
|
+
description: Union[str, UndefinedType] = Undefined,
|
|
206
|
+
content_id: Union[str, UndefinedType] = Undefined,
|
|
207
|
+
meta: Union[Any, UndefinedType] = Undefined,
|
|
208
|
+
):
|
|
209
|
+
"""
|
|
210
|
+
Create a new analytics report item.
|
|
211
|
+
|
|
212
|
+
Args:
|
|
213
|
+
dataset_id (str): The dataset ID
|
|
214
|
+
report_id (str): The report ID
|
|
215
|
+
type (AnalyticsReportItemType): The type of report item
|
|
216
|
+
title (Optional[str]): The title of the item
|
|
217
|
+
description (Optional[str]): The description of the item
|
|
218
|
+
content_id (Optional[str]): The content ID of the item
|
|
219
|
+
meta (Optional[Any]): The metadata of the item
|
|
220
|
+
|
|
221
|
+
Returns:
|
|
222
|
+
AnalyticsReportItem: The created analytics report item object
|
|
223
|
+
"""
|
|
224
|
+
if dataset_id is None:
|
|
225
|
+
raise BadParameterError("dataset_id is required.")
|
|
226
|
+
|
|
227
|
+
if report_id is None:
|
|
228
|
+
raise BadParameterError("report_id is required.")
|
|
229
|
+
|
|
230
|
+
if type is None:
|
|
231
|
+
raise BadParameterError("type is required.")
|
|
232
|
+
|
|
233
|
+
response = self.request_gql(
|
|
234
|
+
Queries.CREATE_ANALYTICS_REPORT_ITEM,
|
|
235
|
+
Queries.CREATE_ANALYTICS_REPORT_ITEM["variables"](
|
|
236
|
+
dataset_id=dataset_id,
|
|
237
|
+
report_id=report_id,
|
|
238
|
+
type=type,
|
|
239
|
+
title=title,
|
|
240
|
+
description=description,
|
|
241
|
+
content_id=content_id,
|
|
242
|
+
meta=meta,
|
|
243
|
+
),
|
|
244
|
+
)
|
|
245
|
+
return AnalyticsReportItem.model_validate(response)
|
|
246
|
+
|
|
247
|
+
def update_analytics_report_item(
|
|
248
|
+
self,
|
|
249
|
+
dataset_id: str,
|
|
250
|
+
report_id: str,
|
|
251
|
+
item_id: str,
|
|
252
|
+
title: Union[str, UndefinedType] = Undefined,
|
|
253
|
+
description: Union[str, UndefinedType] = Undefined,
|
|
254
|
+
content_id: Union[str, UndefinedType] = Undefined,
|
|
255
|
+
meta: Union[Any, UndefinedType] = Undefined,
|
|
256
|
+
):
|
|
257
|
+
"""
|
|
258
|
+
Update an analytics report item.
|
|
259
|
+
|
|
260
|
+
Args:
|
|
261
|
+
dataset_id (str): The dataset ID
|
|
262
|
+
report_id (str): The report ID
|
|
263
|
+
item_id (str): The ID of the item to update
|
|
264
|
+
title (Optional[str]): The new title of the item
|
|
265
|
+
description (Optional[str]): The new description of the item
|
|
266
|
+
content_id (Optional[str]): The new content ID of the item
|
|
267
|
+
meta (Optional[Any]): The new metadata of the item
|
|
268
|
+
|
|
269
|
+
Returns:
|
|
270
|
+
AnalyticsReportItem: The updated analytics report item object
|
|
271
|
+
"""
|
|
272
|
+
if dataset_id is None:
|
|
273
|
+
raise BadParameterError("dataset_id is required.")
|
|
274
|
+
|
|
275
|
+
if report_id is None:
|
|
276
|
+
raise BadParameterError("report_id is required.")
|
|
277
|
+
|
|
278
|
+
if item_id is None:
|
|
279
|
+
raise BadParameterError("item_id is required.")
|
|
280
|
+
|
|
281
|
+
response = self.request_gql(
|
|
282
|
+
Queries.UPDATE_ANALYTICS_REPORT_ITEM,
|
|
283
|
+
Queries.UPDATE_ANALYTICS_REPORT_ITEM["variables"](
|
|
284
|
+
dataset_id=dataset_id,
|
|
285
|
+
report_id=report_id,
|
|
286
|
+
item_id=item_id,
|
|
287
|
+
title=title,
|
|
288
|
+
description=description,
|
|
289
|
+
content_id=content_id,
|
|
290
|
+
meta=meta,
|
|
291
|
+
),
|
|
292
|
+
)
|
|
293
|
+
return AnalyticsReportItem.model_validate(response)
|
|
294
|
+
|
|
295
|
+
def delete_analytics_report_item(
|
|
296
|
+
self,
|
|
297
|
+
dataset_id: str,
|
|
298
|
+
report_id: str,
|
|
299
|
+
item_id: str,
|
|
300
|
+
) -> bool:
|
|
301
|
+
"""Delete an analytics report item.
|
|
302
|
+
|
|
303
|
+
Args:
|
|
304
|
+
dataset_id (str): The dataset ID
|
|
305
|
+
report_id (str): The report ID
|
|
306
|
+
item_id (str): The ID of the item to delete
|
|
307
|
+
|
|
308
|
+
Returns:
|
|
309
|
+
bool: True if deletion was successful
|
|
310
|
+
"""
|
|
311
|
+
if dataset_id is None:
|
|
312
|
+
raise BadParameterError("dataset_id is required.")
|
|
313
|
+
|
|
314
|
+
if report_id is None:
|
|
315
|
+
raise BadParameterError("report_id is required.")
|
|
316
|
+
|
|
317
|
+
if item_id is None:
|
|
318
|
+
raise BadParameterError("item_id is required.")
|
|
319
|
+
|
|
320
|
+
response = self.request_gql(
|
|
321
|
+
Queries.DELETE_ANALYTICS_REPORT_ITEM,
|
|
322
|
+
Queries.DELETE_ANALYTICS_REPORT_ITEM["variables"](
|
|
323
|
+
dataset_id=dataset_id,
|
|
324
|
+
report_id=report_id,
|
|
325
|
+
item_id=item_id,
|
|
326
|
+
)
|
|
327
|
+
)
|
|
328
|
+
return response
|
spb_onprem/searches.py
CHANGED
|
@@ -23,6 +23,7 @@ from .data.params.data_list import (
|
|
|
23
23
|
FrameFilter,
|
|
24
24
|
DataFilter,
|
|
25
25
|
DataListFilter,
|
|
26
|
+
AnnotationCountsFilter
|
|
26
27
|
)
|
|
27
28
|
from .datasets.params.datasets import (
|
|
28
29
|
DatasetsFilter,
|
|
@@ -40,6 +41,16 @@ from .exports.params.exports import (
|
|
|
40
41
|
ExportFilter,
|
|
41
42
|
ExportFilterOptions,
|
|
42
43
|
)
|
|
44
|
+
from .models.params.models import (
|
|
45
|
+
ModelsFilter,
|
|
46
|
+
ModelsFilterOptions,
|
|
47
|
+
)
|
|
48
|
+
from .reports.params.analytics_reports import (
|
|
49
|
+
AnalyticsReportsFilter,
|
|
50
|
+
AnalyticsReportsFilterOptions,
|
|
51
|
+
AnalyticsReportsOrderBy,
|
|
52
|
+
AnalyticsReportListOrderFields,
|
|
53
|
+
)
|
|
43
54
|
|
|
44
55
|
__all__ = [
|
|
45
56
|
"DateTimeRangeFilterOption",
|
|
@@ -73,4 +84,11 @@ __all__ = [
|
|
|
73
84
|
"ActivitiesFilterOptions",
|
|
74
85
|
"ExportFilter",
|
|
75
86
|
"ExportFilterOptions",
|
|
87
|
+
"AnnotationCountsFilter",
|
|
88
|
+
"ModelsFilter",
|
|
89
|
+
"ModelsFilterOptions",
|
|
90
|
+
"AnalyticsReportsFilter",
|
|
91
|
+
"AnalyticsReportsFilterOptions",
|
|
92
|
+
"AnalyticsReportsOrderBy",
|
|
93
|
+
"AnalyticsReportListOrderFields",
|
|
76
94
|
]
|