dioptra-platform 1.0.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (242) hide show
  1. dioptra/client/__init__.py +21 -0
  2. dioptra/client/__version__.py +17 -0
  3. dioptra/client/_client.py +746 -0
  4. dioptra/generics_plugins/estimator_predict/__init__.py +16 -0
  5. dioptra/generics_plugins/estimator_predict/tf_keras_model.py +120 -0
  6. dioptra/generics_plugins/fit_estimator/__init__.py +16 -0
  7. dioptra/generics_plugins/fit_estimator/tf_keras_model.py +95 -0
  8. dioptra/pyplugs/__init__.py +101 -0
  9. dioptra/pyplugs/__version__.py +17 -0
  10. dioptra/pyplugs/_plugins.py +393 -0
  11. dioptra/restapi/__init__.py +22 -0
  12. dioptra/restapi/__version__.py +17 -0
  13. dioptra/restapi/app.py +112 -0
  14. dioptra/restapi/bootstrap.py +121 -0
  15. dioptra/restapi/cli/__init__.py +16 -0
  16. dioptra/restapi/cli/gunicorn.py +37 -0
  17. dioptra/restapi/config.py +126 -0
  18. dioptra/restapi/custom_schema_fields.py +24 -0
  19. dioptra/restapi/db/__init__.py +20 -0
  20. dioptra/restapi/db/alembic/README +1 -0
  21. dioptra/restapi/db/alembic/alembic.ini +45 -0
  22. dioptra/restapi/db/alembic/env.py +128 -0
  23. dioptra/restapi/db/alembic/run.py +571 -0
  24. dioptra/restapi/db/alembic/script.py.mako +24 -0
  25. dioptra/restapi/db/alembic/versions/018130a0bf6c_.py +45 -0
  26. dioptra/restapi/db/alembic/versions/10f9e72e72aa_add_readonly_resource_lock_type_to_db_.py +64 -0
  27. dioptra/restapi/db/alembic/versions/148c032ffbd8_create_tables_for_v1_schema.py +1705 -0
  28. dioptra/restapi/db/alembic/versions/32d5c0055e1b_.py +266 -0
  29. dioptra/restapi/db/alembic/versions/4b2d781f8bb4_remove_legacy_v0_tables.py +169 -0
  30. dioptra/restapi/db/alembic/versions/5b80d059cbb4_fix_primary_key_and_unique_index_on_.py +118 -0
  31. dioptra/restapi/db/alembic/versions/6a343ff9bc2f_.py +90 -0
  32. dioptra/restapi/db/alembic/versions/7086ad09e884_.py +100 -0
  33. dioptra/restapi/db/alembic/versions/8ffe4640e009_update_uniqueness_constraint_name_for_.py +37 -0
  34. dioptra/restapi/db/alembic/versions/a278f46a1c9d_.py +36 -0
  35. dioptra/restapi/db/alembic/versions/b5cc97666e3d_add_index_over_the_draft_resources_payload.py +57 -0
  36. dioptra/restapi/db/alembic/versions/b835738272a8_insert_legacy_into_primary_key_constraint_names.py +256 -0
  37. dioptra/restapi/db/alembic/versions/d2bae5f6d991_add_readonly_resource_locks_to_pre_.py +266 -0
  38. dioptra/restapi/db/alembic/versions/ef1936dcc5eb_mark_existing_database_tables_as_legacy.py +156 -0
  39. dioptra/restapi/db/alembic/versions/fd786b5377d6_add_ml_model_versions_resource.py +358 -0
  40. dioptra/restapi/db/custom_types.py +105 -0
  41. dioptra/restapi/db/db.py +88 -0
  42. dioptra/restapi/db/models/__init__.py +110 -0
  43. dioptra/restapi/db/models/artifacts.py +64 -0
  44. dioptra/restapi/db/models/constants.py +38 -0
  45. dioptra/restapi/db/models/entry_points.py +168 -0
  46. dioptra/restapi/db/models/experiments.py +58 -0
  47. dioptra/restapi/db/models/groups.py +116 -0
  48. dioptra/restapi/db/models/jobs.py +212 -0
  49. dioptra/restapi/db/models/locks.py +107 -0
  50. dioptra/restapi/db/models/ml_models.py +120 -0
  51. dioptra/restapi/db/models/plugins.py +239 -0
  52. dioptra/restapi/db/models/queues.py +56 -0
  53. dioptra/restapi/db/models/resources.py +401 -0
  54. dioptra/restapi/db/models/tags.py +66 -0
  55. dioptra/restapi/db/models/users.py +123 -0
  56. dioptra/restapi/errors.py +106 -0
  57. dioptra/restapi/routes.py +77 -0
  58. dioptra/restapi/utils.py +327 -0
  59. dioptra/restapi/v1/__init__.py +47 -0
  60. dioptra/restapi/v1/artifacts/__init__.py +19 -0
  61. dioptra/restapi/v1/artifacts/controller.py +191 -0
  62. dioptra/restapi/v1/artifacts/errors.py +44 -0
  63. dioptra/restapi/v1/artifacts/schema.py +88 -0
  64. dioptra/restapi/v1/artifacts/service.py +442 -0
  65. dioptra/restapi/v1/auth/__init__.py +17 -0
  66. dioptra/restapi/v1/auth/controller.py +98 -0
  67. dioptra/restapi/v1/auth/schema.py +72 -0
  68. dioptra/restapi/v1/auth/service.py +114 -0
  69. dioptra/restapi/v1/entrypoints/__init__.py +19 -0
  70. dioptra/restapi/v1/entrypoints/controller.py +432 -0
  71. dioptra/restapi/v1/entrypoints/errors.py +66 -0
  72. dioptra/restapi/v1/entrypoints/schema.py +231 -0
  73. dioptra/restapi/v1/entrypoints/service.py +1168 -0
  74. dioptra/restapi/v1/experiments/__init__.py +20 -0
  75. dioptra/restapi/v1/experiments/controller.py +661 -0
  76. dioptra/restapi/v1/experiments/errors.py +42 -0
  77. dioptra/restapi/v1/experiments/schema.py +124 -0
  78. dioptra/restapi/v1/experiments/service.py +766 -0
  79. dioptra/restapi/v1/groups/__init__.py +20 -0
  80. dioptra/restapi/v1/groups/controller.py +248 -0
  81. dioptra/restapi/v1/groups/errors.py +41 -0
  82. dioptra/restapi/v1/groups/schema.py +213 -0
  83. dioptra/restapi/v1/groups/service.py +453 -0
  84. dioptra/restapi/v1/jobs/__init__.py +19 -0
  85. dioptra/restapi/v1/jobs/controller.py +261 -0
  86. dioptra/restapi/v1/jobs/errors.py +94 -0
  87. dioptra/restapi/v1/jobs/schema.py +169 -0
  88. dioptra/restapi/v1/jobs/service.py +1027 -0
  89. dioptra/restapi/v1/models/__init__.py +19 -0
  90. dioptra/restapi/v1/models/controller.py +370 -0
  91. dioptra/restapi/v1/models/errors.py +54 -0
  92. dioptra/restapi/v1/models/schema.py +168 -0
  93. dioptra/restapi/v1/models/service.py +831 -0
  94. dioptra/restapi/v1/plugin_parameter_types/__init__.py +19 -0
  95. dioptra/restapi/v1/plugin_parameter_types/controller.py +265 -0
  96. dioptra/restapi/v1/plugin_parameter_types/errors.py +84 -0
  97. dioptra/restapi/v1/plugin_parameter_types/schema.py +92 -0
  98. dioptra/restapi/v1/plugin_parameter_types/service.py +611 -0
  99. dioptra/restapi/v1/plugins/__init__.py +20 -0
  100. dioptra/restapi/v1/plugins/controller.py +467 -0
  101. dioptra/restapi/v1/plugins/errors.py +110 -0
  102. dioptra/restapi/v1/plugins/schema.py +290 -0
  103. dioptra/restapi/v1/plugins/service.py +1291 -0
  104. dioptra/restapi/v1/queues/__init__.py +20 -0
  105. dioptra/restapi/v1/queues/controller.py +228 -0
  106. dioptra/restapi/v1/queues/errors.py +52 -0
  107. dioptra/restapi/v1/queues/schema.py +90 -0
  108. dioptra/restapi/v1/queues/service.py +466 -0
  109. dioptra/restapi/v1/schemas.py +281 -0
  110. dioptra/restapi/v1/shared/__init__.py +19 -0
  111. dioptra/restapi/v1/shared/drafts/__init__.py +16 -0
  112. dioptra/restapi/v1/shared/drafts/controller.py +625 -0
  113. dioptra/restapi/v1/shared/drafts/schema.py +126 -0
  114. dioptra/restapi/v1/shared/drafts/service.py +500 -0
  115. dioptra/restapi/v1/shared/io_file_service.py +164 -0
  116. dioptra/restapi/v1/shared/password_service.py +44 -0
  117. dioptra/restapi/v1/shared/request_scope.py +136 -0
  118. dioptra/restapi/v1/shared/rq_service.py +62 -0
  119. dioptra/restapi/v1/shared/search_parser.py +238 -0
  120. dioptra/restapi/v1/shared/snapshots/__init__.py +16 -0
  121. dioptra/restapi/v1/shared/snapshots/controller.py +386 -0
  122. dioptra/restapi/v1/shared/snapshots/service.py +215 -0
  123. dioptra/restapi/v1/shared/tags/controller.py +350 -0
  124. dioptra/restapi/v1/shared/tags/service.py +265 -0
  125. dioptra/restapi/v1/tags/__init__.py +19 -0
  126. dioptra/restapi/v1/tags/controller.py +227 -0
  127. dioptra/restapi/v1/tags/errors.py +38 -0
  128. dioptra/restapi/v1/tags/schema.py +127 -0
  129. dioptra/restapi/v1/tags/service.py +431 -0
  130. dioptra/restapi/v1/users/__init__.py +20 -0
  131. dioptra/restapi/v1/users/controller.py +267 -0
  132. dioptra/restapi/v1/users/errors.py +115 -0
  133. dioptra/restapi/v1/users/schema.py +163 -0
  134. dioptra/restapi/v1/users/service.py +693 -0
  135. dioptra/restapi/v1/utils.py +1096 -0
  136. dioptra/restapi/v1/workflows/__init__.py +19 -0
  137. dioptra/restapi/v1/workflows/controller.py +80 -0
  138. dioptra/restapi/v1/workflows/errors.py +41 -0
  139. dioptra/restapi/v1/workflows/lib/__init__.py +27 -0
  140. dioptra/restapi/v1/workflows/lib/export_job_parameters.py +73 -0
  141. dioptra/restapi/v1/workflows/lib/export_plugin_files.py +56 -0
  142. dioptra/restapi/v1/workflows/lib/export_run_dioptra_job_script.py +80 -0
  143. dioptra/restapi/v1/workflows/lib/export_task_engine_yaml.py +214 -0
  144. dioptra/restapi/v1/workflows/lib/package_job_files.py +148 -0
  145. dioptra/restapi/v1/workflows/lib/run_dioptra_job.py.tmpl +170 -0
  146. dioptra/restapi/v1/workflows/lib/views.py +137 -0
  147. dioptra/restapi/v1/workflows/schema.py +43 -0
  148. dioptra/restapi/v1/workflows/service.py +62 -0
  149. dioptra/rq/__init__.py +16 -0
  150. dioptra/rq/__version__.py +17 -0
  151. dioptra/rq/tasks/__init__.py +19 -0
  152. dioptra/rq/tasks/run_v1_dioptra_job.py +212 -0
  153. dioptra/sdk/__init__.py +16 -0
  154. dioptra/sdk/__version__.py +17 -0
  155. dioptra/sdk/exceptions/__init__.py +35 -0
  156. dioptra/sdk/exceptions/base.py +41 -0
  157. dioptra/sdk/exceptions/generics.py +23 -0
  158. dioptra/sdk/exceptions/optional_dependencies.py +35 -0
  159. dioptra/sdk/exceptions/pyplugs.py +59 -0
  160. dioptra/sdk/exceptions/task_engine.py +347 -0
  161. dioptra/sdk/generics/__init__.py +28 -0
  162. dioptra/sdk/generics/_estimator_predict.py +44 -0
  163. dioptra/sdk/generics/_fit_estimator.py +44 -0
  164. dioptra/sdk/generics/_registry.py +46 -0
  165. dioptra/sdk/object_detection/__init__.py +16 -0
  166. dioptra/sdk/object_detection/architectures/__init__.py +22 -0
  167. dioptra/sdk/object_detection/architectures/tensorflow_layers/__init__.py +30 -0
  168. dioptra/sdk/object_detection/architectures/tensorflow_layers/backbones.py +131 -0
  169. dioptra/sdk/object_detection/architectures/tensorflow_layers/conv2dbatchnorm.py +139 -0
  170. dioptra/sdk/object_detection/architectures/tensorflow_layers/yolov1_detection.py +584 -0
  171. dioptra/sdk/object_detection/architectures/yolov1.py +406 -0
  172. dioptra/sdk/object_detection/augmentations/__init__.py +25 -0
  173. dioptra/sdk/object_detection/augmentations/augmentations.py +25 -0
  174. dioptra/sdk/object_detection/augmentations/imgaug_backend.py +214 -0
  175. dioptra/sdk/object_detection/augmentations/passthrough.py +32 -0
  176. dioptra/sdk/object_detection/bounding_boxes/__init__.py +51 -0
  177. dioptra/sdk/object_detection/bounding_boxes/coordinates/__init__.py +31 -0
  178. dioptra/sdk/object_detection/bounding_boxes/coordinates/bounding_box_coordinates.py +125 -0
  179. dioptra/sdk/object_detection/bounding_boxes/coordinates/numpy_backend.py +410 -0
  180. dioptra/sdk/object_detection/bounding_boxes/coordinates/tensorflow_backend.py +614 -0
  181. dioptra/sdk/object_detection/bounding_boxes/iou/__init__.py +28 -0
  182. dioptra/sdk/object_detection/bounding_boxes/iou/bounding_boxes_iou.py +41 -0
  183. dioptra/sdk/object_detection/bounding_boxes/iou/tensorflow_backend.py +358 -0
  184. dioptra/sdk/object_detection/bounding_boxes/postprocessing/__init__.py +27 -0
  185. dioptra/sdk/object_detection/bounding_boxes/postprocessing/bounding_boxes_postprocessing.py +32 -0
  186. dioptra/sdk/object_detection/bounding_boxes/postprocessing/tensorflow_backend/__init__.py +23 -0
  187. dioptra/sdk/object_detection/bounding_boxes/postprocessing/tensorflow_backend/confluence.py +569 -0
  188. dioptra/sdk/object_detection/bounding_boxes/postprocessing/tensorflow_backend/nms.py +164 -0
  189. dioptra/sdk/object_detection/data/__init__.py +23 -0
  190. dioptra/sdk/object_detection/data/annotations/__init__.py +26 -0
  191. dioptra/sdk/object_detection/data/annotations/annotation_data.py +37 -0
  192. dioptra/sdk/object_detection/data/annotations/encodings.py +70 -0
  193. dioptra/sdk/object_detection/data/annotations/pascal_voc.py +94 -0
  194. dioptra/sdk/object_detection/data/images/__init__.py +23 -0
  195. dioptra/sdk/object_detection/data/images/image_data.py +29 -0
  196. dioptra/sdk/object_detection/data/images/tensorflow_backend.py +72 -0
  197. dioptra/sdk/object_detection/data/object_detection_data.py +36 -0
  198. dioptra/sdk/object_detection/data/tensorflow_backend.py +565 -0
  199. dioptra/sdk/object_detection/losses/__init__.py +19 -0
  200. dioptra/sdk/object_detection/losses/yolov1/__init__.py +21 -0
  201. dioptra/sdk/object_detection/losses/yolov1/classification.py +179 -0
  202. dioptra/sdk/object_detection/losses/yolov1/localization.py +327 -0
  203. dioptra/sdk/object_detection/losses/yolov1/yolov1.py +176 -0
  204. dioptra/sdk/utilities/__init__.py +16 -0
  205. dioptra/sdk/utilities/contexts/__init__.py +21 -0
  206. dioptra/sdk/utilities/contexts/_plugin_dirs.py +54 -0
  207. dioptra/sdk/utilities/contexts/_redirect_print.py +47 -0
  208. dioptra/sdk/utilities/contexts/_sys_path_dirs.py +41 -0
  209. dioptra/sdk/utilities/decorators/__init__.py +19 -0
  210. dioptra/sdk/utilities/decorators/_require_package.py +57 -0
  211. dioptra/sdk/utilities/logging/__init__.py +32 -0
  212. dioptra/sdk/utilities/logging/config.py +103 -0
  213. dioptra/sdk/utilities/logging/log_stream.py +87 -0
  214. dioptra/sdk/utilities/paths/__init__.py +21 -0
  215. dioptra/sdk/utilities/paths/_set_path_ext.py +29 -0
  216. dioptra/sdk/utilities/paths/clear_dir.py +42 -0
  217. dioptra/sdk/utilities/paths/set_cwd.py +39 -0
  218. dioptra/sdk/utilities/s3/__init__.py +26 -0
  219. dioptra/sdk/utilities/s3/download.py +138 -0
  220. dioptra/sdk/utilities/s3/uri.py +39 -0
  221. dioptra/task_engine/__init__.py +16 -0
  222. dioptra/task_engine/error_message.py +515 -0
  223. dioptra/task_engine/experiment_schema.json +393 -0
  224. dioptra/task_engine/issues.py +62 -0
  225. dioptra/task_engine/run_experiment.py +164 -0
  226. dioptra/task_engine/task_engine.py +507 -0
  227. dioptra/task_engine/type_registry.py +443 -0
  228. dioptra/task_engine/type_validation.py +901 -0
  229. dioptra/task_engine/types.py +598 -0
  230. dioptra/task_engine/util.py +319 -0
  231. dioptra/task_engine/validate.py +83 -0
  232. dioptra/task_engine/validation.py +1124 -0
  233. dioptra/worker/__init__.py +16 -0
  234. dioptra/worker/dioptra_worker_v1.py +72 -0
  235. dioptra/worker/s3_download.py +111 -0
  236. dioptra/worker/s3_download_cli.py +136 -0
  237. dioptra_platform-1.0.0.dist-info/METADATA +202 -0
  238. dioptra_platform-1.0.0.dist-info/RECORD +242 -0
  239. dioptra_platform-1.0.0.dist-info/WHEEL +5 -0
  240. dioptra_platform-1.0.0.dist-info/entry_points.txt +12 -0
  241. dioptra_platform-1.0.0.dist-info/licenses/LICENSE +415 -0
  242. dioptra_platform-1.0.0.dist-info/top_level.txt +1 -0
@@ -0,0 +1,21 @@
1
+ # This Software (Dioptra) is being made available as a public service by the
2
+ # National Institute of Standards and Technology (NIST), an Agency of the United
3
+ # States Department of Commerce. This software was developed in part by employees of
4
+ # NIST and in part by NIST contractors. Copyright in portions of this software that
5
+ # were developed by NIST contractors has been licensed or assigned to NIST. Pursuant
6
+ # to Title 17 United States Code Section 105, works of NIST employees are not
7
+ # subject to copyright protection in the United States. However, NIST may hold
8
+ # international copyright in software created by its employees and domestic
9
+ # copyright (or licensing rights) in portions of software that were assigned or
10
+ # licensed to NIST. To the extent that NIST holds copyright in this software, it is
11
+ # being made available under the Creative Commons Attribution 4.0 International
12
+ # license (CC BY 4.0). The disclaimers of the CC BY 4.0 license apply to all parts
13
+ # of the software developed or licensed by NIST.
14
+ #
15
+ # ACCESS THE FULL CC BY 4.0 LICENSE HERE:
16
+ # https://creativecommons.org/licenses/by/4.0/legalcode
17
+ from __future__ import annotations
18
+
19
+ from ._client import DioptraClient
20
+
21
+ __all__ = ["DioptraClient"]
@@ -0,0 +1,17 @@
1
+ # This Software (Dioptra) is being made available as a public service by the
2
+ # National Institute of Standards and Technology (NIST), an Agency of the United
3
+ # States Department of Commerce. This software was developed in part by employees of
4
+ # NIST and in part by NIST contractors. Copyright in portions of this software that
5
+ # were developed by NIST contractors has been licensed or assigned to NIST. Pursuant
6
+ # to Title 17 United States Code Section 105, works of NIST employees are not
7
+ # subject to copyright protection in the United States. However, NIST may hold
8
+ # international copyright in software created by its employees and domestic
9
+ # copyright (or licensing rights) in portions of software that were assigned or
10
+ # licensed to NIST. To the extent that NIST holds copyright in this software, it is
11
+ # being made available under the Creative Commons Attribution 4.0 International
12
+ # license (CC BY 4.0). The disclaimers of the CC BY 4.0 license apply to all parts
13
+ # of the software developed or licensed by NIST.
14
+ #
15
+ # ACCESS THE FULL CC BY 4.0 LICENSE HERE:
16
+ # https://creativecommons.org/licenses/by/4.0/legalcode
17
+ __version__ = "1.0.0"