superb-ai-onprem 0.4.5__tar.gz → 0.5.0__tar.gz
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.
- {superb_ai_onprem-0.4.5/superb_ai_onprem.egg-info → superb_ai_onprem-0.5.0}/PKG-INFO +1 -1
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/__init__.py +2 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/_version.py +16 -3
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/entities/__init__.py +2 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/entities/annotation.py +1 -1
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/entities/data.py +2 -0
- superb_ai_onprem-0.5.0/spb_onprem/data/entities/frame.py +19 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/params/__init__.py +4 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/params/insert_annotation_version.py +3 -3
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/params/insert_slice_annotation_version.py +4 -4
- superb_ai_onprem-0.5.0/spb_onprem/data/params/update_frames.py +40 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/params/update_slice_annotation_version.py +4 -4
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/queries.py +34 -14
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/service.py +34 -3
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/entities.py +2 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0/superb_ai_onprem.egg-info}/PKG-INFO +1 -1
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/superb_ai_onprem.egg-info/SOURCES.txt +2 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/.github/workflows/publish.yml +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/.gitignore +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/LICENSE +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/Pipfile +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/Pipfile.lock +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/README.md +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/pyproject.toml +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/setup.cfg +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/setup.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/activities/__init__.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/activities/entities/__init__.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/activities/entities/activity.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/activities/entities/activity_history.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/activities/params/__init__.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/activities/params/activities.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/activities/params/activity.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/activities/params/create_activity.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/activities/params/delete_activity.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/activities/params/get_activity_history.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/activities/params/start_activity.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/activities/params/update_activity.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/activities/params/update_activity_history.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/activities/queries.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/activities/service.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/base_model.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/base_service.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/base_types.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/contents/__init__.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/contents/entities/__init__.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/contents/entities/base_content.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/contents/entities/content.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/contents/queries.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/contents/service.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/__init__.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/entities/data_meta.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/entities/data_slice.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/entities/prediction.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/entities/scene.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/enums/__init__.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/enums/data_meta_type.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/enums/data_status.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/enums/data_type.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/enums/scene_type.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/params/change_data_labeler.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/params/change_data_reviewer.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/params/change_data_status.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/params/create_data.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/params/data.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/params/data_list.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/params/delete_annotation_version.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/params/delete_data.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/params/delete_prediction.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/params/delete_scene.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/params/delete_slice_annotation_version.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/params/insert_data_to_slice.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/params/insert_prediction.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/params/insert_scene.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/params/remove_data_from_slice.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/params/remove_data_meta.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/params/update_annotation.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/params/update_data.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/params/update_data_slice.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/params/update_scene.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/params/update_slice_annotation.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/params/upsert_data_meta.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/datasets/__init__.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/datasets/entities/__init__.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/datasets/entities/dataset.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/datasets/params/__init__.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/datasets/params/create_dataset.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/datasets/params/dataset.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/datasets/params/datasets.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/datasets/params/update_dataset.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/datasets/queries.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/datasets/service.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/exceptions.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/exports/__init__.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/exports/entities/__init__.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/exports/entities/export.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/exports/params/__init__.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/exports/params/create_export.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/exports/params/delete_export.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/exports/params/export.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/exports/params/exports.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/exports/params/update_export.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/exports/queries/get_exports.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/exports/queries.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/exports/service.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/searches.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/slices/__init__.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/slices/entities/__init__.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/slices/entities/slice.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/slices/params/__init__.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/slices/params/create_slice.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/slices/params/delete_slice.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/slices/params/slice.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/slices/params/slices.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/slices/params/update_slice.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/slices/queries.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/slices/service.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/users/__init__.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/users/entities/__init__.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/users/entities/auth.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/superb_ai_onprem.egg-info/dependency_links.txt +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/superb_ai_onprem.egg-info/requires.txt +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/superb_ai_onprem.egg-info/top_level.txt +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/tests/__init__.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/tests/activities/__init__.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/tests/activities/real_test.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/tests/activities/test_get_activity_history.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/tests/activities/test_params.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/tests/activities/test_service.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/tests/exports/__init__.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/tests/exports/real_test.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/tests/exports/test_entities.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/tests/exports/test_integration.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/tests/exports/test_params.py +0 -0
- {superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/tests/exports/test_service.py +0 -0
|
@@ -1,7 +1,14 @@
|
|
|
1
1
|
# file generated by setuptools-scm
|
|
2
2
|
# don't change, don't track in version control
|
|
3
3
|
|
|
4
|
-
__all__ = [
|
|
4
|
+
__all__ = [
|
|
5
|
+
"__version__",
|
|
6
|
+
"__version_tuple__",
|
|
7
|
+
"version",
|
|
8
|
+
"version_tuple",
|
|
9
|
+
"__commit_id__",
|
|
10
|
+
"commit_id",
|
|
11
|
+
]
|
|
5
12
|
|
|
6
13
|
TYPE_CHECKING = False
|
|
7
14
|
if TYPE_CHECKING:
|
|
@@ -9,13 +16,19 @@ if TYPE_CHECKING:
|
|
|
9
16
|
from typing import Union
|
|
10
17
|
|
|
11
18
|
VERSION_TUPLE = Tuple[Union[int, str], ...]
|
|
19
|
+
COMMIT_ID = Union[str, None]
|
|
12
20
|
else:
|
|
13
21
|
VERSION_TUPLE = object
|
|
22
|
+
COMMIT_ID = object
|
|
14
23
|
|
|
15
24
|
version: str
|
|
16
25
|
__version__: str
|
|
17
26
|
__version_tuple__: VERSION_TUPLE
|
|
18
27
|
version_tuple: VERSION_TUPLE
|
|
28
|
+
commit_id: COMMIT_ID
|
|
29
|
+
__commit_id__: COMMIT_ID
|
|
19
30
|
|
|
20
|
-
__version__ = version = '0.
|
|
21
|
-
__version_tuple__ = version_tuple = (0,
|
|
31
|
+
__version__ = version = '0.5.0'
|
|
32
|
+
__version_tuple__ = version_tuple = (0, 5, 0)
|
|
33
|
+
|
|
34
|
+
__commit_id__ = commit_id = 'gba065a190'
|
|
@@ -11,7 +11,7 @@ class AnnotationVersion(CustomBaseModel):
|
|
|
11
11
|
This has the content of the data annotation.
|
|
12
12
|
"""
|
|
13
13
|
id: Optional[str] = None
|
|
14
|
-
|
|
14
|
+
channels: Optional[List[str]] = None
|
|
15
15
|
version: Optional[str] = None
|
|
16
16
|
content: Optional[BaseContent] = None
|
|
17
17
|
meta: Optional[dict] = None
|
|
@@ -6,6 +6,7 @@ from .annotation import Annotation
|
|
|
6
6
|
from .prediction import Prediction
|
|
7
7
|
from .data_meta import DataMeta
|
|
8
8
|
from .data_slice import DataSlice
|
|
9
|
+
from .frame import Frame
|
|
9
10
|
from spb_onprem.contents.entities import BaseContent
|
|
10
11
|
|
|
11
12
|
class Data(CustomBaseModel):
|
|
@@ -18,6 +19,7 @@ class Data(CustomBaseModel):
|
|
|
18
19
|
key: Optional[str] = None
|
|
19
20
|
type: Optional[DataType] = None
|
|
20
21
|
scene: Optional[List[Scene]] = None
|
|
22
|
+
frames: Optional[List[Frame]] = None
|
|
21
23
|
thumbnail: Optional[BaseContent] = None
|
|
22
24
|
annotation: Optional[Annotation] = None
|
|
23
25
|
predictions: Optional[List[Prediction]] = None
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
from typing import Optional
|
|
2
|
+
from spb_onprem.base_model import CustomBaseModel, Field
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class GeoLocation(CustomBaseModel):
|
|
6
|
+
lat: float
|
|
7
|
+
lon: float
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Frame(CustomBaseModel):
|
|
11
|
+
"""
|
|
12
|
+
The frame of the data.
|
|
13
|
+
Frame is the representation of a single frame in a sequence of data, such as a video or time series.
|
|
14
|
+
"""
|
|
15
|
+
id: str
|
|
16
|
+
index: Optional[int] = None
|
|
17
|
+
captured_at: Optional[str] = Field(None, alias="capturedAt")
|
|
18
|
+
geo_location: Optional[GeoLocation] = Field(None, alias="geoLocation")
|
|
19
|
+
meta: Optional[dict] = None
|
|
@@ -63,6 +63,9 @@ from .change_data_reviewer import (
|
|
|
63
63
|
from .update_data_slice import (
|
|
64
64
|
update_data_slice_params,
|
|
65
65
|
)
|
|
66
|
+
from .update_frames import (
|
|
67
|
+
update_frames_params,
|
|
68
|
+
)
|
|
66
69
|
|
|
67
70
|
__all__ = [
|
|
68
71
|
"create_params",
|
|
@@ -90,4 +93,5 @@ __all__ = [
|
|
|
90
93
|
"change_data_labeler_params",
|
|
91
94
|
"change_data_reviewer_params",
|
|
92
95
|
"update_data_slice_params",
|
|
96
|
+
"update_frames_params",
|
|
93
97
|
]
|
|
@@ -23,9 +23,9 @@ def insert_annotation_version_params(
|
|
|
23
23
|
"meta": version.meta
|
|
24
24
|
}
|
|
25
25
|
|
|
26
|
-
#
|
|
27
|
-
if version.
|
|
28
|
-
version_data["
|
|
26
|
+
# channels과 version 필드가 있으면 추가
|
|
27
|
+
if version.channels is not None:
|
|
28
|
+
version_data["channels"] = version.channels
|
|
29
29
|
if version.version is not None:
|
|
30
30
|
version_data["version"] = version.version
|
|
31
31
|
|
|
@@ -24,10 +24,10 @@ def insert_slice_annotation_version_params(
|
|
|
24
24
|
),
|
|
25
25
|
"meta": version.meta
|
|
26
26
|
}
|
|
27
|
-
|
|
28
|
-
#
|
|
29
|
-
if version.
|
|
30
|
-
version_data["
|
|
27
|
+
|
|
28
|
+
# channels과 version 필드가 있으면 추가
|
|
29
|
+
if version.channels is not None:
|
|
30
|
+
version_data["channels"] = version.channels
|
|
31
31
|
if version.version is not None:
|
|
32
32
|
version_data["version"] = version.version
|
|
33
33
|
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import json
|
|
2
|
+
from typing import Union, List
|
|
3
|
+
from spb_onprem.data.entities import Frame
|
|
4
|
+
from spb_onprem.base_types import UndefinedType, Undefined
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
def update_frames_params(
|
|
8
|
+
dataset_id: str,
|
|
9
|
+
data_id: str,
|
|
10
|
+
frames: Union[List[Frame], UndefinedType] = Undefined,
|
|
11
|
+
):
|
|
12
|
+
"""Update frames of selected data.
|
|
13
|
+
Args:
|
|
14
|
+
dataset_id (str): dataset id which the data belongs to
|
|
15
|
+
data_id (str): data id to be updated
|
|
16
|
+
frames (list[Frame]): list of frames to be updated
|
|
17
|
+
|
|
18
|
+
Returns:
|
|
19
|
+
dict: the params for graphql query
|
|
20
|
+
"""
|
|
21
|
+
result = {
|
|
22
|
+
"dataset_id": dataset_id,
|
|
23
|
+
"data_id": data_id,
|
|
24
|
+
}
|
|
25
|
+
if frames is not Undefined:
|
|
26
|
+
result["frames"] = []
|
|
27
|
+
for frame in frames:
|
|
28
|
+
frame_data = {
|
|
29
|
+
"index": frame.index,
|
|
30
|
+
"capturedAt": frame.captured_at,
|
|
31
|
+
"meta": json.dumps(frame.meta) if frame.meta else None,
|
|
32
|
+
}
|
|
33
|
+
if frame.geo_location is not None:
|
|
34
|
+
frame_data["geoLocation"] = {
|
|
35
|
+
"lat": frame.geo_location.lat,
|
|
36
|
+
"lon": frame.geo_location.lon
|
|
37
|
+
}
|
|
38
|
+
result["frames"].append(frame_data)
|
|
39
|
+
|
|
40
|
+
return result
|
|
@@ -8,7 +8,7 @@ def update_slice_annotation_version_params(
|
|
|
8
8
|
data_id: str,
|
|
9
9
|
slice_id: str,
|
|
10
10
|
id: str,
|
|
11
|
-
|
|
11
|
+
channels: Union[List[str], UndefinedType, None] = Undefined,
|
|
12
12
|
version: Union[str, UndefinedType, None] = Undefined,
|
|
13
13
|
meta: Union[dict, UndefinedType, None] = Undefined,
|
|
14
14
|
):
|
|
@@ -19,7 +19,7 @@ def update_slice_annotation_version_params(
|
|
|
19
19
|
data_id (str): The ID of the data.
|
|
20
20
|
slice_id (str): The slice ID.
|
|
21
21
|
id (str): The annotation version ID.
|
|
22
|
-
|
|
22
|
+
channels (list[str], optional): The channels of the annotation version.
|
|
23
23
|
version (str, optional): The version string of the annotation version.
|
|
24
24
|
meta (dict, optional): The meta of the annotation version.
|
|
25
25
|
"""
|
|
@@ -30,8 +30,8 @@ def update_slice_annotation_version_params(
|
|
|
30
30
|
"id": id,
|
|
31
31
|
}
|
|
32
32
|
|
|
33
|
-
if
|
|
34
|
-
variables["
|
|
33
|
+
if channels is not Undefined:
|
|
34
|
+
variables["channels"] = channels
|
|
35
35
|
if version is not Undefined:
|
|
36
36
|
variables["version"] = version
|
|
37
37
|
if meta is not Undefined:
|
|
@@ -20,6 +20,7 @@ from .params import (
|
|
|
20
20
|
change_data_labeler_params,
|
|
21
21
|
change_data_reviewer_params,
|
|
22
22
|
update_data_slice_params,
|
|
23
|
+
update_frames_params,
|
|
23
24
|
)
|
|
24
25
|
|
|
25
26
|
|
|
@@ -46,10 +47,21 @@ class Schemas:
|
|
|
46
47
|
}
|
|
47
48
|
meta
|
|
48
49
|
}
|
|
50
|
+
frames {
|
|
51
|
+
id
|
|
52
|
+
index
|
|
53
|
+
capturedAt
|
|
54
|
+
geoLocation {
|
|
55
|
+
lat
|
|
56
|
+
lon
|
|
57
|
+
}
|
|
58
|
+
meta
|
|
59
|
+
}
|
|
49
60
|
annotation {
|
|
61
|
+
meta
|
|
50
62
|
versions {
|
|
51
63
|
id
|
|
52
|
-
|
|
64
|
+
channels
|
|
53
65
|
version
|
|
54
66
|
content {
|
|
55
67
|
id
|
|
@@ -57,23 +69,11 @@ class Schemas:
|
|
|
57
69
|
meta
|
|
58
70
|
}
|
|
59
71
|
}
|
|
60
|
-
predictions {
|
|
61
|
-
setId
|
|
62
|
-
content {
|
|
63
|
-
id
|
|
64
|
-
}
|
|
65
|
-
meta
|
|
66
|
-
}
|
|
67
72
|
meta {
|
|
68
73
|
key
|
|
69
74
|
type
|
|
70
75
|
value
|
|
71
76
|
}
|
|
72
|
-
systemMeta {
|
|
73
|
-
key
|
|
74
|
-
type
|
|
75
|
-
value
|
|
76
|
-
}
|
|
77
77
|
slices {
|
|
78
78
|
id
|
|
79
79
|
status
|
|
@@ -84,7 +84,7 @@ class Schemas:
|
|
|
84
84
|
annotation {
|
|
85
85
|
versions {
|
|
86
86
|
id
|
|
87
|
-
|
|
87
|
+
channels
|
|
88
88
|
version
|
|
89
89
|
content {
|
|
90
90
|
id
|
|
@@ -574,3 +574,23 @@ class Queries():
|
|
|
574
574
|
''',
|
|
575
575
|
"variables": update_data_slice_params,
|
|
576
576
|
}
|
|
577
|
+
|
|
578
|
+
UPDATE_FRAMES = {
|
|
579
|
+
"name": "updateFrames",
|
|
580
|
+
"query": f'''
|
|
581
|
+
mutation (
|
|
582
|
+
$dataset_id: ID!,
|
|
583
|
+
$data_id: ID!,
|
|
584
|
+
$frames: [DataFrameInput!],
|
|
585
|
+
) {{
|
|
586
|
+
updateFrames(
|
|
587
|
+
datasetId: $dataset_id,
|
|
588
|
+
dataId: $data_id,
|
|
589
|
+
frames: $frames,
|
|
590
|
+
) {{
|
|
591
|
+
{Schemas.DATA}
|
|
592
|
+
}}
|
|
593
|
+
}}
|
|
594
|
+
''',
|
|
595
|
+
"variables": update_frames_params,
|
|
596
|
+
}
|
|
@@ -572,7 +572,7 @@ class DataService(BaseService):
|
|
|
572
572
|
data_id: str,
|
|
573
573
|
slice_id: str,
|
|
574
574
|
id: str,
|
|
575
|
-
|
|
575
|
+
channels: Union[List[str], UndefinedType, None] = Undefined,
|
|
576
576
|
version: Union[str, UndefinedType, None] = Undefined,
|
|
577
577
|
meta: Union[dict, UndefinedType, None] = Undefined,
|
|
578
578
|
):
|
|
@@ -583,7 +583,7 @@ class DataService(BaseService):
|
|
|
583
583
|
data_id (str): The data id.
|
|
584
584
|
slice_id (str): The slice id.
|
|
585
585
|
id (str): The annotation version id.
|
|
586
|
-
|
|
586
|
+
channels (Union[List[str], UndefinedType, None], optional): The channels. Defaults to Undefined.
|
|
587
587
|
version (Union[str, UndefinedType, None], optional): The version. Defaults to Undefined.
|
|
588
588
|
meta (Union[dict, UndefinedType, None], optional): The meta. Defaults to Undefined.
|
|
589
589
|
|
|
@@ -606,7 +606,7 @@ class DataService(BaseService):
|
|
|
606
606
|
data_id=data_id,
|
|
607
607
|
slice_id=slice_id,
|
|
608
608
|
id=id,
|
|
609
|
-
|
|
609
|
+
channels=channels,
|
|
610
610
|
version=version,
|
|
611
611
|
meta=meta,
|
|
612
612
|
)
|
|
@@ -804,3 +804,34 @@ class DataService(BaseService):
|
|
|
804
804
|
)
|
|
805
805
|
data = Data.model_validate(response)
|
|
806
806
|
return data
|
|
807
|
+
|
|
808
|
+
def update_frames(
|
|
809
|
+
self,
|
|
810
|
+
dataset_id: str,
|
|
811
|
+
data_id: str,
|
|
812
|
+
frames: Union[List[Frame], UndefinedType] = Undefined,
|
|
813
|
+
):
|
|
814
|
+
"""Update frames of selected data.
|
|
815
|
+
Args:
|
|
816
|
+
dataset_id (str): dataset id which the data belongs to
|
|
817
|
+
data_id (str): data id to be updated
|
|
818
|
+
frames (list[Frame]): list of frames to be updated
|
|
819
|
+
|
|
820
|
+
Returns:
|
|
821
|
+
Data: The updated data.
|
|
822
|
+
"""
|
|
823
|
+
if dataset_id is None:
|
|
824
|
+
raise BadParameterError("dataset_id is required.")
|
|
825
|
+
if data_id is None:
|
|
826
|
+
raise BadParameterError("data_id is required.")
|
|
827
|
+
|
|
828
|
+
response = self.request_gql(
|
|
829
|
+
Queries.UPDATE_FRAMES,
|
|
830
|
+
Queries.UPDATE_FRAMES["variables"](
|
|
831
|
+
dataset_id=dataset_id,
|
|
832
|
+
data_id=data_id,
|
|
833
|
+
frames=frames,
|
|
834
|
+
)
|
|
835
|
+
)
|
|
836
|
+
data = Data.model_validate(response)
|
|
837
|
+
return data
|
|
@@ -6,6 +6,7 @@ from .data.entities import (
|
|
|
6
6
|
Prediction,
|
|
7
7
|
DataMeta,
|
|
8
8
|
DataSlice,
|
|
9
|
+
Frame,
|
|
9
10
|
)
|
|
10
11
|
from .datasets.entities import Dataset
|
|
11
12
|
from .slices.entities import Slice
|
|
@@ -41,6 +42,7 @@ __all__ = [
|
|
|
41
42
|
"ActivityHistory",
|
|
42
43
|
"Export",
|
|
43
44
|
"Content",
|
|
45
|
+
"Frame",
|
|
44
46
|
|
|
45
47
|
# Enums
|
|
46
48
|
"DataType",
|
|
@@ -43,6 +43,7 @@ spb_onprem/data/entities/annotation.py
|
|
|
43
43
|
spb_onprem/data/entities/data.py
|
|
44
44
|
spb_onprem/data/entities/data_meta.py
|
|
45
45
|
spb_onprem/data/entities/data_slice.py
|
|
46
|
+
spb_onprem/data/entities/frame.py
|
|
46
47
|
spb_onprem/data/entities/prediction.py
|
|
47
48
|
spb_onprem/data/entities/scene.py
|
|
48
49
|
spb_onprem/data/enums/__init__.py
|
|
@@ -72,6 +73,7 @@ spb_onprem/data/params/remove_data_meta.py
|
|
|
72
73
|
spb_onprem/data/params/update_annotation.py
|
|
73
74
|
spb_onprem/data/params/update_data.py
|
|
74
75
|
spb_onprem/data/params/update_data_slice.py
|
|
76
|
+
spb_onprem/data/params/update_frames.py
|
|
75
77
|
spb_onprem/data/params/update_scene.py
|
|
76
78
|
spb_onprem/data/params/update_slice_annotation.py
|
|
77
79
|
spb_onprem/data/params/update_slice_annotation_version.py
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/activities/entities/__init__.py
RENAMED
|
File without changes
|
{superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/activities/entities/activity.py
RENAMED
|
File without changes
|
{superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/activities/entities/activity_history.py
RENAMED
|
File without changes
|
|
File without changes
|
{superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/activities/params/activities.py
RENAMED
|
File without changes
|
|
File without changes
|
{superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/activities/params/create_activity.py
RENAMED
|
File without changes
|
{superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/activities/params/delete_activity.py
RENAMED
|
File without changes
|
|
File without changes
|
{superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/activities/params/start_activity.py
RENAMED
|
File without changes
|
{superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/activities/params/update_activity.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/contents/entities/base_content.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/params/change_data_labeler.py
RENAMED
|
File without changes
|
{superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/params/change_data_reviewer.py
RENAMED
|
File without changes
|
{superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/params/change_data_status.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/params/delete_prediction.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/params/insert_data_to_slice.py
RENAMED
|
File without changes
|
{superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/params/insert_prediction.py
RENAMED
|
File without changes
|
|
File without changes
|
{superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/params/remove_data_from_slice.py
RENAMED
|
File without changes
|
{superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/params/remove_data_meta.py
RENAMED
|
File without changes
|
{superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/params/update_annotation.py
RENAMED
|
File without changes
|
|
File without changes
|
{superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/params/update_data_slice.py
RENAMED
|
File without changes
|
|
File without changes
|
{superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/params/update_slice_annotation.py
RENAMED
|
File without changes
|
{superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/data/params/upsert_data_meta.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/datasets/params/create_dataset.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/datasets/params/update_dataset.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/exports/params/create_export.py
RENAMED
|
File without changes
|
{superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/exports/params/delete_export.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/spb_onprem/exports/params/update_export.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/superb_ai_onprem.egg-info/dependency_links.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{superb_ai_onprem-0.4.5 → superb_ai_onprem-0.5.0}/tests/activities/test_get_activity_history.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|