supervisely 6.73.302__tar.gz → 6.73.303__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 supervisely might be problematic. Click here for more details.
- {supervisely-6.73.302/supervisely.egg-info → supervisely-6.73.303}/PKG-INFO +1 -1
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/task_api.py +289 -5
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/artifacts/artifacts.py +133 -62
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/artifacts/detectron2.py +6 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/artifacts/hrda.py +4 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/artifacts/mmclassification.py +4 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/artifacts/mmdetection.py +9 -1
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/artifacts/mmsegmentation.py +4 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/artifacts/ritm.py +4 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/artifacts/rtdetr.py +4 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/artifacts/unet.py +4 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/artifacts/yolov5.py +7 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/artifacts/yolov8.py +5 -1
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/experiments.py +85 -2
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/inference/inference.py +11 -4
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/training/train_app.py +1 -1
- {supervisely-6.73.302 → supervisely-6.73.303/supervisely.egg-info}/PKG-INFO +1 -1
- {supervisely-6.73.302 → supervisely-6.73.303}/LICENSE +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/README.md +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/pyproject.toml +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/setup.cfg +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/setup.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/README.md +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/_utils.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/annotation/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/annotation/annotation.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/annotation/annotation_transforms.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/annotation/json_geometries_map.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/annotation/label.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/annotation/obj_class.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/annotation/obj_class_collection.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/annotation/obj_class_mapper.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/annotation/renamer.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/annotation/tag.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/annotation/tag_collection.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/annotation/tag_meta.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/annotation/tag_meta_collection.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/annotation/tag_meta_mapper.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/advanced_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/agent_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/annotation_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/app_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/dataset_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/entity_annotation/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/entity_annotation/entity_annotation_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/entity_annotation/figure_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/entity_annotation/object_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/entity_annotation/tag_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/file_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/github_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/image_annotation_tool_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/image_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/import_storage_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/issues_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/labeling_job_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/module_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/neural_network_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/object_class_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/plugin_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/pointcloud/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/pointcloud/pointcloud_annotation_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/pointcloud/pointcloud_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/pointcloud/pointcloud_episode_annotation_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/pointcloud/pointcloud_episode_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/pointcloud/pointcloud_episode_object_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/pointcloud/pointcloud_episode_tag_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/pointcloud/pointcloud_figure_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/pointcloud/pointcloud_object_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/pointcloud/pointcloud_tag_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/project_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/project_class_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/remote_storage_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/report_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/role_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/storage_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/team_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/user_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/video/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/video/video_annotation_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/video/video_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/video/video_figure_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/video/video_frame_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/video/video_object_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/video/video_tag_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/video_annotation_tool_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/volume/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/volume/volume_annotation_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/volume/volume_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/volume/volume_figure_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/volume/volume_object_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/volume/volume_tag_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/api/workspace_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/content.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/development/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/development/development.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/development/sly-net.sh +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/exceptions.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/export_template.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/fastapi/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/fastapi/custom_static_files.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/fastapi/dialog_window.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/fastapi/index.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/fastapi/no_html_main.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/fastapi/offline.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/fastapi/request.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/fastapi/subapp.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/fastapi/templating.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/fastapi/utils.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/fastapi/websocket.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/import_template.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/jinja2.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/singleton.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/v1/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/v1/app_config.md +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/v1/app_service.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/v1/constants.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/v1/sly-icon-example.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/v1/widgets/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/v1/widgets/chart.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/v1/widgets/compare_gallery.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/v1/widgets/empty_grid_gallery.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/v1/widgets/grid_gallery.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/v1/widgets/predictions_dynamics_gallery.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/v1/widgets/progress_bar.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/v1/widgets/single_image_gallery.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/agent_selector/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/agent_selector/agent_selector.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/agent_selector/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/apexchart/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/apexchart/apexchart.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/apexchart/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/augmentations/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/augmentations/augmentations.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/augmentations/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/badge/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/badge/badge.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/badge/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/binded_input_number/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/binded_input_number/binded_input_number.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/binded_input_number/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/bokeh/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/bokeh/bokeh.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/bokeh/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/button/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/button/button.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/button/style.css +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/button/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/card/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/card/card.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/card/style.css +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/card/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/carousel/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/carousel/carousel.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/carousel/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/cascader/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/cascader/cascader.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/cascader/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/checkbox/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/checkbox/checkbox.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/checkbox/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/checkbox_field/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/checkbox_field/checkbox_field.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/checkbox_field/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/circle_progress/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/circle_progress/circle_progress.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/circle_progress/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/class_balance/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/class_balance/class_balance.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/class_balance/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/classes_color_mapping/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/classes_color_mapping/classes_color_mapping.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/classes_color_mapping/style.css +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/classes_color_mapping/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/classes_list_preview/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/classes_list_preview/classes_list_preview.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/classes_list_preview/style.css +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/classes_list_preview/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/classes_list_selector/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/classes_list_selector/classes_list_selector.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/classes_list_selector/style.css +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/classes_list_selector/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/classes_mapping/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/classes_mapping/classes_mapping.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/classes_mapping/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/classes_mapping_preview/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/classes_mapping_preview/classes_mapping_preview.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/classes_mapping_preview/style.css +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/classes_mapping_preview/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/classes_table/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/classes_table/classes_table.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/classes_table/style.css +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/classes_table/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/classic_table/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/classic_table/classic_table.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/classic_table/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/collapse/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/collapse/collapse.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/collapse/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/color_picker/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/color_picker/color_picker.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/color_picker/style.css +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/color_picker/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/compare_annotations/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/compare_annotations/compare_annotations.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/confusion_matrix/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/confusion_matrix/confusion_matrix.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/confusion_matrix/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/container/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/container/container.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/container/old_container.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/container/old_template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/container/style.css +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/container/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/copy_to_clipboard/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/copy_to_clipboard/copy_to_clipboard.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/copy_to_clipboard/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/custom_models_selector/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/custom_models_selector/custom_models_selector.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/custom_models_selector/style.css +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/custom_models_selector/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/dataset_thumbnail/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/dataset_thumbnail/dataset_thumbnail.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/dataset_thumbnail/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/date_picker/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/date_picker/date_picker.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/date_picker/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/datetime_picker/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/datetime_picker/datetime_picker.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/datetime_picker/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/destination_project/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/destination_project/destination_project.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/destination_project/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/dialog/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/dialog/dialog.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/dialog/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/done_label/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/done_label/done_label.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/done_label/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/draggable/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/draggable/draggable.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/draggable/style.css +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/draggable/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/dropdown/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/dropdown/dropdown.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/dropdown/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/editor/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/editor/editor.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/editor/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/element_button/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/element_button/element_button.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/element_button/style.css +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/element_button/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/element_tag/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/element_tag/element_tag.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/element_tag/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/element_tags_list/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/element_tags_list/element_tags_list.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/element_tags_list/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/empty/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/empty/empty.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/empty/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/experiment_selector/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/experiment_selector/experiment_selector.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/experiment_selector/style.css +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/experiment_selector/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/fast_table/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/fast_table/fast_table.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/fast_table/script.js +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/fast_table/style.css +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/fast_table/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/field/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/field/field.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/field/style.css +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/field/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/file_storage_upload/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/file_storage_upload/file_storage_upload.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/file_storage_upload/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/file_thumbnail/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/file_thumbnail/file_thumbnail.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/file_thumbnail/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/file_viewer/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/file_viewer/file_viewer.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/file_viewer/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/flexbox/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/flexbox/flexbox.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/flexbox/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/folder_thumbnail/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/folder_thumbnail/folder_thumbnail.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/folder_thumbnail/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/grid/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/grid/grid.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/grid/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/grid_chart/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/grid_chart/grid_chart.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/grid_chart/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/grid_gallery/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/grid_gallery/grid_gallery.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/grid_gallery/style.css +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/grid_gallery/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/grid_gallery_v2/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/grid_gallery_v2/grid_gallery_v2.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/grid_gallery_v2/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/grid_plot/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/grid_plot/grid_plot.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/grid_plot/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/heatmap_chart/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/heatmap_chart/heatmap_chart.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/icons/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/icons/icons.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/icons/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/identity/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/identity/identity.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/identity/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/iframe/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/iframe/iframe.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/iframe/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/image/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/image/image.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/image/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/image_annotation_preview/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/image_annotation_preview/image_annotation_preview.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/image_annotation_preview/script.js +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/image_annotation_preview/style.css +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/image_annotation_preview/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/image_pair_sequence/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/image_pair_sequence/image_pair_sequence.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/image_pair_sequence/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/image_region_selector/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/image_region_selector/image_region_selector.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/image_region_selector/script.js +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/image_region_selector/styles.css +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/image_region_selector/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/image_slider/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/image_slider/image_slider.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/image_slider/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/input/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/input/input.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/input/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/input_number/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/input_number/input_number.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/input_number/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/input_tag/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/input_tag/input_tag.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/input_tag/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/labeled_image/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/labeled_image/labeled_image.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/line_chart/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/line_chart/line_chart.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/line_plot/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/line_plot/line_plot.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/line_plot/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/markdown/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/markdown/markdown.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/markdown/style.css +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/markdown/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/match_datasets/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/match_datasets/match_datasets.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/match_datasets/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/match_tags_or_classes/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/match_tags_or_classes/match_tags_or_classes.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/match_tags_or_classes/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/members_list_preview/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/members_list_preview/members_list_preview.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/members_list_preview/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/members_list_selector/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/members_list_selector/members_list_selector.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/members_list_selector/style.css +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/members_list_selector/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/menu/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/menu/menu.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/menu/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/model_info/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/model_info/model_info.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/model_info/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/nodes_flow/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/nodes_flow/nodes_flow.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/nodes_flow/option_components.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/nodes_flow/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/notification_box/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/notification_box/notification_box.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/notification_box/style.css +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/notification_box/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/object_class_view/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/object_class_view/object_class_view.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/object_class_view/style.css +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/object_class_view/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/object_classes_list/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/object_classes_list/object_classes_list.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/object_classes_list/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/one_of/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/one_of/one_of.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/one_of/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/pagination/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/pagination/pagination.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/pagination/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/pie_chart/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/pie_chart/pie_chart.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/pretrained_models_selector/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/pretrained_models_selector/pretrained_models_selector.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/pretrained_models_selector/style.css +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/pretrained_models_selector/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/project_selector/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/project_selector/project_selector.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/project_selector/style.css +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/project_selector/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/project_thumbnail/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/project_thumbnail/project_thumbnail.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/project_thumbnail/style.css +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/project_thumbnail/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/radio_group/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/radio_group/radio_group.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/radio_group/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/radio_table/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/radio_table/radio_table.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/radio_table/style.css +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/radio_table/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/radio_tabs/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/radio_tabs/radio_tabs.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/radio_tabs/style.css +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/radio_tabs/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/random_splits_table/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/random_splits_table/random_splits_table.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/random_splits_table/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/rate/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/rate/rate.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/rate/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/reloadable_area/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/reloadable_area/reloadable_area.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/reloadable_area/script.js +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/reloadable_area/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/report_thumbnail/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/report_thumbnail/report_thumbnail.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/report_thumbnail/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/run_app_button/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/run_app_button/run_app_button.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/run_app_button/script.js +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/run_app_button/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/scatter_chart/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/scatter_chart/scatter_chart.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/select/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/select/select.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/select/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/select_app_session/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/select_app_session/select_app_session.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/select_app_session/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/select_cuda/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/select_cuda/select_cuda.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/select_cuda/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/select_dataset/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/select_dataset/select_dataset.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/select_dataset/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/select_dataset_tree/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/select_dataset_tree/select_dataset_tree.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/select_dataset_tree/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/select_item/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/select_item/select_item.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/select_item/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/select_project/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/select_project/select_project.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/select_project/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/select_sly_utils.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/select_tag_meta/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/select_tag_meta/select_tag_meta.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/select_tag_meta/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/select_team/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/select_team/select_team.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/select_team/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/select_workspace/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/select_workspace/select_workspace.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/select_workspace/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/sidebar/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/sidebar/sidebar.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/sidebar/style.css +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/sidebar/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/slider/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/slider/slider.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/slider/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/sly_tqdm/README.md +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/sly_tqdm/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/sly_tqdm/sly_tqdm.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/sly_tqdm/style.css +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/sly_tqdm/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/stepper/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/stepper/stepper.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/stepper/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/switch/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/switch/switch.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/switch/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/table/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/table/table.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/table/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/tabs/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/tabs/tabs.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/tabs/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/tabs_dynamic/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/tabs_dynamic/tabs_dynamic.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/tabs_dynamic/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/tag_meta_view/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/tag_meta_view/style.css +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/tag_meta_view/tag_meta_view.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/tag_meta_view/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/tag_metas_list/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/tag_metas_list/tag_metas_list.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/tag_metas_list/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/tags_list_preview/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/tags_list_preview/tags_list_preview.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/tags_list_preview/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/tags_list_selector/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/tags_list_selector/style.css +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/tags_list_selector/tags_list_selector.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/tags_list_selector/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/tags_table/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/tags_table/tags_table.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/tags_table/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/task_logs/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/task_logs/task_logs.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/task_logs/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/team_files_selector/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/team_files_selector/team_files_selector.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/team_files_selector/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/text/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/text/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/text/text.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/textarea/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/textarea/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/textarea/textarea.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/time_picker/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/time_picker/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/time_picker/time_picker.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/timeline/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/timeline/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/timeline/timeline.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/tooltip/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/tooltip/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/tooltip/tooltip.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/train_val_splits/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/train_val_splits/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/train_val_splits/train_val_splits.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/transfer/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/transfer/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/transfer/transfer.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/tree_select/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/tree_select/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/tree_select/tree_select.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/treemap_chart/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/treemap_chart/treemap_chart.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/video/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/video/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/video/video.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/video_player/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/video_player/script.js +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/video_player/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/video_player/video_player.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/video_thumbnail/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/video_thumbnail/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/video_thumbnail/video_thumbnail.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets/widget.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/app/widgets_context.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/aug/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/aug/aug.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/aug/imgaug_utils.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/cli/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/cli/cli.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/cli/project/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/cli/project/project_download.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/cli/project/project_get.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/cli/project/project_upload.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/cli/release/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/cli/release/release.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/cli/release/run.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/cli/task/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/cli/task/task_set.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/cli/teamfiles/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/cli/teamfiles/teamfiles_download.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/cli/teamfiles/teamfiles_remove.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/cli/teamfiles/teamfiles_upload.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/collection/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/collection/key_indexed_collection.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/collection/str_enum.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/base_converter.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/converter.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/image/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/image/cityscapes/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/image/cityscapes/cityscapes_converter.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/image/cityscapes/cityscapes_helper.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/image/coco/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/image/coco/coco_anntotation_converter.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/image/coco/coco_converter.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/image/coco/coco_helper.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/image/csv/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/image/csv/csv_converter.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/image/csv/csv_helper.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/image/high_color/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/image/high_color/high_color_depth.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/image/high_color/high_color_helper.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/image/image_converter.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/image/image_helper.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/image/label_me/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/image/label_me/label_me_converter.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/image/label_me/label_me_helper.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/image/label_studio/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/image/label_studio/label_studio_converter.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/image/label_studio/label_studio_helper.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/image/masks/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/image/masks/image_with_masks_helper.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/image/masks/images_with_masks_converter.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/image/medical2d/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/image/medical2d/medical2d_converter.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/image/medical2d/medical2d_helper.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/image/multi_view/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/image/multi_view/multi_view.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/image/multispectral/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/image/multispectral/multispectral_converter.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/image/pascal_voc/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/image/pascal_voc/pascal_voc_converter.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/image/pascal_voc/pascal_voc_helper.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/image/pdf/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/image/pdf/pdf_converter.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/image/pdf/pdf_helper.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/image/sly/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/image/sly/fast_sly_image_converter.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/image/sly/sly_image_converter.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/image/sly/sly_image_helper.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/image/yolo/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/image/yolo/yolo_converter.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/image/yolo/yolo_helper.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/pointcloud/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/pointcloud/bag/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/pointcloud/bag/bag_converter.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/pointcloud/bag/bag_helper.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/pointcloud/kitti_3d/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/pointcloud/kitti_3d/kitti_3d_converter.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/pointcloud/kitti_3d/kitti_3d_helper.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/pointcloud/las/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/pointcloud/las/las_converter.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/pointcloud/las/las_helper.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/pointcloud/lyft/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/pointcloud/lyft/lyft_converter.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/pointcloud/lyft/lyft_helper.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/pointcloud/nuscenes_conv/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/pointcloud/nuscenes_conv/nuscenes_converter.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/pointcloud/ply/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/pointcloud/ply/ply_converter.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/pointcloud/ply/ply_helper.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/pointcloud/pointcloud_converter.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/pointcloud/sly/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/pointcloud/sly/sly_pointcloud_converter.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/pointcloud/sly/sly_pointcloud_helper.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/pointcloud_episodes/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/pointcloud_episodes/bag/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/pointcloud_episodes/bag/bag_converter.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/pointcloud_episodes/lyft/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/pointcloud_episodes/lyft/lyft_converter.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/pointcloud_episodes/nuscenes_conv/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/pointcloud_episodes/nuscenes_conv/nuscenes_converter.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/pointcloud_episodes/nuscenes_conv/nuscenes_helper.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/pointcloud_episodes/pointcloud_episodes_converter.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/pointcloud_episodes/sly/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/pointcloud_episodes/sly/sly_pointcloud_episodes_converter.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/pointcloud_episodes/sly/sly_pointcloud_episodes_helper.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/video/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/video/davis/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/video/davis/davis_converter.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/video/mot/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/video/mot/mot_converter.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/video/sly/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/video/sly/sly_video_converter.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/video/sly/sly_video_helper.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/video/video_converter.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/volume/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/volume/dicom/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/volume/dicom/dicom_converter.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/volume/dicom/dicom_helper.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/volume/sly/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/volume/sly/sly_volume_converter.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/volume/sly/sly_volume_helper.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/convert/volume/volume_converter.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/decorators/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/decorators/inference.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/decorators/profile.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/delme_fastapi_helpers/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/export/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/export/pascal_voc.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/function_wrapper.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/geometry/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/geometry/alpha_mask.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/geometry/any_geometry.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/geometry/bitmap.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/geometry/bitmap_base.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/geometry/closed_surface_mesh.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/geometry/constants.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/geometry/conversions.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/geometry/cuboid.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/geometry/cuboid_2d.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/geometry/cuboid_3d.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/geometry/geometry.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/geometry/graph.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/geometry/helpers.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/geometry/image_rotator.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/geometry/main_tests.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/geometry/mask_3d.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/geometry/multichannel_bitmap.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/geometry/point.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/geometry/point_3d.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/geometry/point_location.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/geometry/pointcloud.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/geometry/polygon.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/geometry/polyline.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/geometry/rectangle.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/geometry/sliding_windows.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/geometry/sliding_windows_fuzzy.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/geometry/validation.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/geometry/vector_geometry.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/imaging/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/imaging/_video.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/imaging/color.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/imaging/colors.json.gz +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/imaging/font.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/imaging/image.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/io/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/io/docker_utils.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/io/env.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/io/exception_handlers.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/io/fs.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/io/fs_cache.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/io/github_utils.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/io/json.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/io/multipart_stream_decoder.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/io/network_exceptions.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/labeling_jobs/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/labeling_jobs/constants.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/labeling_jobs/utils.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/metric/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/metric/classification_metrics.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/metric/common.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/metric/confusion_matrix_metric.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/metric/iou_metric.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/metric/map_metric.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/metric/matching.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/metric/metric_base.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/metric/metrics_tests.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/metric/pixel_accuracy.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/metric/precision_recall_metric.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/metric/projects_applier.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/artifacts/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/artifacts/utils.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/base_benchmark.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/base_evaluator.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/base_visualizer.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/comparison/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/comparison/base_visualizer.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/comparison/detection_visualization/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/comparison/detection_visualization/text_templates.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/comparison/detection_visualization/vis_metrics/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/comparison/detection_visualization/vis_metrics/avg_precision_by_class.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/comparison/detection_visualization/vis_metrics/calibration_score.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/comparison/detection_visualization/vis_metrics/explore_predictions.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/comparison/detection_visualization/vis_metrics/localization_accuracy.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/comparison/detection_visualization/vis_metrics/outcome_counts.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/comparison/detection_visualization/vis_metrics/overview.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/comparison/detection_visualization/vis_metrics/pr_curve.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/comparison/detection_visualization/vis_metrics/precision_recal_f1.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/comparison/detection_visualization/vis_metrics/speedtest.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/comparison/detection_visualization/visualizer.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/comparison/model_comparison.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/comparison/semantic_segmentation/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/comparison/semantic_segmentation/text_templates.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/comparison/semantic_segmentation/vis_metrics/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/comparison/semantic_segmentation/vis_metrics/classwise_error_analysis.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/comparison/semantic_segmentation/vis_metrics/explore_predictions.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/comparison/semantic_segmentation/vis_metrics/frequently_confused.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/comparison/semantic_segmentation/vis_metrics/iou_eou.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/comparison/semantic_segmentation/vis_metrics/overview.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/comparison/semantic_segmentation/vis_metrics/renormalized_error_ou.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/comparison/semantic_segmentation/vis_metrics/speedtest.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/comparison/semantic_segmentation/visualizer.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/cv_tasks.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/instance_segmentation/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/instance_segmentation/benchmark.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/instance_segmentation/evaluation_params.yaml +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/instance_segmentation/evaluator.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/instance_segmentation/text_templates.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/instance_segmentation/visualizer.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/object_detection/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/object_detection/base_vis_metric.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/object_detection/benchmark.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/object_detection/evaluation_params.yaml +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/object_detection/evaluator.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/object_detection/metric_provider.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/object_detection/text_templates.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/object_detection/vis_metrics/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/object_detection/vis_metrics/confidence_distribution.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/object_detection/vis_metrics/confidence_score.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/object_detection/vis_metrics/confusion_matrix.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/object_detection/vis_metrics/explore_predictions.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/object_detection/vis_metrics/f1_score_at_different_iou.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/object_detection/vis_metrics/frequently_confused.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/object_detection/vis_metrics/iou_distribution.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/object_detection/vis_metrics/key_metrics.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/object_detection/vis_metrics/model_predictions.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/object_detection/vis_metrics/outcome_counts.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/object_detection/vis_metrics/outcome_counts_per_class.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/object_detection/vis_metrics/overview.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/object_detection/vis_metrics/pr_curve.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/object_detection/vis_metrics/pr_curve_by_class.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/object_detection/vis_metrics/precision.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/object_detection/vis_metrics/precision_avg_per_class.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/object_detection/vis_metrics/recall.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/object_detection/vis_metrics/recall_vs_precision.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/object_detection/vis_metrics/reliability_diagram.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/object_detection/vis_metrics/speedtest.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/object_detection/visualizer.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/semantic_segmentation/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/semantic_segmentation/base_vis_metric.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/semantic_segmentation/benchmark.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/semantic_segmentation/evaluation_params.yaml +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/semantic_segmentation/evaluator.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/semantic_segmentation/metric_provider.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/semantic_segmentation/text_templates.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/semantic_segmentation/vis_metrics/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/semantic_segmentation/vis_metrics/acknowledgement.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/semantic_segmentation/vis_metrics/classwise_error_analysis.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/semantic_segmentation/vis_metrics/confusion_matrix.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/semantic_segmentation/vis_metrics/explore_predictions.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/semantic_segmentation/vis_metrics/frequently_confused.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/semantic_segmentation/vis_metrics/iou_eou.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/semantic_segmentation/vis_metrics/key_metrics.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/semantic_segmentation/vis_metrics/model_predictions.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/semantic_segmentation/vis_metrics/overview.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/semantic_segmentation/vis_metrics/renormalized_error_ou.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/semantic_segmentation/vis_metrics/speedtest.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/semantic_segmentation/vis_metrics/vis_texts.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/semantic_segmentation/visualizer.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/utils/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/utils/detection/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/utils/detection/calculate_metrics.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/utils/detection/metrics.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/utils/detection/sly2coco.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/utils/detection/utlis.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/utils/semantic_segmentation/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/utils/semantic_segmentation/calculate_metrics.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/utils/semantic_segmentation/evaluator.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/utils/semantic_segmentation/loader.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/utils/semantic_segmentation/utils.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/visualization/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/visualization/evaluation_result.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/visualization/renderer.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/visualization/report_template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/visualization/vis_click_data.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/visualization/widgets/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/visualization/widgets/chart/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/visualization/widgets/chart/chart.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/visualization/widgets/chart/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/visualization/widgets/collapse/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/visualization/widgets/collapse/collapse.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/visualization/widgets/container/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/visualization/widgets/container/container.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/visualization/widgets/gallery/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/visualization/widgets/gallery/gallery.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/visualization/widgets/gallery/template.html +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/visualization/widgets/markdown/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/visualization/widgets/markdown/markdown.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/visualization/widgets/notification/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/visualization/widgets/notification/notification.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/visualization/widgets/radio_group/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/visualization/widgets/radio_group/radio_group.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/visualization/widgets/sidebar/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/visualization/widgets/sidebar/sidebar.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/visualization/widgets/table/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/visualization/widgets/table/table.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/benchmark/visualization/widgets/widget.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/inference/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/inference/cache.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/inference/gui/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/inference/gui/gui.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/inference/gui/serving_gui.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/inference/gui/serving_gui_template.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/inference/instance_segmentation/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/inference/instance_segmentation/dashboard/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/inference/instance_segmentation/dashboard/classes_ui.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/inference/instance_segmentation/dashboard/deploy_ui.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/inference/instance_segmentation/dashboard/main_ui.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/inference/instance_segmentation/dashboard/preview.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/inference/instance_segmentation/dashboard/preview_image.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/inference/instance_segmentation/instance_segmentation.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/inference/interactive_segmentation/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/inference/interactive_segmentation/functional.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/inference/interactive_segmentation/interactive_segmentation.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/inference/object_detection/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/inference/object_detection/object_detection.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/inference/object_detection_3d/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/inference/object_detection_3d/object_detection_3d.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/inference/pose_estimation/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/inference/pose_estimation/pose_estimation.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/inference/prompt_based_object_detection/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/inference/prompt_based_object_detection/propmt_based_object_detection.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/inference/promptable_segmentation/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/inference/promptable_segmentation/promptable_segmentation.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/inference/salient_object_segmentation/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/inference/salient_object_segmentation/salient_object_segmentation.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/inference/semantic_segmentation/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/inference/semantic_segmentation/semantic_segmentation.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/inference/session.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/inference/tracking/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/inference/tracking/base_tracking.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/inference/tracking/bbox_tracking.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/inference/tracking/functional.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/inference/tracking/mask_tracking.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/inference/tracking/object_tracking_3d.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/inference/tracking/point_tracking.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/inference/tracking/tracker3d_interface.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/inference/tracking/tracker_interface.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/inference/video_inference.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/legacy/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/legacy/config.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/legacy/dataset.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/legacy/hosted/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/legacy/hosted/class_indexing.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/legacy/hosted/constants.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/legacy/hosted/deploy.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/legacy/hosted/inference_batch.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/legacy/hosted/inference_batch_multiprocess.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/legacy/hosted/inference_modes.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/legacy/hosted/inference_single_image.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/legacy/hosted/legacy/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/legacy/hosted/legacy/inference_config.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/legacy/hosted/pytorch/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/legacy/hosted/pytorch/constants.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/legacy/hosted/pytorch/inference_applier.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/legacy/hosted/pytorch/trainer.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/legacy/hosted/trainer.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/legacy/inference/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/legacy/inference/rest_client.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/legacy/inference/rest_constants.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/legacy/inference/rest_server.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/legacy/pytorch/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/legacy/pytorch/cuda.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/legacy/pytorch/dataset.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/legacy/pytorch/inference.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/legacy/pytorch/metrics.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/legacy/pytorch/weights.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/legacy/raw_to_labels.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/legacy/training/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/legacy/training/eval_planner.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/prediction_dto.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/task_type.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/tracker/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/tracker/bot_sort/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/tracker/bot_sort/basetrack.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/tracker/bot_sort/bot_sort.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/tracker/bot_sort/fast_reid_interface.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/tracker/bot_sort/matching.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/tracker/bot_sort/sly_tracker.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/tracker/deep_sort/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/tracker/deep_sort/deep_sort/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/tracker/deep_sort/deep_sort/detection.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/tracker/deep_sort/deep_sort/iou_matching.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/tracker/deep_sort/deep_sort/kalman_filter.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/tracker/deep_sort/deep_sort/linear_assignment.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/tracker/deep_sort/deep_sort/nn_matching.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/tracker/deep_sort/deep_sort/track.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/tracker/deep_sort/deep_sort/tracker.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/tracker/deep_sort/deep_sort.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/tracker/deep_sort/generate_clip_detections.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/tracker/deep_sort/preprocessing.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/tracker/deep_sort/sly_tracker.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/tracker/tracker.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/tracker/utils/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/tracker/utils/gmc.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/tracker/utils/kalman_filter.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/training/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/training/gui/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/training/gui/classes_selector.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/training/gui/gui.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/training/gui/hyperparameters_selector.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/training/gui/input_selector.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/training/gui/model_selector.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/training/gui/train_val_splits_selector.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/training/gui/training_artifacts.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/training/gui/training_logs.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/training/gui/training_process.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/training/gui/utils.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/training/loggers/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/training/loggers/base_train_logger.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/training/loggers/tensorboard_logger.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/nn/utils.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/output/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/pointcloud/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/pointcloud/pointcloud.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/pointcloud_annotation/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/pointcloud_annotation/constants.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/pointcloud_annotation/pointcloud_annotation.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/pointcloud_annotation/pointcloud_episode_annotation.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/pointcloud_annotation/pointcloud_episode_frame.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/pointcloud_annotation/pointcloud_episode_frame_collection.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/pointcloud_annotation/pointcloud_episode_object.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/pointcloud_annotation/pointcloud_episode_object_collection.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/pointcloud_annotation/pointcloud_episode_tag.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/pointcloud_annotation/pointcloud_episode_tag_collection.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/pointcloud_annotation/pointcloud_figure.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/pointcloud_annotation/pointcloud_object.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/pointcloud_annotation/pointcloud_object_collection.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/pointcloud_annotation/pointcloud_tag.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/pointcloud_annotation/pointcloud_tag_collection.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/pointcloud_episodes/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/pointcloud_episodes/pointcloud_episodes.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/project/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/project/data_version.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/project/download.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/project/pointcloud_episode_project.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/project/pointcloud_project.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/project/project.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/project/project_meta.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/project/project_settings.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/project/project_type.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/project/readme_template.md +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/project/upload.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/project/video_project.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/project/volume_project.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/pyscripts_utils/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/pyscripts_utils/utils.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/report/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/report/table.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/script/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/script/utils.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/sly_logger.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/task/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/task/paths.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/task/progress.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/task/task_logger.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/team_files/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/team_files/team_files_path.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/tiny_timer.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/user/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/user/user.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/video/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/video/import_utils.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/video/video.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/video_annotation/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/video_annotation/constants.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/video_annotation/frame.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/video_annotation/frame_collection.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/video_annotation/key_id_map.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/video_annotation/video_annotation.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/video_annotation/video_figure.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/video_annotation/video_object.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/video_annotation/video_object_collection.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/video_annotation/video_tag.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/video_annotation/video_tag_collection.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/volume/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/volume/nrrd_encoder.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/volume/nrrd_loader.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/volume/stl_converter.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/volume/volume.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/volume_annotation/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/volume_annotation/constants.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/volume_annotation/plane.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/volume_annotation/slice.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/volume_annotation/volume_annotation.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/volume_annotation/volume_figure.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/volume_annotation/volume_object.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/volume_annotation/volume_object_collection.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/volume_annotation/volume_tag.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/volume_annotation/volume_tag_collection.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/worker_api/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/worker_api/agent_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/worker_api/agent_rpc.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/worker_api/chunking.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/worker_api/interfaces.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/worker_api/retriers.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/worker_api/rpc_servicer.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/worker_proto/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/worker_proto/worker_api_pb2.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely/worker_proto/worker_api_pb2_grpc.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely.egg-info/SOURCES.txt +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely.egg-info/dependency_links.txt +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely.egg-info/entry_points.txt +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely.egg-info/requires.txt +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely.egg-info/top_level.txt +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/supervisely_lib/__init__.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/tests/test-api-file-list.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/tests/test_api_video.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/tests/test_async_file_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/tests/test_async_image_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/tests/test_async_pcd_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/tests/test_async_project.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/tests/test_async_project_video.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/tests/test_async_video_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/tests/test_async_volume_api.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/tests/test_output.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/tests/test_setup.py +0 -0
- {supervisely-6.73.302 → supervisely-6.73.303}/tests/test_video_rotations.py +0 -0
|
@@ -5,6 +5,7 @@ import json
|
|
|
5
5
|
import os
|
|
6
6
|
import time
|
|
7
7
|
from collections import OrderedDict, defaultdict
|
|
8
|
+
from pathlib import Path
|
|
8
9
|
|
|
9
10
|
# docs
|
|
10
11
|
from typing import Any, Callable, Dict, List, Literal, NamedTuple, Optional, Union
|
|
@@ -12,6 +13,7 @@ from typing import Any, Callable, Dict, List, Literal, NamedTuple, Optional, Uni
|
|
|
12
13
|
from requests_toolbelt import MultipartEncoder, MultipartEncoderMonitor
|
|
13
14
|
from tqdm import tqdm
|
|
14
15
|
|
|
16
|
+
from supervisely import logger
|
|
15
17
|
from supervisely._utils import batched, take_with_default
|
|
16
18
|
from supervisely.api.module_api import (
|
|
17
19
|
ApiField,
|
|
@@ -20,7 +22,12 @@ from supervisely.api.module_api import (
|
|
|
20
22
|
WaitingTimeExceeded,
|
|
21
23
|
)
|
|
22
24
|
from supervisely.collection.str_enum import StrEnum
|
|
23
|
-
from supervisely.io.fs import
|
|
25
|
+
from supervisely.io.fs import (
|
|
26
|
+
ensure_base_path,
|
|
27
|
+
get_file_hash,
|
|
28
|
+
get_file_name,
|
|
29
|
+
get_file_name_with_ext,
|
|
30
|
+
)
|
|
24
31
|
|
|
25
32
|
|
|
26
33
|
class TaskFinishedWithError(Exception):
|
|
@@ -301,7 +308,10 @@ class TaskApi(ModuleApiBase, ModuleWithStatus):
|
|
|
301
308
|
)
|
|
302
309
|
|
|
303
310
|
def upload_dtl_archive(
|
|
304
|
-
self,
|
|
311
|
+
self,
|
|
312
|
+
task_id: int,
|
|
313
|
+
archive_path: str,
|
|
314
|
+
progress_cb: Optional[Union[tqdm, Callable]] = None,
|
|
305
315
|
):
|
|
306
316
|
"""upload_dtl_archive"""
|
|
307
317
|
encoder = MultipartEncoder(
|
|
@@ -822,11 +832,19 @@ class TaskApi(ModuleApiBase, ModuleWithStatus):
|
|
|
822
832
|
return resp.json()
|
|
823
833
|
|
|
824
834
|
def set_output_report(
|
|
825
|
-
self,
|
|
835
|
+
self,
|
|
836
|
+
task_id: int,
|
|
837
|
+
file_id: int,
|
|
838
|
+
file_name: str,
|
|
839
|
+
description: Optional[str] = "Report",
|
|
826
840
|
) -> Dict:
|
|
827
841
|
"""set_output_report"""
|
|
828
842
|
return self._set_custom_output(
|
|
829
|
-
task_id,
|
|
843
|
+
task_id,
|
|
844
|
+
file_id,
|
|
845
|
+
file_name,
|
|
846
|
+
description=description,
|
|
847
|
+
icon="zmdi zmdi-receipt",
|
|
830
848
|
)
|
|
831
849
|
|
|
832
850
|
def _set_custom_output(
|
|
@@ -942,7 +960,11 @@ class TaskApi(ModuleApiBase, ModuleWithStatus):
|
|
|
942
960
|
)
|
|
943
961
|
|
|
944
962
|
def update_meta(
|
|
945
|
-
self,
|
|
963
|
+
self,
|
|
964
|
+
id: int,
|
|
965
|
+
data: dict,
|
|
966
|
+
agent_storage_folder: str = None,
|
|
967
|
+
relative_app_dir: str = None,
|
|
946
968
|
):
|
|
947
969
|
"""
|
|
948
970
|
Update given task metadata
|
|
@@ -1197,3 +1219,265 @@ class TaskApi(ModuleApiBase, ModuleWithStatus):
|
|
|
1197
1219
|
"tasks.output.set", {ApiField.TASK_ID: task_id, ApiField.OUTPUT: output}
|
|
1198
1220
|
)
|
|
1199
1221
|
return resp.json()
|
|
1222
|
+
|
|
1223
|
+
def deploy_model_from_api(self, task_id, deploy_params):
|
|
1224
|
+
self.send_request(
|
|
1225
|
+
task_id,
|
|
1226
|
+
"deploy_from_api",
|
|
1227
|
+
data={"deploy_params": deploy_params},
|
|
1228
|
+
raise_error=True,
|
|
1229
|
+
)
|
|
1230
|
+
|
|
1231
|
+
def deploy_model_app(
|
|
1232
|
+
self,
|
|
1233
|
+
module_id: int,
|
|
1234
|
+
workspace_id: int,
|
|
1235
|
+
agent_id: Optional[int] = None,
|
|
1236
|
+
description: Optional[str] = "application description",
|
|
1237
|
+
params: Dict[str, Any] = None,
|
|
1238
|
+
log_level: Optional[Literal["info", "debug", "warning", "error"]] = "info",
|
|
1239
|
+
users_ids: Optional[List[int]] = None,
|
|
1240
|
+
app_version: Optional[str] = "",
|
|
1241
|
+
is_branch: Optional[bool] = False,
|
|
1242
|
+
task_name: Optional[str] = "pythonSpawned",
|
|
1243
|
+
restart_policy: Optional[Literal["never", "on_error"]] = "never",
|
|
1244
|
+
proxy_keep_url: Optional[bool] = False,
|
|
1245
|
+
redirect_requests: Optional[Dict[str, int]] = {},
|
|
1246
|
+
limit_by_workspace: bool = False,
|
|
1247
|
+
deploy_params: Dict[str, Any] = None,
|
|
1248
|
+
timeout: int = 100,
|
|
1249
|
+
):
|
|
1250
|
+
if deploy_params is None:
|
|
1251
|
+
deploy_params = {}
|
|
1252
|
+
task_info = self.start(
|
|
1253
|
+
agent_id=agent_id,
|
|
1254
|
+
workspace_id=workspace_id,
|
|
1255
|
+
module_id=module_id,
|
|
1256
|
+
description=description,
|
|
1257
|
+
params=params,
|
|
1258
|
+
log_level=log_level,
|
|
1259
|
+
users_ids=users_ids,
|
|
1260
|
+
app_version=app_version,
|
|
1261
|
+
is_branch=is_branch,
|
|
1262
|
+
task_name=task_name,
|
|
1263
|
+
restart_policy=restart_policy,
|
|
1264
|
+
proxy_keep_url=proxy_keep_url,
|
|
1265
|
+
redirect_requests=redirect_requests,
|
|
1266
|
+
limit_by_workspace=limit_by_workspace,
|
|
1267
|
+
)
|
|
1268
|
+
|
|
1269
|
+
attempt_delay_sec = 10
|
|
1270
|
+
attempts = (timeout + attempt_delay_sec) // attempt_delay_sec
|
|
1271
|
+
ready = self._api.app.wait_until_ready_for_api_calls(
|
|
1272
|
+
task_info["id"], attempts, attempt_delay_sec
|
|
1273
|
+
)
|
|
1274
|
+
if not ready:
|
|
1275
|
+
raise TimeoutError(
|
|
1276
|
+
f"Task {task_info['id']} is not ready for API calls after {timeout} seconds."
|
|
1277
|
+
)
|
|
1278
|
+
self.deploy_model_from_api(task_info["id"], deploy_params=deploy_params)
|
|
1279
|
+
return task_info
|
|
1280
|
+
|
|
1281
|
+
def deploy_custom_model(
|
|
1282
|
+
self,
|
|
1283
|
+
team_id: int,
|
|
1284
|
+
workspace_id: int,
|
|
1285
|
+
artifacts_dir: str,
|
|
1286
|
+
checkpoint_name: str = None,
|
|
1287
|
+
agent_id: int = None,
|
|
1288
|
+
device: str = "cuda",
|
|
1289
|
+
):
|
|
1290
|
+
"""
|
|
1291
|
+
Deploy a custom model based on the artifacts directory.
|
|
1292
|
+
|
|
1293
|
+
:param workspace_id: Workspace ID in Supervisely.
|
|
1294
|
+
:type workspace_id: int
|
|
1295
|
+
:param artifacts_dir: Path to the artifacts directory.
|
|
1296
|
+
:type artifacts_dir: str
|
|
1297
|
+
:param checkpoint_name: Checkpoint name (with extension) to deploy.
|
|
1298
|
+
:type checkpoint_name: Optional[str]
|
|
1299
|
+
:param agent_id: Agent ID in Supervisely.
|
|
1300
|
+
:type agent_id: Optional[int]
|
|
1301
|
+
:param device: Device string (default is "cuda").
|
|
1302
|
+
:type device: str
|
|
1303
|
+
:raises ValueError: if validations fail.
|
|
1304
|
+
"""
|
|
1305
|
+
from dataclasses import asdict
|
|
1306
|
+
|
|
1307
|
+
from supervisely.nn.artifacts import (
|
|
1308
|
+
RITM,
|
|
1309
|
+
RTDETR,
|
|
1310
|
+
Detectron2,
|
|
1311
|
+
MMClassification,
|
|
1312
|
+
MMDetection,
|
|
1313
|
+
MMDetection3,
|
|
1314
|
+
MMSegmentation,
|
|
1315
|
+
UNet,
|
|
1316
|
+
YOLOv5,
|
|
1317
|
+
YOLOv5v2,
|
|
1318
|
+
YOLOv8,
|
|
1319
|
+
)
|
|
1320
|
+
from supervisely.nn.experiments import get_experiment_info_by_artifacts_dir
|
|
1321
|
+
from supervisely.nn.utils import ModelSource, RuntimeType
|
|
1322
|
+
|
|
1323
|
+
if not isinstance(workspace_id, int) or workspace_id <= 0:
|
|
1324
|
+
raise ValueError(f"workspace_id must be a positive integer. Received: {workspace_id}")
|
|
1325
|
+
if not isinstance(artifacts_dir, str) or not artifacts_dir.strip():
|
|
1326
|
+
raise ValueError("artifacts_dir must be a non-empty string.")
|
|
1327
|
+
|
|
1328
|
+
workspace_info = self._api.workspace.get_info_by_id(workspace_id)
|
|
1329
|
+
if workspace_info is None:
|
|
1330
|
+
raise ValueError(f"Workspace with ID '{workspace_id}' not found.")
|
|
1331
|
+
|
|
1332
|
+
team_id = workspace_info.team_id
|
|
1333
|
+
logger.debug(
|
|
1334
|
+
f"Starting model deployment. Team: {team_id}, Workspace: {workspace_id}, Artifacts Dir: '{artifacts_dir}'"
|
|
1335
|
+
)
|
|
1336
|
+
|
|
1337
|
+
# Train V1 logic (if artifacts_dir does not start with '/experiments')
|
|
1338
|
+
if not artifacts_dir.startswith("/experiments"):
|
|
1339
|
+
logger.debug("Deploying model from Train V1 artifacts")
|
|
1340
|
+
frameworks = {
|
|
1341
|
+
"/detectron2": Detectron2,
|
|
1342
|
+
"/mmclassification": MMClassification,
|
|
1343
|
+
"/mmdetection": MMDetection,
|
|
1344
|
+
"/mmdetection-3": MMDetection3,
|
|
1345
|
+
"/mmsegmentation": MMSegmentation,
|
|
1346
|
+
"/RITM_training": RITM,
|
|
1347
|
+
"/RT-DETR": RTDETR,
|
|
1348
|
+
"/unet": UNet,
|
|
1349
|
+
"/yolov5_train": YOLOv5,
|
|
1350
|
+
"/yolov5_2.0_train": YOLOv5v2,
|
|
1351
|
+
"/yolov8_train": YOLOv8,
|
|
1352
|
+
}
|
|
1353
|
+
|
|
1354
|
+
framework_cls = next(
|
|
1355
|
+
(cls for prefix, cls in frameworks.items() if artifacts_dir.startswith(prefix)),
|
|
1356
|
+
None,
|
|
1357
|
+
)
|
|
1358
|
+
if not framework_cls:
|
|
1359
|
+
raise ValueError(f"Unsupported framework for artifacts_dir: '{artifacts_dir}'")
|
|
1360
|
+
|
|
1361
|
+
framework = framework_cls(team_id)
|
|
1362
|
+
if framework_cls is RITM or framework_cls is YOLOv5:
|
|
1363
|
+
raise ValueError(
|
|
1364
|
+
f"{framework.framework_name} framework is not supported for deployment"
|
|
1365
|
+
)
|
|
1366
|
+
|
|
1367
|
+
logger.debug(f"Detected framework: '{framework.framework_name}'")
|
|
1368
|
+
|
|
1369
|
+
module_id = self._api.app.get_ecosystem_module_id(framework.serve_slug)
|
|
1370
|
+
serve_app_name = framework.serve_app_name
|
|
1371
|
+
logger.debug(f"Module ID fetched:' {module_id}'. App name: '{serve_app_name}'")
|
|
1372
|
+
|
|
1373
|
+
train_info = framework.get_info_by_artifacts_dir(artifacts_dir.rstrip("/"))
|
|
1374
|
+
if not hasattr(train_info, "checkpoints") or not train_info.checkpoints:
|
|
1375
|
+
raise ValueError("No checkpoints found in train info.")
|
|
1376
|
+
|
|
1377
|
+
checkpoint = None
|
|
1378
|
+
if checkpoint_name is not None:
|
|
1379
|
+
for cp in train_info.checkpoints:
|
|
1380
|
+
if cp.name == checkpoint_name:
|
|
1381
|
+
checkpoint = cp
|
|
1382
|
+
break
|
|
1383
|
+
if checkpoint is None:
|
|
1384
|
+
raise ValueError(f"Checkpoint '{checkpoint_name}' not found in train info.")
|
|
1385
|
+
else:
|
|
1386
|
+
logger.debug("Checkpoint name not provided. Using the last checkpoint.")
|
|
1387
|
+
checkpoint = train_info.checkpoints[-1]
|
|
1388
|
+
|
|
1389
|
+
checkpoint_name = checkpoint.name
|
|
1390
|
+
deploy_params = {
|
|
1391
|
+
"device": device,
|
|
1392
|
+
"model_source": ModelSource.CUSTOM,
|
|
1393
|
+
"task_type": train_info.task_type,
|
|
1394
|
+
"checkpoint_name": checkpoint_name,
|
|
1395
|
+
"checkpoint_url": checkpoint.path,
|
|
1396
|
+
}
|
|
1397
|
+
|
|
1398
|
+
if getattr(train_info, "config_path", None) is not None:
|
|
1399
|
+
deploy_params["config_url"] = train_info.config_path
|
|
1400
|
+
|
|
1401
|
+
if framework.require_runtime:
|
|
1402
|
+
deploy_params["runtime"] = RuntimeType.PYTORCH
|
|
1403
|
+
|
|
1404
|
+
else: # Train V2 logic (when artifacts_dir starts with '/experiments')
|
|
1405
|
+
logger.debug("Deploying model from Train V2 artifacts")
|
|
1406
|
+
|
|
1407
|
+
def get_framework_from_artifacts_dir(artifacts_dir: str) -> str:
|
|
1408
|
+
clean_path = artifacts_dir.rstrip("/")
|
|
1409
|
+
parts = clean_path.split("/")
|
|
1410
|
+
if not parts or "_" not in parts[-1]:
|
|
1411
|
+
raise ValueError(f"Invalid artifacts_dir format: '{artifacts_dir}'")
|
|
1412
|
+
return parts[-1].split("_", 1)[1]
|
|
1413
|
+
|
|
1414
|
+
# TODO: temporary solution, need to add Serve App Name into config.json
|
|
1415
|
+
framework_name = get_framework_from_artifacts_dir(artifacts_dir)
|
|
1416
|
+
logger.debug(f"Detected framework: {framework_name}")
|
|
1417
|
+
|
|
1418
|
+
modules = self._api.app.get_list_all_pages(
|
|
1419
|
+
method="ecosystem.list",
|
|
1420
|
+
data={"filter": [], "search": framework_name, "categories": ["serve"]},
|
|
1421
|
+
convert_json_info_cb=lambda x: x,
|
|
1422
|
+
)
|
|
1423
|
+
if not modules:
|
|
1424
|
+
raise ValueError(f"No serve apps found for framework: '{framework_name}'")
|
|
1425
|
+
|
|
1426
|
+
module = modules[0]
|
|
1427
|
+
module_id = module["id"]
|
|
1428
|
+
serve_app_name = module["name"]
|
|
1429
|
+
logger.debug(f"Serving app delected: '{serve_app_name}'. Module ID: '{module_id}'")
|
|
1430
|
+
|
|
1431
|
+
experiment_info = get_experiment_info_by_artifacts_dir(
|
|
1432
|
+
self._api, team_id, artifacts_dir
|
|
1433
|
+
)
|
|
1434
|
+
if not experiment_info:
|
|
1435
|
+
raise ValueError(
|
|
1436
|
+
f"Failed to retrieve experiment info for artifacts_dir: '{artifacts_dir}'"
|
|
1437
|
+
)
|
|
1438
|
+
|
|
1439
|
+
if len(experiment_info.checkpoints) == 0:
|
|
1440
|
+
raise ValueError(f"No checkpoints found in: '{artifacts_dir}'.")
|
|
1441
|
+
|
|
1442
|
+
checkpoint = None
|
|
1443
|
+
if checkpoint_name is not None:
|
|
1444
|
+
for checkpoint_path in experiment_info.checkpoints:
|
|
1445
|
+
if get_file_name_with_ext(checkpoint_path) == checkpoint_name:
|
|
1446
|
+
checkpoint = get_file_name_with_ext(checkpoint_path)
|
|
1447
|
+
break
|
|
1448
|
+
if checkpoint is None:
|
|
1449
|
+
raise ValueError(
|
|
1450
|
+
f"Provided checkpoint '{checkpoint_name}' not found. Using the best checkpoint."
|
|
1451
|
+
)
|
|
1452
|
+
else:
|
|
1453
|
+
logger.debug("Checkpoint name not provided. Using the best checkpoint.")
|
|
1454
|
+
checkpoint = experiment_info.best_checkpoint
|
|
1455
|
+
|
|
1456
|
+
checkpoint_name = checkpoint
|
|
1457
|
+
deploy_params = {
|
|
1458
|
+
"device": device,
|
|
1459
|
+
"model_source": ModelSource.CUSTOM,
|
|
1460
|
+
"model_files": {
|
|
1461
|
+
"checkpoint": f"{experiment_info.artifacts_dir}checkpoints/{checkpoint_name}"
|
|
1462
|
+
},
|
|
1463
|
+
"model_info": asdict(experiment_info),
|
|
1464
|
+
"runtime": RuntimeType.PYTORCH,
|
|
1465
|
+
}
|
|
1466
|
+
# TODO: add support for **kwargs
|
|
1467
|
+
|
|
1468
|
+
config = experiment_info.model_files.get("config")
|
|
1469
|
+
if config is not None:
|
|
1470
|
+
deploy_params["model_files"]["config"] = f"{experiment_info.artifacts_dir}{config}"
|
|
1471
|
+
logger.debug(f"Config file added: {experiment_info.artifacts_dir}{config}")
|
|
1472
|
+
|
|
1473
|
+
logger.info(
|
|
1474
|
+
f"{serve_app_name} app deployment started. Checkpoint: '{checkpoint_name}'. Deploy params: '{deploy_params}'"
|
|
1475
|
+
)
|
|
1476
|
+
self.deploy_model_app(
|
|
1477
|
+
module_id,
|
|
1478
|
+
workspace_id,
|
|
1479
|
+
agent_id,
|
|
1480
|
+
description=f"Deployed via deploy_custom_model",
|
|
1481
|
+
task_name=f"{serve_app_name} ({checkpoint_name})",
|
|
1482
|
+
deploy_params=deploy_params,
|
|
1483
|
+
)
|
|
@@ -3,11 +3,12 @@ import string
|
|
|
3
3
|
from abc import abstractmethod
|
|
4
4
|
from collections import defaultdict
|
|
5
5
|
from concurrent.futures import ThreadPoolExecutor, as_completed
|
|
6
|
+
from dataclasses import fields
|
|
6
7
|
from datetime import datetime
|
|
7
8
|
from json import JSONDecodeError
|
|
8
9
|
from os.path import dirname, join
|
|
9
10
|
from time import time
|
|
10
|
-
from typing import Any, Dict, List, Literal, NamedTuple
|
|
11
|
+
from typing import Any, Dict, List, Literal, NamedTuple, Union
|
|
11
12
|
|
|
12
13
|
import requests
|
|
13
14
|
|
|
@@ -55,6 +56,9 @@ class BaseTrainArtifacts:
|
|
|
55
56
|
self._metadata_file_name: str = "train_info.json"
|
|
56
57
|
|
|
57
58
|
self._app_name: str = None
|
|
59
|
+
self._slug = None
|
|
60
|
+
self._serve_app_name = None
|
|
61
|
+
self._serve_slug = None
|
|
58
62
|
self._framework_name: str = None
|
|
59
63
|
self._framework_folder: str = None
|
|
60
64
|
self._weights_folder: str = None
|
|
@@ -63,6 +67,7 @@ class BaseTrainArtifacts:
|
|
|
63
67
|
self._config_file: str = None
|
|
64
68
|
self._pattern: str = None
|
|
65
69
|
self._available_task_types: List[str] = []
|
|
70
|
+
self._require_runtime = False
|
|
66
71
|
|
|
67
72
|
@property
|
|
68
73
|
def team_id(self) -> int:
|
|
@@ -94,6 +99,36 @@ class BaseTrainArtifacts:
|
|
|
94
99
|
"""
|
|
95
100
|
return self._app_name
|
|
96
101
|
|
|
102
|
+
@property
|
|
103
|
+
def slug(self):
|
|
104
|
+
"""
|
|
105
|
+
Train app slug.
|
|
106
|
+
|
|
107
|
+
:return: Train app slug.
|
|
108
|
+
:rtype: str
|
|
109
|
+
"""
|
|
110
|
+
return self._slug
|
|
111
|
+
|
|
112
|
+
@property
|
|
113
|
+
def serve_app_name(self):
|
|
114
|
+
"""
|
|
115
|
+
Serve application name.
|
|
116
|
+
|
|
117
|
+
:return: The serve application name.
|
|
118
|
+
:rtype: str
|
|
119
|
+
"""
|
|
120
|
+
return self._serve_app_name
|
|
121
|
+
|
|
122
|
+
@property
|
|
123
|
+
def serve_slug(self):
|
|
124
|
+
"""
|
|
125
|
+
Serve app slug.
|
|
126
|
+
|
|
127
|
+
:return: Serve app slug.
|
|
128
|
+
:rtype: str
|
|
129
|
+
"""
|
|
130
|
+
return self._serve_slug
|
|
131
|
+
|
|
97
132
|
@property
|
|
98
133
|
def framework_name(self):
|
|
99
134
|
"""
|
|
@@ -164,6 +199,16 @@ class BaseTrainArtifacts:
|
|
|
164
199
|
"""
|
|
165
200
|
return self._pattern
|
|
166
201
|
|
|
202
|
+
@property
|
|
203
|
+
def require_runtime(self):
|
|
204
|
+
"""
|
|
205
|
+
Whether providing runtime is required for the framework.
|
|
206
|
+
|
|
207
|
+
:return: True if runtime is required, False otherwise.
|
|
208
|
+
:rtype: bool
|
|
209
|
+
"""
|
|
210
|
+
return self._require_runtime
|
|
211
|
+
|
|
167
212
|
def is_valid_artifacts_path(self, path):
|
|
168
213
|
"""
|
|
169
214
|
Check if the provided path is valid and follows specified session path pattern.
|
|
@@ -531,68 +576,68 @@ class BaseTrainArtifacts:
|
|
|
531
576
|
logger.debug(f"Listing time: '{format(end_time - start_time, '.6f')}' sec")
|
|
532
577
|
return train_infos
|
|
533
578
|
|
|
534
|
-
def
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
579
|
+
def convert_train_to_experiment_info(
|
|
580
|
+
self, train_info: TrainInfo
|
|
581
|
+
) -> Union[ExperimentInfo, None]:
|
|
582
|
+
try:
|
|
583
|
+
checkpoints = []
|
|
584
|
+
for chk in train_info.checkpoints:
|
|
585
|
+
if self.weights_folder:
|
|
586
|
+
checkpoints.append(join(self.weights_folder, chk.name))
|
|
587
|
+
else:
|
|
588
|
+
checkpoints.append(chk.name)
|
|
589
|
+
|
|
590
|
+
best_checkpoint = next(
|
|
591
|
+
(chk.name for chk in train_info.checkpoints if "best" in chk.name), None
|
|
592
|
+
)
|
|
593
|
+
if not best_checkpoint and checkpoints:
|
|
594
|
+
best_checkpoint = get_file_name_with_ext(checkpoints[-1])
|
|
595
|
+
|
|
596
|
+
task_info = self._api.task.get_info_by_id(train_info.task_id)
|
|
597
|
+
workspace_id = task_info["workspaceId"]
|
|
598
|
+
|
|
599
|
+
project = self._api.project.get_info_by_name(workspace_id, train_info.project_name)
|
|
600
|
+
project_id = project.id if project else None
|
|
601
|
+
|
|
602
|
+
model_files = {}
|
|
603
|
+
if train_info.config_path:
|
|
604
|
+
model_files["config"] = self.get_config_path(train_info.artifacts_folder).replace(
|
|
605
|
+
train_info.artifacts_folder, ""
|
|
549
606
|
)
|
|
550
|
-
if not best_checkpoint and checkpoints:
|
|
551
|
-
best_checkpoint = get_file_name_with_ext(checkpoints[-1])
|
|
552
|
-
|
|
553
|
-
task_info = api.task.get_info_by_id(train_info.task_id)
|
|
554
|
-
workspace_id = task_info["workspaceId"]
|
|
555
|
-
|
|
556
|
-
project = api.project.get_info_by_name(workspace_id, train_info.project_name)
|
|
557
|
-
project_id = project.id if project else None
|
|
558
|
-
|
|
559
|
-
model_files = {}
|
|
560
|
-
if train_info.config_path:
|
|
561
|
-
model_files["config"] = self.get_config_path(
|
|
562
|
-
train_info.artifacts_folder
|
|
563
|
-
).replace(train_info.artifacts_folder, "")
|
|
564
|
-
|
|
565
|
-
input_datetime = task_info["startedAt"]
|
|
566
|
-
parsed_datetime = datetime.strptime(input_datetime, "%Y-%m-%dT%H:%M:%S.%fZ")
|
|
567
|
-
date_time = parsed_datetime.strftime("%Y-%m-%d %H:%M:%S")
|
|
568
|
-
|
|
569
|
-
experiment_info_data = {
|
|
570
|
-
"experiment_name": f"Unknown {self.framework_name} experiment",
|
|
571
|
-
"framework_name": self.framework_name,
|
|
572
|
-
"model_name": f"Unknown {self.framework_name} model",
|
|
573
|
-
"task_type": train_info.task_type,
|
|
574
|
-
"project_id": project_id,
|
|
575
|
-
"task_id": train_info.task_id,
|
|
576
|
-
"model_files": model_files,
|
|
577
|
-
"checkpoints": checkpoints,
|
|
578
|
-
"best_checkpoint": best_checkpoint,
|
|
579
|
-
"artifacts_dir": train_info.artifacts_folder,
|
|
580
|
-
"datetime": date_time,
|
|
581
|
-
}
|
|
582
|
-
|
|
583
|
-
experiment_info_fields = {
|
|
584
|
-
field.name
|
|
585
|
-
for field in ExperimentInfo.__dataclass_fields__.values() # pylint: disable=no-member
|
|
586
|
-
}
|
|
587
|
-
for field in experiment_info_fields:
|
|
588
|
-
if field not in experiment_info_data:
|
|
589
|
-
experiment_info_data[field] = None
|
|
590
|
-
|
|
591
|
-
return ExperimentInfo(**experiment_info_data)
|
|
592
|
-
except Exception as e:
|
|
593
|
-
logger.debug(f"Failed to build experiment info: {e}")
|
|
594
|
-
return None
|
|
595
607
|
|
|
608
|
+
input_datetime = task_info["startedAt"]
|
|
609
|
+
parsed_datetime = datetime.strptime(input_datetime, "%Y-%m-%dT%H:%M:%S.%fZ")
|
|
610
|
+
date_time = parsed_datetime.strftime("%Y-%m-%d %H:%M:%S")
|
|
611
|
+
|
|
612
|
+
experiment_info_data = {
|
|
613
|
+
"experiment_name": f"Unknown {self.framework_name} experiment",
|
|
614
|
+
"framework_name": self.framework_name,
|
|
615
|
+
"model_name": f"Unknown {self.framework_name} model",
|
|
616
|
+
"task_type": train_info.task_type,
|
|
617
|
+
"project_id": project_id,
|
|
618
|
+
"task_id": train_info.task_id,
|
|
619
|
+
"model_files": model_files,
|
|
620
|
+
"checkpoints": checkpoints,
|
|
621
|
+
"best_checkpoint": best_checkpoint,
|
|
622
|
+
"artifacts_dir": train_info.artifacts_folder,
|
|
623
|
+
"datetime": date_time,
|
|
624
|
+
}
|
|
625
|
+
|
|
626
|
+
experiment_info_fields = {
|
|
627
|
+
field.name
|
|
628
|
+
for field in ExperimentInfo.__dataclass_fields__.values() # pylint: disable=no-member
|
|
629
|
+
}
|
|
630
|
+
for field in experiment_info_fields:
|
|
631
|
+
if field not in experiment_info_data:
|
|
632
|
+
experiment_info_data[field] = None
|
|
633
|
+
return ExperimentInfo(**experiment_info_data)
|
|
634
|
+
except Exception as e:
|
|
635
|
+
logger.debug(f"Failed to build experiment info: {e}")
|
|
636
|
+
return None
|
|
637
|
+
|
|
638
|
+
def get_list_experiment_info(
|
|
639
|
+
self, sort: Literal["desc", "asc"] = "desc"
|
|
640
|
+
) -> List[ExperimentInfo]:
|
|
596
641
|
train_infos = self.get_list(sort)
|
|
597
642
|
|
|
598
643
|
# Sync version
|
|
@@ -607,7 +652,7 @@ class BaseTrainArtifacts:
|
|
|
607
652
|
with ThreadPoolExecutor() as executor:
|
|
608
653
|
experiment_infos = list(
|
|
609
654
|
executor.map(
|
|
610
|
-
lambda t:
|
|
655
|
+
lambda t: self.convert_train_to_experiment_info(t),
|
|
611
656
|
train_infos,
|
|
612
657
|
)
|
|
613
658
|
)
|
|
@@ -621,3 +666,29 @@ class BaseTrainArtifacts:
|
|
|
621
666
|
:rtype: List[str]
|
|
622
667
|
"""
|
|
623
668
|
return self._available_task_types
|
|
669
|
+
|
|
670
|
+
def get_info_by_artifacts_dir(
|
|
671
|
+
self,
|
|
672
|
+
artifacts_dir: str,
|
|
673
|
+
return_type: Literal["train_info", "experiment_info"] = "train_info",
|
|
674
|
+
) -> Union[TrainInfo, ExperimentInfo, None]:
|
|
675
|
+
"""
|
|
676
|
+
Get training info by artifacts directory.
|
|
677
|
+
|
|
678
|
+
:param artifacts_dir: The artifacts directory.
|
|
679
|
+
:type artifacts_dir: str
|
|
680
|
+
:param return_type: The return type, either "train_info" or "experiment_info". Default is "experiment_info".
|
|
681
|
+
:type return_type: Literal["train_info", "experiment_info"]
|
|
682
|
+
:return: The training info.
|
|
683
|
+
:rtype: TrainInfo
|
|
684
|
+
"""
|
|
685
|
+
for train_info in self.get_list():
|
|
686
|
+
if train_info.artifacts_folder == artifacts_dir:
|
|
687
|
+
if return_type == "train_info":
|
|
688
|
+
return train_info
|
|
689
|
+
else:
|
|
690
|
+
return self.convert_train_to_experiment_info(train_info)
|
|
691
|
+
|
|
692
|
+
# load_custom_checkpoint
|
|
693
|
+
# inference
|
|
694
|
+
# fix docstrings :param: x -> :param x:
|
|
@@ -10,6 +10,11 @@ class Detectron2(BaseTrainArtifacts):
|
|
|
10
10
|
super().__init__(team_id)
|
|
11
11
|
|
|
12
12
|
self._app_name = "Train Detectron2"
|
|
13
|
+
self._slug = "supervisely-ecosystem/detectron2/supervisely/train"
|
|
14
|
+
self._serve_app_name = "Serve Detectron2"
|
|
15
|
+
self._serve_slug = (
|
|
16
|
+
"supervisely-ecosystem/detectron2/supervisely/instance_segmentation/serve"
|
|
17
|
+
)
|
|
13
18
|
self._framework_name = "Detectron2"
|
|
14
19
|
self._framework_folder = "/detectron2"
|
|
15
20
|
self._weights_folder = "checkpoints"
|
|
@@ -19,6 +24,7 @@ class Detectron2(BaseTrainArtifacts):
|
|
|
19
24
|
self._config_file = "model_config.yaml"
|
|
20
25
|
self._pattern = re_compile(r"^/detectron2/\d+_[^/]+/?$")
|
|
21
26
|
self._available_task_types: List[str] = ["instance segmentation"]
|
|
27
|
+
self._require_runtime = False
|
|
22
28
|
|
|
23
29
|
def get_task_id(self, artifacts_folder: str) -> str:
|
|
24
30
|
parts = artifacts_folder.split("/")
|
|
@@ -10,12 +10,16 @@ class HRDA(BaseTrainArtifacts):
|
|
|
10
10
|
raise NotImplementedError
|
|
11
11
|
# super().__init__(team_id)
|
|
12
12
|
# self._app_name = "Train HRDA"
|
|
13
|
+
# self._serve_app_name = None
|
|
14
|
+
# self._slug = None
|
|
15
|
+
# self._serve_slug = None
|
|
13
16
|
# self._framework_folder = "/HRDA"
|
|
14
17
|
# self._weights_folder = None
|
|
15
18
|
# self._task_type = "semantic segmentation"
|
|
16
19
|
# self._weights_ext = ".pth"
|
|
17
20
|
# self._config_file = "config.py"
|
|
18
21
|
# self._available_task_types: List[str] = ["semantic segmentation"]
|
|
22
|
+
# self._require_runtime = False
|
|
19
23
|
|
|
20
24
|
def get_task_id(self, artifacts_folder: str) -> str:
|
|
21
25
|
raise NotImplementedError
|
|
@@ -10,6 +10,9 @@ class MMClassification(BaseTrainArtifacts):
|
|
|
10
10
|
super().__init__(team_id)
|
|
11
11
|
|
|
12
12
|
self._app_name = "Train MMClassification"
|
|
13
|
+
self._slug = "supervisely-ecosystem/mmclassification/supervisely/train"
|
|
14
|
+
self._serve_app_name = "Serve MMClassification"
|
|
15
|
+
self._serve_slug = "supervisely-ecosystem/mmclassification/supervisely/serve"
|
|
13
16
|
self._framework_name = "MMClassification"
|
|
14
17
|
self._framework_folder = "/mmclassification"
|
|
15
18
|
self._weights_folder = "checkpoints"
|
|
@@ -17,6 +20,7 @@ class MMClassification(BaseTrainArtifacts):
|
|
|
17
20
|
self._weights_ext = ".pth"
|
|
18
21
|
self._pattern = re_compile(r"^/mmclassification/\d+_[^/]+/?$")
|
|
19
22
|
self._available_task_types: List[str] = ["classification"]
|
|
23
|
+
self._require_runtime = False
|
|
20
24
|
|
|
21
25
|
def get_task_id(self, artifacts_folder: str) -> str:
|
|
22
26
|
parts = artifacts_folder.split("/")
|