lightly-studio 0.3.1__py3-none-any.whl → 0.3.3__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of lightly-studio might be problematic. Click here for more details.

Files changed (169) hide show
  1. lightly_studio/__init__.py +4 -4
  2. lightly_studio/api/app.py +7 -5
  3. lightly_studio/api/db_tables.py +0 -3
  4. lightly_studio/api/routes/api/annotation.py +32 -16
  5. lightly_studio/api/routes/api/annotation_label.py +2 -5
  6. lightly_studio/api/routes/api/annotations/__init__.py +7 -0
  7. lightly_studio/api/routes/api/annotations/create_annotation.py +52 -0
  8. lightly_studio/api/routes/api/classifier.py +2 -5
  9. lightly_studio/api/routes/api/dataset.py +5 -8
  10. lightly_studio/api/routes/api/dataset_tag.py +2 -3
  11. lightly_studio/api/routes/api/embeddings2d.py +104 -0
  12. lightly_studio/api/routes/api/export.py +73 -0
  13. lightly_studio/api/routes/api/metadata.py +2 -4
  14. lightly_studio/api/routes/api/sample.py +5 -13
  15. lightly_studio/api/routes/api/selection.py +87 -0
  16. lightly_studio/api/routes/api/settings.py +2 -6
  17. lightly_studio/api/routes/images.py +6 -6
  18. lightly_studio/core/add_samples.py +374 -0
  19. lightly_studio/core/dataset.py +272 -400
  20. lightly_studio/core/dataset_query/boolean_expression.py +67 -0
  21. lightly_studio/core/dataset_query/dataset_query.py +216 -0
  22. lightly_studio/core/dataset_query/field.py +113 -0
  23. lightly_studio/core/dataset_query/field_expression.py +79 -0
  24. lightly_studio/core/dataset_query/match_expression.py +23 -0
  25. lightly_studio/core/dataset_query/order_by.py +79 -0
  26. lightly_studio/core/dataset_query/sample_field.py +28 -0
  27. lightly_studio/core/dataset_query/tags_expression.py +46 -0
  28. lightly_studio/core/sample.py +159 -32
  29. lightly_studio/core/start_gui.py +35 -0
  30. lightly_studio/dataset/edge_embedding_generator.py +13 -8
  31. lightly_studio/dataset/embedding_generator.py +2 -3
  32. lightly_studio/dataset/embedding_manager.py +74 -6
  33. lightly_studio/dataset/env.py +4 -0
  34. lightly_studio/dataset/file_utils.py +13 -2
  35. lightly_studio/dataset/fsspec_lister.py +275 -0
  36. lightly_studio/dataset/loader.py +49 -84
  37. lightly_studio/dataset/mobileclip_embedding_generator.py +9 -6
  38. lightly_studio/db_manager.py +145 -0
  39. lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/0.CA_CXIBb.css +1 -0
  40. lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/_layout.DS78jgNY.css +1 -0
  41. lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/index.BVs_sZj9.css +1 -0
  42. lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/transform.D487hwJk.css +1 -0
  43. lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/6t3IJ0vQ.js +1 -0
  44. lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/{D6su9Aln.js → 8NsknIT2.js} +1 -1
  45. lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/{x9G_hzyY.js → BND_-4Kp.js} +1 -1
  46. lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/{BylOuP6i.js → BdfTHw61.js} +1 -1
  47. lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/{DOlTMNyt.js → BfHVnyNT.js} +1 -1
  48. lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/BjkP1AHA.js +1 -0
  49. lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/BuuNVL9G.js +1 -0
  50. lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/{O-EABkf9.js → BzKGpnl4.js} +1 -1
  51. lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/CCx7Ho51.js +1 -0
  52. lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/{l7KrR96u.js → CH6P3X75.js} +1 -1
  53. lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/{D5-A_Ffd.js → CR2upx_Q.js} +2 -2
  54. lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/CWPZrTTJ.js +1 -0
  55. lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/{C8I8rFJQ.js → Cs1XmhiF.js} +1 -1
  56. lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/{CDnpyLsT.js → CwPowJfP.js} +1 -1
  57. lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/CxFKfZ9T.js +1 -0
  58. lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/Cxevwdid.js +1 -0
  59. lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/{DjfY96ND.js → D4whDBUi.js} +1 -1
  60. lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/D6r9vr07.js +1 -0
  61. lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/DA6bFLPR.js +1 -0
  62. lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/DEgUu98i.js +3 -0
  63. lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/DGTPl6Gk.js +1 -0
  64. lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/DKGxBSlK.js +1 -0
  65. lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/DQXoLcsF.js +1 -0
  66. lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/DQe_kdRt.js +92 -0
  67. lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/DcY4jgG3.js +1 -0
  68. lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/{Bu7uvVrG.js → RmD8FzRo.js} +1 -1
  69. lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/V-MnMC1X.js +1 -0
  70. lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/{Bsi3UGy5.js → keKYsoph.js} +1 -1
  71. lightly_studio/dist_lightly_studio_view_app/_app/immutable/entry/app.BVr6DYqP.js +2 -0
  72. lightly_studio/dist_lightly_studio_view_app/_app/immutable/entry/start.u7zsVvqp.js +1 -0
  73. lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/0.Da2agmdd.js +1 -0
  74. lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/{1.B4rNYwVp.js → 1.B11tVRJV.js} +1 -1
  75. lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/10.l30Zud4h.js +1 -0
  76. lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/12.CgKPGcAP.js +1 -0
  77. lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/2.C8HLK8mj.js +857 -0
  78. lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/{3.CWHpKonm.js → 3.CLvg3QcJ.js} +1 -1
  79. lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/{4.OUWOLQeV.js → 4.BQhDtXUI.js} +1 -1
  80. lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/5.-6XqWX5G.js +1 -0
  81. lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/6.uBV1Lhat.js +1 -0
  82. lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/7.BXsgoQZh.js +1 -0
  83. lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/8.BkbcnUs8.js +1 -0
  84. lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/{9.CPu3CiBc.js → 9.Bkrv-Vww.js} +1 -1
  85. lightly_studio/dist_lightly_studio_view_app/_app/immutable/workers/clustering.worker-DKqeLtG0.js +2 -0
  86. lightly_studio/dist_lightly_studio_view_app/_app/immutable/workers/search.worker-vNSty3B0.js +1 -0
  87. lightly_studio/dist_lightly_studio_view_app/_app/version.json +1 -1
  88. lightly_studio/dist_lightly_studio_view_app/index.html +14 -14
  89. lightly_studio/examples/example.py +13 -12
  90. lightly_studio/examples/example_coco.py +13 -0
  91. lightly_studio/examples/example_metadata.py +83 -98
  92. lightly_studio/examples/example_selection.py +7 -19
  93. lightly_studio/examples/example_split_work.py +12 -36
  94. lightly_studio/examples/{example_v2.py → example_yolo.py} +3 -4
  95. lightly_studio/export/export_dataset.py +65 -0
  96. lightly_studio/export/lightly_studio_label_input.py +120 -0
  97. lightly_studio/few_shot_classifier/classifier_manager.py +5 -26
  98. lightly_studio/metadata/compute_typicality.py +67 -0
  99. lightly_studio/models/annotation/annotation_base.py +18 -20
  100. lightly_studio/models/annotation/instance_segmentation.py +8 -8
  101. lightly_studio/models/annotation/object_detection.py +4 -4
  102. lightly_studio/models/dataset.py +6 -2
  103. lightly_studio/models/sample.py +10 -3
  104. lightly_studio/resolvers/annotation_label_resolver/__init__.py +2 -1
  105. lightly_studio/resolvers/annotation_label_resolver/get_all.py +15 -0
  106. lightly_studio/resolvers/annotation_resolver/__init__.py +2 -3
  107. lightly_studio/resolvers/annotation_resolver/create_many.py +3 -3
  108. lightly_studio/resolvers/annotation_resolver/delete_annotation.py +1 -1
  109. lightly_studio/resolvers/annotation_resolver/delete_annotations.py +7 -3
  110. lightly_studio/resolvers/annotation_resolver/get_by_id.py +19 -1
  111. lightly_studio/resolvers/annotation_resolver/update_annotation_label.py +0 -1
  112. lightly_studio/resolvers/annotations/annotations_filter.py +1 -11
  113. lightly_studio/resolvers/dataset_resolver.py +10 -0
  114. lightly_studio/resolvers/embedding_model_resolver.py +22 -0
  115. lightly_studio/resolvers/sample_resolver.py +53 -9
  116. lightly_studio/resolvers/tag_resolver.py +23 -0
  117. lightly_studio/selection/mundig.py +7 -10
  118. lightly_studio/selection/select.py +55 -46
  119. lightly_studio/selection/select_via_db.py +23 -19
  120. lightly_studio/selection/selection_config.py +10 -4
  121. lightly_studio/services/annotations_service/__init__.py +12 -0
  122. lightly_studio/services/annotations_service/create_annotation.py +63 -0
  123. lightly_studio/services/annotations_service/delete_annotation.py +22 -0
  124. lightly_studio/services/annotations_service/update_annotation.py +21 -32
  125. lightly_studio/services/annotations_service/update_annotation_bounding_box.py +36 -0
  126. lightly_studio-0.3.3.dist-info/METADATA +814 -0
  127. {lightly_studio-0.3.1.dist-info → lightly_studio-0.3.3.dist-info}/RECORD +130 -113
  128. lightly_studio/api/db.py +0 -133
  129. lightly_studio/api/routes/api/annotation_task.py +0 -38
  130. lightly_studio/api/routes/api/metrics.py +0 -80
  131. lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/0.DenzbfeK.css +0 -1
  132. lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/SelectableSvgGroup.OwPEPQZu.css +0 -1
  133. lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/SelectableSvgGroup.b653GmVf.css +0 -1
  134. lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/_layout.T-zjSUd3.css +0 -1
  135. lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/B2FVR0s0.js +0 -1
  136. lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/B9zumHo5.js +0 -1
  137. lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/BJXwVxaE.js +0 -1
  138. lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/Bx1xMsFy.js +0 -1
  139. lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/CcaPhhk3.js +0 -1
  140. lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/CvOmgdoc.js +0 -93
  141. lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/CxtLVaYz.js +0 -3
  142. lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/D6RI2Zrd.js +0 -1
  143. lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/D98V7j6A.js +0 -1
  144. lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/DIRAtgl0.js +0 -1
  145. lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/DjUWrjOv.js +0 -1
  146. lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/XO7A28GO.js +0 -1
  147. lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/hQVEETDE.js +0 -1
  148. lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/nAHhluT7.js +0 -1
  149. lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/r64xT6ao.js +0 -1
  150. lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/vC4nQVEB.js +0 -1
  151. lightly_studio/dist_lightly_studio_view_app/_app/immutable/entry/app.CjnvpsmS.js +0 -2
  152. lightly_studio/dist_lightly_studio_view_app/_app/immutable/entry/start.0o1H7wM9.js +0 -1
  153. lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/0.XRq_TUwu.js +0 -1
  154. lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/10.DfBwOEhN.js +0 -1
  155. lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/12.CwF2_8mP.js +0 -1
  156. lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/2.CS4muRY-.js +0 -6
  157. lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/5.Dm6t9F5W.js +0 -1
  158. lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/6.Bw5ck4gK.js +0 -1
  159. lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/7.CF0EDTR6.js +0 -1
  160. lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/8.Cw30LEcV.js +0 -1
  161. lightly_studio/metrics/detection/__init__.py +0 -0
  162. lightly_studio/metrics/detection/map.py +0 -268
  163. lightly_studio/models/annotation_task.py +0 -28
  164. lightly_studio/resolvers/annotation_resolver/create.py +0 -19
  165. lightly_studio/resolvers/annotation_task_resolver.py +0 -31
  166. lightly_studio-0.3.1.dist-info/METADATA +0 -520
  167. /lightly_studio/{metrics → core/dataset_query}/__init__.py +0 -0
  168. /lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/{OpenSans- → OpenSans-Medium.DVUZMR_6.ttf} +0 -0
  169. {lightly_studio-0.3.1.dist-info → lightly_studio-0.3.3.dist-info}/WHEEL +0 -0
@@ -1,174 +1,188 @@
1
- lightly_studio/__init__.py,sha256=2OpH2l_u23Js-Im0loaipG2P_zkiQ7R4unIe0CmjSZ0,481
1
+ lightly_studio/__init__.py,sha256=l04o5TZrSbEMkradiGnAG8KHsm8cBX1kwlsjgiSumQg,574
2
+ lightly_studio/db_manager.py,sha256=BTjYzPThvcjRASpy7CJUr0zyxVEPkq43XSCH3BE-zmU,4891
2
3
  lightly_studio/export_schema.py,sha256=tjJnekCJFacaK6Hraabfbat0hUknwRW7DqO1lddXcA0,484
3
4
  lightly_studio/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
4
5
  lightly_studio/setup_logging.py,sha256=o4xDUKJ-YkATLvKOqgwSzHaOjGXzN_-1HkiG5hbHXB8,672
5
6
  lightly_studio/type_definitions.py,sha256=W2L-SQBD8OtgUc0kbvRbltSqSrIGE1BZzYg_POPOQ0Y,562
6
7
  lightly_studio/api/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
7
- lightly_studio/api/app.py,sha256=L-mb_VeY1MBH1vStIUVESB4g8Gm_dUwV9sSGh-RggQs,2940
8
+ lightly_studio/api/app.py,sha256=FJjNgVzkwMtSoFAPHxI9QF_cjR8UyOJjo3v_MbCCEG4,3006
8
9
  lightly_studio/api/cache.py,sha256=eJF4VYBFhx_p5rItfIIe18SDqUJVkKIDROXv61Tv1Zo,2478
9
- lightly_studio/api/db.py,sha256=LQZZLqB9i9rDjbRcw_GWKcb43m0rqoizxahC4yxlxzc,4311
10
- lightly_studio/api/db_tables.py,sha256=Bn4K6lLhECUVu9tCjLFYxV1Yt8F_qAZblAaBzPn9BRs,1339
10
+ lightly_studio/api/db_tables.py,sha256=mL92m47wgxdXAGvfXt4oAOy9R_Q3Vxe_7rPU_NmoMEo,1206
11
11
  lightly_studio/api/features.py,sha256=4iwYUj8KMvpC3nvA2bbJQnABacgFC9MfD0jX9hHeYm0,242
12
12
  lightly_studio/api/server.py,sha256=dsHBdgPkD3z43GCP4VEoXmC77Pir12Woap4qc7LN52Y,2513
13
13
  lightly_studio/api/routes/healthz.py,sha256=4wfMBPqpwYsFenUo006aVA1aIcZg4fg9biM93D0HMlk,356
14
- lightly_studio/api/routes/images.py,sha256=8QFnT2xCJTq8t06Tiym1LcfKlGxsALzMKU3I9cWlyic,2913
14
+ lightly_studio/api/routes/images.py,sha256=J8HSgdmVSMzW9cKmx2Qx2fciFluAU9c6W7nQwg_J-p0,2883
15
15
  lightly_studio/api/routes/webapp.py,sha256=7l0-OlShofB0FMZu7X0Kgafp76_S38Exy-hOLsJXdZs,1691
16
- lightly_studio/api/routes/api/annotation.py,sha256=MbiEO8pKHkIfq00VuTI9l9URQg73N5HtM4Wo7AHHZp0,7841
17
- lightly_studio/api/routes/api/annotation_label.py,sha256=TrCppy3Pt4nEObrlrMT5AJ0bzJB10gybo_SqrlbWaPA,2807
18
- lightly_studio/api/routes/api/annotation_task.py,sha256=SI08Zf9o5M3AWgYf1MqDX2F35k2oKkdbdfkkXQRr-LU,1284
19
- lightly_studio/api/routes/api/classifier.py,sha256=DHs7BjrRA3vxxoeMSXLw8HY5ZomE4fE-xDSOramyX_Y,11006
20
- lightly_studio/api/routes/api/dataset.py,sha256=mqvONNcuDPtd-PuQvEjafeeyIm7rt2hx2HswGKj692Y,5341
21
- lightly_studio/api/routes/api/dataset_tag.py,sha256=_1c6H_JMTBm0sRO2wnO_nWk_ed-6slRIDWNxU3eTSfw,7667
16
+ lightly_studio/api/routes/api/annotation.py,sha256=XT_fOraJoO6bmRAsI_H-5CBwMlyGvjGRSXLaTFq4Q1w,8611
17
+ lightly_studio/api/routes/api/annotation_label.py,sha256=YZHcgGwzDUo8TTVfWw_hIxRW9Now7sL8gv7-iKaNsCA,2678
18
+ lightly_studio/api/routes/api/classifier.py,sha256=ZBT8LVolL27SAjZjx2YCEGTGervDQeKWWQh4Fa3DKsI,10877
19
+ lightly_studio/api/routes/api/dataset.py,sha256=BIPd5OIhfODj6YIVJ1jhhTGKclJVvcdWlfczSZi0pJE,5357
20
+ lightly_studio/api/routes/api/dataset_tag.py,sha256=5SwrguT5Ds4AkIlCLFPpbLYvkS_vVeB9j7VNDfh251c,7607
21
+ lightly_studio/api/routes/api/embeddings2d.py,sha256=PL7EisBw1-aHOZbuF1ThczLCpBjf7es1DupuYmQLOYw,4257
22
22
  lightly_studio/api/routes/api/exceptions.py,sha256=89QD_JVXSCtHUSyTAK_5ganPu7J943KHTXcIkqSU9UY,3331
23
+ lightly_studio/api/routes/api/export.py,sha256=TIF8_JJCTHkob0Ugx_pkJoGqaHIMgA_SgcZ65N9Axx0,2411
23
24
  lightly_studio/api/routes/api/features.py,sha256=X3o_iCSLK6f32ctwVQQAKQolUYRA_9SyM7QPKNtPoD8,477
24
- lightly_studio/api/routes/api/metadata.py,sha256=ndhAF4Xee3mmLBVG48fesc_Yc-OB83uKFKzxjz7n8xg,1226
25
- lightly_studio/api/routes/api/metrics.py,sha256=P1chs-_4kG5PfwU7jB7zWxG7gBcCggfJwWe6Gw61-xo,2704
26
- lightly_studio/api/routes/api/sample.py,sha256=NIX9kMnATeFx-m7urt9VLij0oKnMigsDob0AXFLkKQQ,6782
27
- lightly_studio/api/routes/api/settings.py,sha256=99RUa0qNX89cHbQLdNDjx_By84bpjPZd7L7CJcdZGS0,1084
25
+ lightly_studio/api/routes/api/metadata.py,sha256=mHSXdRny9dn3f1oamaOxyZSbI2Zh0tGIqoExJOagq6Y,1137
26
+ lightly_studio/api/routes/api/sample.py,sha256=k3-Wm2VBva3PxOIc3ZTbn64m3nMgPrJU-Zun56NNVjw,6523
27
+ lightly_studio/api/routes/api/selection.py,sha256=_T5ZzZmPPlqIzBCsmLcJEafEWtkLatYspdgLtpTJTX0,3031
28
+ lightly_studio/api/routes/api/settings.py,sha256=x-Mr_m02diehh4MBq_F6M5DEFXD6MvgRD-06Bef985g,954
28
29
  lightly_studio/api/routes/api/status.py,sha256=PCXra08H8UCepaSc7PxQ7ySNwyC7U-Gsr818bVfawv4,528
29
30
  lightly_studio/api/routes/api/text_embedding.py,sha256=ypKHPVg8NpJu40j2yAypzF14eKxrJBQZc9tFQC92ZrY,1456
30
31
  lightly_studio/api/routes/api/validators.py,sha256=2I70qb9bXnnhVk-hMYXbGBJDGSws0bqWICb77PaxD6k,539
32
+ lightly_studio/api/routes/api/annotations/__init__.py,sha256=O06o1vsFZAHMO9DnrtAsCcFARAEh2dj3IR6aaeMN4bM,112
33
+ lightly_studio/api/routes/api/annotations/create_annotation.py,sha256=njncfS7ui95w3Vg3HF1FpmyDUPlsnG-Vm1ZGYPaRgoM,1510
31
34
  lightly_studio/core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
32
- lightly_studio/core/dataset.py,sha256=Is2fye0TfcKyHQyuvNbwcnXCW37rmShCv3EtXAjw0rE,18220
33
- lightly_studio/core/sample.py,sha256=mSTPI6G0bK7XiAfXZpdHbXQ7OYcPZWCzRHMMfJ9ioAs,2748
34
- lightly_studio/core/start_gui.py,sha256=-fr78x96f4dRd60iNAVPnwC6g51Rh_RZAAkCPofgUZk,402
35
+ lightly_studio/core/add_samples.py,sha256=AZWrJDwC0kprzkkhb3As4pfpppblRpgZvKjEuwCjmxo,13849
36
+ lightly_studio/core/dataset.py,sha256=wtYrxOTOkDh0xWqMBTbRhLhWK0gEUh7DDD0lY-PzAyY,13727
37
+ lightly_studio/core/sample.py,sha256=I0ev9Ak1TXrzzWwUBOPokvv4zbzq_1dkR_ZsnURXob0,6503
38
+ lightly_studio/core/start_gui.py,sha256=ZwO76xMTfHp8ztYzBuRHnNcRAWZoN5KMDQkJ4NayR8w,1605
39
+ lightly_studio/core/dataset_query/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
40
+ lightly_studio/core/dataset_query/boolean_expression.py,sha256=pDRYTcNoaUcPrVjbxz5vut_TMa5kK7vP73DPfof-gxc,2041
41
+ lightly_studio/core/dataset_query/dataset_query.py,sha256=s34gBmZVfxf7nv1Sfcde9ScPutfF1rgchHGPmZ4SRBM,7999
42
+ lightly_studio/core/dataset_query/field.py,sha256=aKTeiVWcFyc22VO8v79j01CkcfdaLHIl70pn7aTa3Cg,3825
43
+ lightly_studio/core/dataset_query/field_expression.py,sha256=tfu0nwHwbUc1W4kcsDuurR60aJLLVWFwZh1zP3OqhM8,2502
44
+ lightly_studio/core/dataset_query/match_expression.py,sha256=hAsYjxcwon-3iU3pdI0gUa3XRbmxnHT1xwSI18zCdC4,651
45
+ lightly_studio/core/dataset_query/order_by.py,sha256=DJFOyMF3ZYpowi8kZZ4wjjLGboS0qcTVF7AlzXE8PO0,2278
46
+ lightly_studio/core/dataset_query/sample_field.py,sha256=iaswBMsIQMuiVQu0Sus0-HW2w7ybbvUbEfWjcaXJs8w,917
47
+ lightly_studio/core/dataset_query/tags_expression.py,sha256=ZOKbhiDM9CmPfyJipzz3HzQ1AC_mz6VGxXKNPL-vjY8,1369
35
48
  lightly_studio/dataset/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
36
- lightly_studio/dataset/edge_embedding_generator.py,sha256=eXrJwlwv2Bcz5Lpfjhk1UcNQ3nm1bxBc45LYHAtVGtI,4318
37
- lightly_studio/dataset/embedding_generator.py,sha256=2NYatNKqx-kuJB_6wkfviVlERdbaOpSEdh9q5-BEV8A,2862
38
- lightly_studio/dataset/embedding_manager.py,sha256=d2I6B3AsQ2NbqdVpGzMvWd44XjxVPrw9RjGljp--nbQ,5541
39
- lightly_studio/dataset/env.py,sha256=ydzkLXmVMWQHuG040sYRhwFOyBpG2phYLVB4zLWWB34,688
40
- lightly_studio/dataset/file_utils.py,sha256=ig3xKMz0AAEsZsLeB6xMtWm4D58MGiNh4neVXLmdjBI,878
41
- lightly_studio/dataset/loader.py,sha256=IeUPzlHgiGh-eKlMOVCSbdm08lF-6tf99tUdFgalo8I,21952
42
- lightly_studio/dataset/mobileclip_embedding_generator.py,sha256=qr5fD-1DBE_-_8HcazJGYYLpQKRucJ00KMhF_O3xG0Y,4917
49
+ lightly_studio/dataset/edge_embedding_generator.py,sha256=obLsDHxOId9QM-MAaZqDOujJArfjp-eJMgeucWBUjos,4552
50
+ lightly_studio/dataset/embedding_generator.py,sha256=OClb60y4thJiVU-rU4JWKQwp-1s2bw9nJJm2yqxyGzo,2835
51
+ lightly_studio/dataset/embedding_manager.py,sha256=QBN6ev_PhaP0wFqTfjOkYbV6zqxkwolK_6IF-AbjCLY,8147
52
+ lightly_studio/dataset/env.py,sha256=YghE9ehKG03gol_QcUuj2J6d9A8V4fASxXVZQ93Rv-o,814
53
+ lightly_studio/dataset/file_utils.py,sha256=_hd9NSs21Ib1-MuBOKNz1Cu6psUdFIXWHRscNQ-Ch8g,1245
54
+ lightly_studio/dataset/fsspec_lister.py,sha256=WezfO5KiiFoiCSBh3aocrPSbDZBauOxWuh0qaEkOb5g,8779
55
+ lightly_studio/dataset/loader.py,sha256=7ZsAfpw3bgXpkqY9PZiBsrPPwHu_dBGRonYWPNL1i9M,20369
56
+ lightly_studio/dataset/mobileclip_embedding_generator.py,sha256=9WUfxroBNguOSESJgj3vzlF3oHFRr-II-xdr__jpo6I,5030
43
57
  lightly_studio/dist_lightly_studio_view_app/apple-touch-icon-precomposed.png,sha256=UUbtebSGy54c3N14FM0irnjnDOsw-ga0zZoWzxIbyeY,1571
44
58
  lightly_studio/dist_lightly_studio_view_app/apple-touch-icon.png,sha256=UUbtebSGy54c3N14FM0irnjnDOsw-ga0zZoWzxIbyeY,1571
45
59
  lightly_studio/dist_lightly_studio_view_app/favicon.png,sha256=UUbtebSGy54c3N14FM0irnjnDOsw-ga0zZoWzxIbyeY,1571
46
- lightly_studio/dist_lightly_studio_view_app/index.html,sha256=PkdJoQi6IDJEsPAP9wsITMwwhEokDuLxAftsm04_OMo,1841
60
+ lightly_studio/dist_lightly_studio_view_app/index.html,sha256=EEl64CluZaRq9Q3O2-3to6Awo4cno8qZyl1xsm4xmhA,1842
47
61
  lightly_studio/dist_lightly_studio_view_app/_app/env.js,sha256=hLh9EQqXP13H3XQjod8C7qhob7-CvlByIRZBZ0M37fw,85
48
- lightly_studio/dist_lightly_studio_view_app/_app/version.json,sha256=c-AG-EN254nv8tRgMB1pKxdED-CrDL97qZCxJVp1uXU,27
49
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/0.DenzbfeK.css,sha256=36gMSOcyD4sjN43L3cxgpLlBSGkM8W2YWQ0OJxrEHOI,52772
62
+ lightly_studio/dist_lightly_studio_view_app/_app/version.json,sha256=-GAWkK6G5EyxxfLofT7vgys4JF6s_2rvVdUFF3Z72KI,27
63
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/0.CA_CXIBb.css,sha256=s7X_rUfkFRQ3K_gItpXQ3OAuazP0EaCpRbwBkHMDxvs,52848
50
64
  lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/LightlyLogo.BNjCIww-.png,sha256=Hu4gPw9s4pxEOk85ro5VjB4GKLoiMrQCT2LB4cFtpg8,17123
51
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/OpenSans-,sha256=KrFWKUJKzobUKdvA5ae-sw0q89uZiisDpxYB7mllwzQ,130976
52
65
  lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/OpenSans-Bold.DGvYQtcs.ttf,sha256=vHPEXlgQoJcevq7062w13shGB9vgLaZ1f59D2Vi22l8,130860
53
66
  lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/OpenSans-Italic-VariableFont_wdth_wght.B4AZ-wl6.ttf,sha256=QSoWv9h46CRX_fdlqFM3O2d3-PF3R1srnb4zUezcLm0,580280
67
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/OpenSans-Medium.DVUZMR_6.ttf,sha256=KrFWKUJKzobUKdvA5ae-sw0q89uZiisDpxYB7mllwzQ,130976
54
68
  lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/OpenSans-Regular.DxJTClRG.ttf,sha256=ZTBIAnfaYu_eBH6ybnin5TLRz67skWA-aNY4drlmnw0,130832
55
69
  lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/OpenSans-SemiBold.D3TTYgdB.ttf,sha256=5gMTXMOxIAxyYLNPN_nLHyF4pCs2MDfiah4YJ2q3i_A,130760
56
70
  lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/OpenSans-VariableFont_wdth_wght.BZBpG5Iz.ttf,sha256=E3RLvAefD0kuT7OxShXSQrjZYA-qzUI9WM35N_6nzms,529700
57
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/SelectableSvgGroup.OwPEPQZu.css,sha256=scC9zx612Rtws6OcLTpty-4uVKeLvkQ1WhptR2Z5Hn4,7131
58
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/SelectableSvgGroup.b653GmVf.css,sha256=ISqOQVvuzmyYMVDG_0gP41weayv2O4sODUv2RPiyMgc,7419
59
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/_layout.T-zjSUd3.css,sha256=TYHxEVhjpzQwCzuIM9ZQBoNPwK1g1LGFJhjHOvs5xiE,52832
71
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/_layout.DS78jgNY.css,sha256=pGUv2QFSkUYsqYxYrT2mO0hfcx21i3lCwLcdE53iKmw,52908
72
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/index.BVs_sZj9.css,sha256=_ZGvkmGUgJ3w_Z3JSnYpb7w5AUQyOp_s-O9BvMS6Qyo,817
73
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/transform.D487hwJk.css,sha256=OzRdBEVH_a7tQYGhXCeAbJlXPhK30vbghmUeptKdXHA,1105
60
74
  lightly_studio/dist_lightly_studio_view_app/_app/immutable/assets/useFeatureFlags.CV-KWLNP.css,sha256=d3gUJK0pHvJ1f6ZiL2mJ4AmvKUONRGPDbQU_UdWZbs8,289
61
75
  lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/69_IOA4Y.js,sha256=ZeRHEle237-CUEan-VArVExxfKi9XafXM591ylj_ecs,34
62
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/B2FVR0s0.js,sha256=ioPk42jcnHKe29m1u1UTcEvD0MCFv4Sxfzq5dXBFuMQ,3372
76
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/6t3IJ0vQ.js,sha256=CFs9mkJX0xxLC7P5biNLxxTE2TiugOC2AL6HSrY2S48,2692
77
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/8NsknIT2.js,sha256=NmVf0S6Mbt-v5j0FPnUaN9l7GH8ZrPmx0e23tXycvR4,976
63
78
  lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/B90CZVMX.js,sha256=NSrXzdg71WFiRRhYQIfnoZLpblfPyXvuXXCWIJ1-FQ4,110
64
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/B9zumHo5.js,sha256=1qQuK1dufr-Xg_lHNh55Wc9keyC6M2YQla4KfMwVuyI,207
65
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/BJXwVxaE.js,sha256=AVJfgSrKSjBJlqwBYl9XhvAd0VGQ0fGl5bXYk77YlwU,7062
66
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/Bsi3UGy5.js,sha256=-Nq3fKNsoLjcB-UrI4_GSk7ssyl5I2L7rC7TvTfkljQ,313
67
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/Bu7uvVrG.js,sha256=02SNr2teX90h_p8pSPNFgFTxkULruJnjL7gPX_zJU2g,1222
68
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/Bx1xMsFy.js,sha256=JEeho56slYAxBs2zxYnTphoCnP6wwTfMwqqJWAHhYyg,33047
69
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/BylOuP6i.js,sha256=0NaB8RCqmFzK7Yhd4GW_3-cVvciAerqx_B_UdO9oMVw,1515
70
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/C8I8rFJQ.js,sha256=o18LZh0B5fc-AOAaeNNrqprFtlRd-7H56al-aNQZAZM,227
71
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/CDnpyLsT.js,sha256=i__MTemn0QP9-fHceg9uW1CRMbEcZQRMxldSNjsc42s,1003
79
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/BND_-4Kp.js,sha256=slZYVrGVv9f0MqXJ9UctZtXza6Bu9q02ojOhcjf1UWM,1008
80
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/BdfTHw61.js,sha256=vSFwk1r7ZRZznPAxnGOF1PEYVNXQCaqMCvXf654jBTI,1515
81
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/BfHVnyNT.js,sha256=efV80h-F03Hs3BzYo75CiuBm7WsCqDQw-_YemsExDxw,7293
82
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/BjkP1AHA.js,sha256=AnR2kBwnEoqEhBGe1RI5Oyb4Oul8KYGsiKYSg2R9pDo,1738
83
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/BuuNVL9G.js,sha256=WCg_Gbn-6H3t7L61qpARQY5S-v01QVXQczjDAGyZogA,464
84
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/BzKGpnl4.js,sha256=BL171ABDCFCXjBZQAgRYAkLmvMyCYGAh3W0nfMB0LcI,517
85
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/CCx7Ho51.js,sha256=qXPYI9ypUBvPh9yW2lA5dyuIG40oa1WssS9l8xB3LxQ,7148
86
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/CH6P3X75.js,sha256=etm79hGbhL9S2-S28Xmlz5kkSQ4K5s5qIl9vxo87yH8,15074
87
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/CR2upx_Q.js,sha256=KFtlxbEch8yU1ZvSSDtEzYkWglXPfGkwiwvSwhMlgyk,3142
88
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/CWPZrTTJ.js,sha256=a79iCBDN-9sue0QuMHqLscWpgElxB7qqMcWAIyrXO-M,25151
72
89
  lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/CWj6FrbW.js,sha256=U8gujwcJTusJSlmztmyz71B67fviyXJdA4sx4tz-wvY,106
73
90
  lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/CYgJF_JY.js,sha256=wIbvC8qcEbFh6Wuxi6tST_Zensm43mTMXLYV4HCoGjI,336
74
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/CcaPhhk3.js,sha256=b5GSPYwnnQEjsjWJT0DojQdyqNZst8xt79wI2QfaEfo,6358
75
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/CvOmgdoc.js,sha256=1xoAGh7M33oHWzyEmdGdaO2Q7XBDI70k_AH5La1EhSI,453460
76
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/CxtLVaYz.js,sha256=NlN9C6VUUQGepJDH1wfWQQ_ktPMR1XfejbK7D5HPDrM,32787
77
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/D5-A_Ffd.js,sha256=7E013mLA0JailM2myDE-vnlDM8PSzHQYg0B4H93E9T4,3142
78
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/D6RI2Zrd.js,sha256=YNKM2EBz9803K-b-vpRr-ENV1kDV7y92LMIXLMZrWXk,2968
79
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/D6su9Aln.js,sha256=q6pGdiyPx01YmYkXHTqERlrK0EwDNJ0vsppaot61QUU,976
80
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/D98V7j6A.js,sha256=TjvOam69fQCGmXhJ--aWY_T6G1teFM1cbWuRBuj4zvU,5977
81
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/DIRAtgl0.js,sha256=m0Spx6YDMJqlAxYSuDG4eifd-sBkVJSj2g70bRt2KHc,882
91
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/Cs1XmhiF.js,sha256=jgic9KIgeLZNt_e8KVUPAlgjvp3-Quyg0SuY7ksn0xs,227
92
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/CwPowJfP.js,sha256=mDL1C0aWAoHScPjg26G84KY5jPLtgqCe-aDEPdyRypU,1003
93
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/CxFKfZ9T.js,sha256=zzqh08K86PPLWTDxeLVjCNQvdkYNa3-0vTyIxMWahRA,9576
94
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/Cxevwdid.js,sha256=2d8rhstdrSL9Ax3zKFOmCAsivb5G_BZoKoRBVBvpkNM,207
95
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/D4whDBUi.js,sha256=TOsI31NdfkQG0lv3sButnmAG8fBBoQq3YBJvcs7h-0I,2247
96
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/D6r9vr07.js,sha256=L7wdRzXy5qL4NexjzpqHpBzLvO7nnf725hgYItYIj6E,12998
97
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/DA6bFLPR.js,sha256=bEPXb-mS6t8dkYgZ3XNMQcrvNM5cpWlEZWv8VPvbiOc,1257
98
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/DEgUu98i.js,sha256=4uzByZuiYWAxxDSBtTPBCQ_Y1u1xA4eHFzvS-VPjdO8,32475
99
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/DGTPl6Gk.js,sha256=x3TenwTNG546vlJHWf6GdCDqZRaFv6xiXHuWwTCodOY,2965
82
100
  lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/DIeogL5L.js,sha256=Ux-9DG7TuJMhTle8qli8iEz061qYxmM9ZlDzFdqSTc8,62
83
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/DOlTMNyt.js,sha256=Mk8-gKxftDTgqsvXR7qtromUQyDHdOVxlgJNOUBYR4U,7293
84
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/DjUWrjOv.js,sha256=MF1mX7FkXzKGzAPf3cn1mabhXuwYm0_DjrIEdq8beiA,464
85
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/DjfY96ND.js,sha256=MyzvCGoCAlzr-QDVnDl0ipCRaMGmNTSMAj9YrYRbnVo,2247
101
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/DKGxBSlK.js,sha256=2hJ7xekPc40VP7R5qN2QJFzPM3-x8uRJK4mD2UIqgGI,8915
102
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/DQXoLcsF.js,sha256=15aZUs5wX1F10DUmAi1dtgDlZhHJK5EEFGb8hZ26WfQ,5977
103
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/DQe_kdRt.js,sha256=Hlywun8NHmaoB53WwFMl2YbJtz_mh2YqF48u_bozZAU,447963
104
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/DcY4jgG3.js,sha256=ez79ZbiFlMecDJIDjzczQTSQc8GZaZcrOtXkx_qRjg8,20077
86
105
  lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/H7C68rOM.js,sha256=5mXutIexRaQU7WbR4RL8IA1NvxoZoYHAVXQ68_WsFuU,1023
87
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/O-EABkf9.js,sha256=YPGgOjPsbIPoddzSi_8QrONW9UdxQ32h4CSxn4ZNXlI,517
88
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/XO7A28GO.js,sha256=8v4DBHfx-zVbF2s3IusvLdFlljyELPcX85nWU8b98rk,1257
89
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/hQVEETDE.js,sha256=2yk9BbRI8gEOatcFe1eY-z4crnIMTaHhCdPilTg1hBU,389
90
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/l7KrR96u.js,sha256=wepcQDBaqI3dgAcyICE9GC6abwbmvFNjcUh5mvafAao,15074
91
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/nAHhluT7.js,sha256=_entZRecvcdeEBj2bJmP3TkA1HjUJepilMWVID2twMw,20946
92
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/r64xT6ao.js,sha256=v7f9vXT7Mevs-7VoFOiX6rd5HcVPZ50zcxI2lLIYwzM,712
93
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/vC4nQVEB.js,sha256=4hpYc2mm1TyjoplhTQwnY3RowxpwqqbMcqMrRMlgmdA,2198
94
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/x9G_hzyY.js,sha256=61h-IuPytzypUaeBKE_cEZu_BHDIU9WU0SQZEuqCJAo,1008
95
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/entry/app.CjnvpsmS.js,sha256=str8jSnIsG2cZiI7yRUp8KvNffPxhu3-gmvdvdPj6iY,8898
96
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/entry/start.0o1H7wM9.js,sha256=hqPIlme9XqC0Crp_tD9PD5KZ2F-7npGKrn0b2gwPm2E,83
97
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/0.XRq_TUwu.js,sha256=Vlofz4X3sWP2OBPMdO2lpX0m2eu8841Ff7rNuep2vzU,60426
98
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/1.B4rNYwVp.js,sha256=OV6dRRIJuWXrQPQzDcYbTIBnbHeCxKOdKV36pAhQ19c,544
99
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/10.DfBwOEhN.js,sha256=l7r5ngWTOhp7GA5QGcly5vSX2K5YxlZ369aZEbvuEss,961
106
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/RmD8FzRo.js,sha256=wJeCPOhwrSXj1qoi2lsQfkl0Ybz7barrRWzkYU4svhM,1222
107
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/V-MnMC1X.js,sha256=lRmusbG6a9SRUb1Q_b9DWxRDgGHdv4hfmhiYCFqtFH0,972
108
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/chunks/keKYsoph.js,sha256=v0gmU7Ieu7EKBLVdhG9I9hTHdhRhBOsBRldToQPuUHE,313
109
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/entry/app.BVr6DYqP.js,sha256=ChcYlfz8D-UOyLLXYs0vY6nsqnn2Fwa_s7PDpwRUmGc,8890
110
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/entry/start.u7zsVvqp.js,sha256=KorRGNrGMe3E9hhOGVh76w1xuXsddE88E2b1S2Lw0EU,83
111
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/0.Da2agmdd.js,sha256=pyQHOl8AnXNoFk5jXtdtPMT8-MYmvIhRHm5QFrjNstA,64702
112
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/1.B11tVRJV.js,sha256=58Ek_m_fDeNG0U7mEKbVKMwc5PunWP9rHHpcchdvVX4,544
113
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/10.l30Zud4h.js,sha256=BxTS2qT2hyjK6HcKoncGpXTsoGzlwGZJzQDPqJcsdb8,931
100
114
  lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/11.CWG1ehzT.js,sha256=Z_ycfijsaOCIM9oWR-PD0RPyMfgqfQqKKXMjr3Xmt_g,99
101
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/12.CwF2_8mP.js,sha256=Z8z_-K2jrLgHucvijw6aS2q2VVTW8ST2Bl3uhtCNtJY,4002
102
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/2.CS4muRY-.js,sha256=FNugUMK6Ouvdoz2oiXxsU-6_zrNVIBYeQbEgzmxsajA,39410
103
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/3.CWHpKonm.js,sha256=ezl3R-UbwXlJt_qNOG0RMnPqCEroqDSY8NngXUG0Sfw,468
104
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/4.OUWOLQeV.js,sha256=zV1jpphpIKiSVqRu49iydshECtAkz95vA401cZ1Fq70,595
105
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/5.Dm6t9F5W.js,sha256=h84rO31pMPiHMrvNZ7oTphr7yuAgKE4RG_Rm4v1uaJI,9087
106
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/6.Bw5ck4gK.js,sha256=C8znLOj456nMtalDgUiuBXo-l7Yfxy99puyjdjnilbc,370
107
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/7.CF0EDTR6.js,sha256=bFDLc8Wyws2RLqX9qGL3cFkK669WOOKHlH-okeBsZLU,883
108
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/8.Cw30LEcV.js,sha256=02NJmaVcBPT1hHXpQYjkq6iBXEeKr2gL8LiLjpD9GFQ,13335
109
- lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/9.CPu3CiBc.js,sha256=wA2GbXXX73z4WLeAnPi8MpVAL74x0D5TeAYNh0nsyMM,683
110
- lightly_studio/examples/example.py,sha256=X1ScNkf0v7I0LmHxPpMYodKpYelRyukCw8I2wnDO2HU,552
111
- lightly_studio/examples/example_metadata.py,sha256=xjitfwl57pAWxVpn7OikggsJvi4c4qY53g0h9-EaLgY,12667
112
- lightly_studio/examples/example_selection.py,sha256=wwlanotCVd6HATNULgjiQDhDpSl8EEucrp94pyHlq0k,1007
113
- lightly_studio/examples/example_split_work.py,sha256=y5ZtiK5b4ApztUowKN1TCC-qJfRIEoa6-v7AWh96rXQ,1863
114
- lightly_studio/examples/example_v2.py,sha256=HL2sz881XTdIhyjUPsW892BZzmtGln9HcL_mnWo0zL0,550
115
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/12.CgKPGcAP.js,sha256=_GSLG4iqbNhJ3Fs_8CGTvgQDrjOtKgje1-lxAfrA1s8,2939
116
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/2.C8HLK8mj.js,sha256=UOP8yu3i1tgD7dcu8lde0gpOKKqU1uBdqtdCoJp4fJQ,1328311
117
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/3.CLvg3QcJ.js,sha256=coun98VSLdCA1HRuFlv9TbozRqszYKKBKMG3ff_ndEs,468
118
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/4.BQhDtXUI.js,sha256=eoZz-ma0dU524eRTEq8i73cOjRo3BrqZV4agTGF5vq0,595
119
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/5.-6XqWX5G.js,sha256=4DwSCXKYT-CHsZzY0vd2JEKkFq0QyS6p_U_OMwWEdYA,16441
120
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/6.uBV1Lhat.js,sha256=KQARC9Hqjykk4GjxidmFrNYbd21rWEXxcBwt0wDe45s,555
121
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/7.BXsgoQZh.js,sha256=Ejur9qgQZuaENAEsseYuqGBEGDEmb9ABvBPDZorMsj0,853
122
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/8.BkbcnUs8.js,sha256=3jPJgLv-XERKiTs8A9I8qqcypBFhS82irOU8o7MqRKw,13897
123
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/nodes/9.Bkrv-Vww.js,sha256=UBwue3zIZf9oPYHSS1ouhmrivpA3tuZCMiqIXMGxaiE,683
124
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/workers/clustering.worker-DKqeLtG0.js,sha256=08mMV2xxdfpfu9xPDbULd30WqpVC3GxitrqDieK3Qt0,256061
125
+ lightly_studio/dist_lightly_studio_view_app/_app/immutable/workers/search.worker-vNSty3B0.js,sha256=r7YWmAkJU793Lre4Mb7Vb3gvqQYwYYao_icJLrQFFbA,50997
126
+ lightly_studio/examples/example.py,sha256=lxw-Zc72ikoxIEJo7SFV5V5vzwKCUHsAu6Xxt-qKuX4,578
127
+ lightly_studio/examples/example_coco.py,sha256=ttwFSSlVP0IKuASJXeepQQm25WBEkVMNO6EdTRnZ1oE,359
128
+ lightly_studio/examples/example_metadata.py,sha256=Pxp9NpCEvyd601q-UokvGlnUu0yMywUrICJJ4a_7YRA,12729
129
+ lightly_studio/examples/example_selection.py,sha256=UcQ5W0ZTzWZ5TnX-FWsmNJ0sNLz4DODvk0lnAbAGpXs,666
130
+ lightly_studio/examples/example_split_work.py,sha256=0je9xsAPhuvGc7-E7tcx5wbaGRARwSUHzKNskFTmOz4,1236
131
+ lightly_studio/examples/example_yolo.py,sha256=4AZqi2jO2ycH-WPXCDCh9j9y41qW_C-Jgh0jtOdA8pk,477
132
+ lightly_studio/export/export_dataset.py,sha256=txuaKejX5lBrv1LP9GNnBC7hpvhWlwZKNqk18dmu2-s,2018
133
+ lightly_studio/export/lightly_studio_label_input.py,sha256=4IONORlFnrBQ5PpRwJ_9rMCzYTvhlAN7kWNb5UEAaaY,4355
115
134
  lightly_studio/few_shot_classifier/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
116
135
  lightly_studio/few_shot_classifier/classifier.py,sha256=BpPHd69cxMGpNZPJetW9XKmLzVlt9qRoAoSArdt2V50,2444
117
- lightly_studio/few_shot_classifier/classifier_manager.py,sha256=R6Mk3_avEldCR5AFOIsBbZv5Eg-twRjX1wk6w4W2D7E,25148
136
+ lightly_studio/few_shot_classifier/classifier_manager.py,sha256=a3Zf39vRXWCXTEJiRIs2GmO16m9HyIBAjmf3nyanWxU,24152
118
137
  lightly_studio/few_shot_classifier/random_forest_classifier.py,sha256=XoZMhETO4pKGlfH_c6O1MNT-m-qiretifKd0L1iuAqs,17173
119
138
  lightly_studio/metadata/complex_metadata.py,sha256=EV3KI11PHA0tHyEu7f-2DKLidlC3gr_mprn_vp-4KNg,1520
139
+ lightly_studio/metadata/compute_typicality.py,sha256=rBK0aoseBtsl6GjLhoucVZiC_DFc4dvmeH84XJTNO3Q,2239
120
140
  lightly_studio/metadata/gps_coordinate.py,sha256=FcUGhh0HiFI2FHPu_L9ylbaxbgctvu06jPsly_xzBek,1111
121
141
  lightly_studio/metadata/metadata_protocol.py,sha256=kk9x2ZN2uAugnukU4OtEWL9JaW04sUyhM8NoQj8e-XE,554
122
- lightly_studio/metrics/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
123
- lightly_studio/metrics/detection/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
124
- lightly_studio/metrics/detection/map.py,sha256=iVQHqrzODWv517aCGUWVHU8byB7jfhyQ1F_elCRs-ds,8639
125
142
  lightly_studio/models/__init__.py,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
126
143
  lightly_studio/models/annotation_label.py,sha256=oMOai50vyXOccgAONAvfQPPxiTwPFibgPtDXjT1nK58,1272
127
- lightly_studio/models/annotation_task.py,sha256=LR-yCwmMJjmlVl_mu25WEHZ_lDMbCdVPijnEAlonAhE,795
128
144
  lightly_studio/models/classifier.py,sha256=jSyEEvVhE2pQbkup1kAcdJaXBQSDSBfS1kXbpC3OOXc,446
129
- lightly_studio/models/dataset.py,sha256=oqykj4KDrFwsWhPzEwJ1qSEMerVrdPP70w2mazJTbbY,2634
145
+ lightly_studio/models/dataset.py,sha256=uYTxrBvOrA0sgm_4vhGXAWRTTje2RFlHF1PNVpmEueQ,2800
130
146
  lightly_studio/models/embedding_model.py,sha256=nlCxVyuBNDooYfnyFUmPd5xIOpaY7x1o_w2FrJg0hCI,995
131
147
  lightly_studio/models/metadata.py,sha256=uE-Meo585PZ95b9LzknzLCYCN7Sm6k23Fc_vjuPCuoU,6574
132
- lightly_studio/models/sample.py,sha256=3kwDvnSHYK2UWtv_qp6cTz_-JSdg-oURzsr_JZzXw5A,5252
148
+ lightly_studio/models/sample.py,sha256=gjt4mJCxQQ0jCOFbVuA2P6OaG4mhCrA0dQk2H7Fo1bU,5698
133
149
  lightly_studio/models/sample_embedding.py,sha256=2rCnT1bLpAYsGqeewTqvLDP4TBALKpgZl-UJY7q0M9k,1090
134
150
  lightly_studio/models/settings.py,sha256=I0qC96sLi9-EJcgn6M00MdStISZius0X14Dp4Gc5P1I,1703
135
151
  lightly_studio/models/tag.py,sha256=gdKjEKx_6uRs09SegzeVbssaeOEEiLvrwPG2u65WNxo,2479
136
152
  lightly_studio/models/annotation/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
137
- lightly_studio/models/annotation/annotation_base.py,sha256=MDwU7ZdSqyWqgKXQeERqXQhfvjgQZqz-JcpW3zpA_Ks,5405
138
- lightly_studio/models/annotation/instance_segmentation.py,sha256=EOpb4mFMzN1e2afJEYKfufREqP7T3Ad6-ZsepAcIST4,1612
153
+ lightly_studio/models/annotation/annotation_base.py,sha256=GhaxYdR3nMJ8Ih4z4XEB02WzfX4FIAGR9XlUlBFRLrY,5296
154
+ lightly_studio/models/annotation/instance_segmentation.py,sha256=URv5sOyBHsxmYX2huqlW7qDHuDCzL3LRBqmSzG8pSsw,1596
139
155
  lightly_studio/models/annotation/links.py,sha256=FoFGeoznbr8gHVrJo4l4xSvs7ko4SS2ddMQl1SiRRXQ,510
140
- lightly_studio/models/annotation/object_detection.py,sha256=MxurwNpmrOM6yNFtSen1uPj1ENoBlazdhYM5oKa-lo0,1122
156
+ lightly_studio/models/annotation/object_detection.py,sha256=lOvkt8uyPqXljy7oUmXx9_3IB1xdpjuVAxRQVgugsp8,1114
141
157
  lightly_studio/models/annotation/semantic_segmentation.py,sha256=HVM3djqtM1KNq2mFYcDfjmNz8Fs3glEVjUOQ5tj5FFs,1348
142
158
  lightly_studio/resolvers/__init__.py,sha256=fMGTt_WiKFrqk6W8UlCkZL_cZBHiUej4Q0pxHS3VWdo,137
143
- lightly_studio/resolvers/annotation_task_resolver.py,sha256=QuhUQrh8D5yUI6pfqbMQSxUiWrUED-JfxSjJlbdbsqU,1066
144
- lightly_studio/resolvers/dataset_resolver.py,sha256=_PY9klmXN9IJR6r6BmZNDeP3tAPj5p_Yuz8ox6Wl_hs,10053
145
- lightly_studio/resolvers/embedding_model_resolver.py,sha256=4Kqq5mWCeLibHh9gvRDtlDxpDlvScfqBdv4rH-S8ldo,3399
159
+ lightly_studio/resolvers/dataset_resolver.py,sha256=sIiDxKPw2IFDpS76NcP_2cyMsvUQygmv8hT3sjZp48c,10445
160
+ lightly_studio/resolvers/embedding_model_resolver.py,sha256=GfcsSYj8Dw1WwFh0Zz4NPEPF2EgNJXTosTKW7_uo2YQ,4391
146
161
  lightly_studio/resolvers/sample_embedding_resolver.py,sha256=M7Uw6Bv6XBHPXraV8ja_KpjJ35rQzlwGys-fAQLtwn0,2937
147
- lightly_studio/resolvers/sample_resolver.py,sha256=8VvvlirPvlqR_I6Y5pbCHfWxlJTK5VjAqbGeT5vE1Cs,9027
162
+ lightly_studio/resolvers/sample_resolver.py,sha256=dS8khKwxmsvyc8tYfswYLIkq4UFLOKEqpdYo0st5WIk,10901
148
163
  lightly_studio/resolvers/samples_filter.py,sha256=-76zxZb-GnrhpnhjEXVzQtdNGqyIJjPH6rpkNRzswTA,3182
149
164
  lightly_studio/resolvers/settings_resolver.py,sha256=15mSvoBALtHps4un3s_dk2lB2F-e8v_II97vwn056sg,1628
150
- lightly_studio/resolvers/tag_resolver.py,sha256=04_BH6cnkJ3GK9K19RGURHSbJonRSra1T_4BxSloJSY,8059
151
- lightly_studio/resolvers/annotation_label_resolver/__init__.py,sha256=dpGvay0BNAvk6tAF7tc3IDoKX5cNVVAlgEm2DcO81Nw,487
165
+ lightly_studio/resolvers/tag_resolver.py,sha256=PuMQflQ-PumQF96EwAUcVkSIeFzi11JeqJDnXYwyyic,8782
166
+ lightly_studio/resolvers/annotation_label_resolver/__init__.py,sha256=c0NxLRVKQYKxnPuGEI8dO-dBE610QxH0Vkz0oQwDwsI,555
152
167
  lightly_studio/resolvers/annotation_label_resolver/create.py,sha256=q2vrnOXd8S6FMp6BrM-d4Kz_ydeo9n-0gFZSOM-sY7E,750
153
168
  lightly_studio/resolvers/annotation_label_resolver/delete.py,sha256=uGpcC_PG96MdHxNdmv-1-PhxUrAy6A3bC4f8twwZ4Tw,653
154
- lightly_studio/resolvers/annotation_label_resolver/get_all.py,sha256=2rAJwXnQ7wmXRqeknjNJfjLy8cLtVNlAude84jreUS8,619
169
+ lightly_studio/resolvers/annotation_label_resolver/get_all.py,sha256=ICGTGwS7GQxPSKm9dXGm0tY40ASFngMT_yGgI8A9flI,1094
155
170
  lightly_studio/resolvers/annotation_label_resolver/get_by_id.py,sha256=ApNkHolcbkLgDKYTzzATweS-daKX6uE-Eck1dwK58tk,755
156
171
  lightly_studio/resolvers/annotation_label_resolver/get_by_ids.py,sha256=ofuxTjMRjHe5CoyRwsRVT7AbQJyuXqjqSjQnQrPr4MA,797
157
172
  lightly_studio/resolvers/annotation_label_resolver/get_by_label_name.py,sha256=hhgX7WdYjSBGWcSgFN3s43yKURj3IF5HhEATs4hR2KU,743
158
173
  lightly_studio/resolvers/annotation_label_resolver/names_by_ids.py,sha256=kqDHrclODReDPOTi5K47dfQdO_uztTrl274hunURoK0,833
159
174
  lightly_studio/resolvers/annotation_label_resolver/update.py,sha256=Lzjv57VFphvZ_4k5DEsnitOSaWld9O3QqHQuEcH6g4U,989
160
- lightly_studio/resolvers/annotation_resolver/__init__.py,sha256=DBU_EOodhIaqymY0Dz8w4e5ODWl2n6SMo2DtA-W4isA,1119
175
+ lightly_studio/resolvers/annotation_resolver/__init__.py,sha256=zpKrUmsMN80myN8KpegKG8ObySPtR4-yHmF2SUn20cs,1064
161
176
  lightly_studio/resolvers/annotation_resolver/count_annotations_by_dataset.py,sha256=0hgRFVJT02sNG_aWICSAm6JWPN10xGcNlFuoeWSMJ14,4280
162
- lightly_studio/resolvers/annotation_resolver/create.py,sha256=__h-aNI0Vi-2J-mFCIigz3Fm56UI3ZF7QQVYGrURg2c,556
163
- lightly_studio/resolvers/annotation_resolver/create_many.py,sha256=A2Zp87W8ZRotykOkrIqiiS54xFcTjB5rnBWm9SKXaj8,3800
164
- lightly_studio/resolvers/annotation_resolver/delete_annotation.py,sha256=a7Kb5lcx560jq2VIP2w83lNPcxEiQK4GEV5xZBzdXA0,1320
165
- lightly_studio/resolvers/annotation_resolver/delete_annotations.py,sha256=2gn0YyH5q4IW3-aE5wan0GAXw11OPWyd5TX13VunwYo,1891
177
+ lightly_studio/resolvers/annotation_resolver/create_many.py,sha256=0lBfnC0kDwY6t105lkCFHLFOuyPQGD2wYSCYttjc0Uk,3783
178
+ lightly_studio/resolvers/annotation_resolver/delete_annotation.py,sha256=_PugnfgDMTk7UNZzHb5_ZCgbUlSSd1JpS_yY1lGyxkw,1371
179
+ lightly_studio/resolvers/annotation_resolver/delete_annotations.py,sha256=PwBkkuiYLpZVr_B0VdlL_SegKB6CSAk0B67yCFIjCf4,2114
166
180
  lightly_studio/resolvers/annotation_resolver/get_all.py,sha256=6YqdcVesm_rHc2An1ZFbEefVBZnRiHe8MaCfYYRGVU4,2176
167
- lightly_studio/resolvers/annotation_resolver/get_by_id.py,sha256=uBfhs_5wEgvX-Y1W2fsH-VxWoQFhzn4M9bNqz7BQjQM,521
168
- lightly_studio/resolvers/annotation_resolver/update_annotation_label.py,sha256=WbSeGbraQMtvlEb4B4g5QXJtbYndIKMOkqKPvfK6fSc,5455
181
+ lightly_studio/resolvers/annotation_resolver/get_by_id.py,sha256=chL9xS-4wR4BtFvn1Cf13GoqgFvKbr8-q7NHVce0FdY,1088
182
+ lightly_studio/resolvers/annotation_resolver/update_annotation_label.py,sha256=2KL1SsoofZTMWjmKuKqe09TtquuzkmnSkxuJg8Ftk9Y,5388
169
183
  lightly_studio/resolvers/annotation_resolver/update_bounding_box.py,sha256=6Mok2dKXFSkFN3bSSd4TO_nUTTMKq83EN5aL5nocQQc,2280
170
184
  lightly_studio/resolvers/annotations/__init__.py,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
171
- lightly_studio/resolvers/annotations/annotations_filter.py,sha256=RdWb9snFFZkHnBEjsrdB8BEm5AqZnSsDnCakDnlKLxw,3080
185
+ lightly_studio/resolvers/annotations/annotations_filter.py,sha256=eaZT6wttubYjSC35N88ary1mZwnKIC7k0zZWRCHSKns,2696
172
186
  lightly_studio/resolvers/metadata_resolver/__init__.py,sha256=jZZsOiOalzX5Sg4bSavTFzC49feQgIADWOb7abl_UMw,316
173
187
  lightly_studio/resolvers/metadata_resolver/metadata_filter.py,sha256=WpA5na4MfZxgRFNp_WdY6RA9FAnZPaL-mAGpb76pzm8,5169
174
188
  lightly_studio/resolvers/metadata_resolver/sample/__init__.py,sha256=2dSGpLxLFZGrg0U2LLRGrClRIvukwBh17aI8y2Sq_tE,404
@@ -178,13 +192,16 @@ lightly_studio/resolvers/metadata_resolver/sample/get_metadata_info.py,sha256=Rw
178
192
  lightly_studio/resolvers/metadata_resolver/sample/get_value_for_sample.py,sha256=NbPANvsFAyKvutYSC97HSFmmOmiNKcOU71zXmP3IRUU,702
179
193
  lightly_studio/resolvers/metadata_resolver/sample/set_value_for_sample.py,sha256=HNs5t8VACf9h_qJ69R_h34K1TPGa7UjQokkpEcl9530,1289
180
194
  lightly_studio/selection/README.md,sha256=X9KTCy5GmLxpVmb-MELqpBQKhlRxaQ0aQt5i3fnAOKQ,320
181
- lightly_studio/selection/mundig.py,sha256=okpQi0fL35vuJbqY3fA9MxTak41O__2eaHChPKZ7Sdo,4012
182
- lightly_studio/selection/select.py,sha256=P4LTIAtMQOfkLfCIMo7ZNAhJMPNSuJmNzJ3LdF7RIFU,3626
183
- lightly_studio/selection/select_via_db.py,sha256=PxhkMnABUmQc01a9WxnvNMc0doCOfrflxYLejqtF5qI,3365
184
- lightly_studio/selection/selection_config.py,sha256=6Gyq7rKTdgmtE8wR4fKfZR8zAAZ97PBD1te0ztNfrjI,735
185
- lightly_studio/services/annotations_service/__init__.py,sha256=jpJ5RzZRwtaKonw8hDoQnuHkeJDIv5rHyNkWNm44gko,593
195
+ lightly_studio/selection/mundig.py,sha256=dRph7_lQbw4nTYqbvsAsPgUDD_TSZAOcYHWN6c2CLro,3991
196
+ lightly_studio/selection/select.py,sha256=OQU8iw_h3qHRzq7L9rD2NlU56wRRosxJlZfdBa7EvGg,3663
197
+ lightly_studio/selection/select_via_db.py,sha256=tLmNLuPaQqzSqdvmEo0Mc8-sFNMptikG9eruXqXlblE,3621
198
+ lightly_studio/selection/selection_config.py,sha256=AqnXdYy5tkQ45wUfJS_Fbdjk-l9y9-ubis-7oFBCPq0,903
199
+ lightly_studio/services/annotations_service/__init__.py,sha256=VRLb6c2KO2vCvfZ5r_PgVEZztV0d5PL-wrAIVxvQxBc,1010
200
+ lightly_studio/services/annotations_service/create_annotation.py,sha256=ClN4cJJqpdg1eN7KmzuKAkQBbPkJKWAYi2PKewyS_mE,1581
201
+ lightly_studio/services/annotations_service/delete_annotation.py,sha256=cDsE9fi0WSSGSRpwnATHpCJr8Dy7x2t9T8-pIesuSG0,604
186
202
  lightly_studio/services/annotations_service/get_annotation_by_id.py,sha256=95OyWCE5egmiY97P2_3xAbul_gWLDMM0Gf7Kgf9bKiM,804
187
- lightly_studio/services/annotations_service/update_annotation.py,sha256=Dt5axRSOua9YE-o_miwB5IYnOzNur1vOEtqsOvTj8go,1938
203
+ lightly_studio/services/annotations_service/update_annotation.py,sha256=KzSB0XWSk2pj2CImkup8s12uy4urEAzVw4reUVewtC0,1569
204
+ lightly_studio/services/annotations_service/update_annotation_bounding_box.py,sha256=zL76GVl9lmmPEHOlNbfmusKK1QO_uP0GSkzHQ15iZlw,1008
188
205
  lightly_studio/services/annotations_service/update_annotation_label.py,sha256=B84_9XkHdyCu-Tp7SW8yVtVRv1jmFtdHTEkLwMgpANA,1279
189
206
  lightly_studio/services/annotations_service/update_annotations.py,sha256=WAR8hLEE7FAJL7F8E6HQ63fQZzPBRSjxMtgSFaFZSZg,866
190
207
  lightly_studio/vendor/ACKNOWLEDGEMENTS,sha256=H99jquLjJeLv3hrtHTzJrdsGPqYKMfQNKlZL18KawoM,22903
@@ -214,6 +231,6 @@ lightly_studio/vendor/mobileclip/modules/image/replknet.py,sha256=kbcZTT3KAdpv7I
214
231
  lightly_studio/vendor/mobileclip/modules/text/__init__.py,sha256=xIBdotHUSILUTw9Um4NfLunDEtNuQVKRcZlVhwJih38,104
215
232
  lightly_studio/vendor/mobileclip/modules/text/repmixer.py,sha256=baFcHH8bLVeW2VET9gZvg2bUy080yLDVxDr4cuH2upg,9401
216
233
  lightly_studio/vendor/mobileclip/modules/text/tokenizer.py,sha256=g569KONPF33J-2BWgghUy3Xcj0vDE-g00W1YpOZiGwk,1328
217
- lightly_studio-0.3.1.dist-info/METADATA,sha256=opD9e2-1IQTH3-DHkE_EUGkpVLiEuv0oINNA5uiDYOQ,16018
218
- lightly_studio-0.3.1.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
219
- lightly_studio-0.3.1.dist-info/RECORD,,
234
+ lightly_studio-0.3.3.dist-info/METADATA,sha256=GAu_TwozDwtQheVlREzypMSiGcixpPBQavKicN5bn94,24226
235
+ lightly_studio-0.3.3.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
236
+ lightly_studio-0.3.3.dist-info/RECORD,,
lightly_studio/api/db.py DELETED
@@ -1,133 +0,0 @@
1
- """Module provides functions to initialize and manage the DuckDB."""
2
-
3
- from __future__ import annotations
4
-
5
- import logging
6
- import os
7
- from contextlib import contextmanager
8
- from typing import Generator
9
-
10
- from sqlalchemy.engine import Engine
11
- from sqlmodel import Session, SQLModel, create_engine
12
-
13
- import lightly_studio.api.db_tables # noqa: F401, required for SQLModel to work properly
14
-
15
-
16
- class MockDatabaseManager:
17
- """Mock version of DatabaseManager."""
18
-
19
- _persistent_session: Session | None = None
20
-
21
- def __init__(self) -> None:
22
- """Create a new instance of the MockDatabaseManager."""
23
- self.engine = create_engine("duckdb:///:memory:")
24
- self._session_instance = Session(self.engine, close_resets_only=False)
25
- # Initialize tables
26
- SQLModel.metadata.create_all(self.engine)
27
-
28
- @contextmanager
29
- def session(self) -> Generator[Session, None, None]:
30
- """Return the database session."""
31
- try:
32
- yield self._session_instance
33
- if not self._session_instance.in_transaction():
34
- self._session_instance.commit()
35
- except Exception:
36
- self._session_instance.rollback()
37
- raise
38
- finally:
39
- self._session_instance.close()
40
-
41
- def persistent_session(self) -> Session:
42
- """Create a persistent session."""
43
- if self._persistent_session is None:
44
- self._persistent_session = Session(self.engine, close_resets_only=False)
45
- return self._persistent_session
46
-
47
-
48
- class DatabaseManager:
49
- """Manages database connections and ensures proper resource handling."""
50
-
51
- _instance: DatabaseManager | None = None
52
- engine: Engine | None = None
53
- _persistent_session: Session | None = None
54
-
55
- @staticmethod
56
- def database_exists(db_file: str) -> bool:
57
- """Check if database file exists.
58
-
59
- Args:
60
- db_file: Path to the database file
61
-
62
- Returns:
63
- True if database file exists, False otherwise
64
- """
65
- return os.path.exists(db_file)
66
-
67
- @staticmethod
68
- def cleanup_database(db_file: str) -> None:
69
- """Delete database file if it exists.
70
-
71
- Args:
72
- db_file: Path to the database file to delete
73
- """
74
- if DatabaseManager.database_exists(db_file):
75
- os.remove(db_file)
76
- logging.info(f"Deleted existing database: {db_file}")
77
-
78
- def __new__(
79
- cls, db_file: str = "lightly_studio.db", cleanup_existing: bool = False
80
- ) -> DatabaseManager:
81
- """Create a new instance of the DatabaseManager.
82
-
83
- Args:
84
- db_file: Path to the database file
85
- cleanup_existing: If True, deletes existing database
86
- before creating a new one
87
-
88
- Returns:
89
- DatabaseManager instance
90
- """
91
- if cleanup_existing:
92
- cls.cleanup_database(db_file)
93
-
94
- if cls._instance is None:
95
- cls._instance = super().__new__(cls)
96
- # File-based DuckDB
97
- cls._instance.engine = create_engine(f"duckdb:///{db_file}")
98
- # Initialize tables
99
- SQLModel.metadata.create_all(cls._instance.engine)
100
- return cls._instance
101
-
102
- @contextmanager
103
- def session(self) -> Generator[Session, None, None]:
104
- """Create a new database session."""
105
- session = Session(self.engine, close_resets_only=False)
106
- try:
107
- yield session
108
- session.commit()
109
- except Exception:
110
- session.rollback()
111
- raise
112
- finally:
113
- session.close()
114
-
115
- def persistent_session(self) -> Session:
116
- """Create a persistent session."""
117
- if self._persistent_session is None:
118
- # TODO(Michal, 08/2025): Consider setting close_resets_only=True
119
- # before the release. The current solution is more strict and prevents
120
- # bugs but it might be too restrictive for users.
121
- self._persistent_session = Session(self.engine, close_resets_only=False)
122
- return self._persistent_session
123
-
124
-
125
- # Global instance
126
- db_manager = DatabaseManager(cleanup_existing=True)
127
-
128
-
129
- # For FastAPI dependency injection
130
- def get_session() -> Generator[Session, None, None]:
131
- """Yield a new session for database operations."""
132
- with db_manager.session() as session:
133
- yield session
@@ -1,38 +0,0 @@
1
- """API endpoints for annotation tasks."""
2
-
3
- from typing import List
4
- from uuid import UUID
5
-
6
- from fastapi import APIRouter, Depends, HTTPException, status
7
- from sqlmodel import Session
8
-
9
- from lightly_studio.api.db import get_session
10
- from lightly_studio.models.annotation_task import AnnotationTaskTable
11
- from lightly_studio.resolvers import annotation_task_resolver
12
-
13
- router = APIRouter(prefix="/annotationtasks", tags=["annotationtasks"])
14
-
15
-
16
- @router.get("/", response_model=List[AnnotationTaskTable])
17
- def get_annotation_tasks(
18
- session: Session = Depends(get_session), # noqa: B008
19
- ) -> List[AnnotationTaskTable]:
20
- """Get all annotation tasks."""
21
- return annotation_task_resolver.get_all(session=session)
22
-
23
-
24
- @router.get("/{annotation_task_id}", response_model=AnnotationTaskTable)
25
- def get_annotation_task(
26
- annotation_task_id: UUID,
27
- session: Session = Depends(get_session), # noqa: B008
28
- ) -> AnnotationTaskTable:
29
- """Get an annotation task by ID."""
30
- task = annotation_task_resolver.get_by_id(
31
- session=session, annotation_task_id=annotation_task_id
32
- )
33
- if task is None:
34
- raise HTTPException(
35
- status_code=status.HTTP_404_NOT_FOUND,
36
- detail=f"Annotation task with ID {annotation_task_id} not found",
37
- )
38
- return task
@@ -1,80 +0,0 @@
1
- """This module contains the API routes for computing detection metrics."""
2
-
3
- from __future__ import annotations
4
-
5
- from uuid import UUID
6
-
7
- from fastapi import APIRouter, Depends
8
- from pydantic import BaseModel
9
- from sqlmodel import Session
10
- from typing_extensions import Annotated
11
-
12
- from lightly_studio.api.db import get_session
13
- from lightly_studio.metrics.detection.map import (
14
- DetectionMetricsMAP,
15
- calculate_map_metric,
16
- )
17
- from lightly_studio.resolvers import (
18
- annotation_label_resolver,
19
- annotation_resolver,
20
- )
21
- from lightly_studio.resolvers.annotations.annotations_filter import (
22
- AnnotationsFilter,
23
- )
24
-
25
- metrics_router = APIRouter()
26
-
27
- SessionDep = Annotated[Session, Depends(get_session)]
28
-
29
-
30
- class DetectionMetricsMAPRequest(BaseModel):
31
- """Request for computing the MAP detection metric."""
32
-
33
- dataset_id: UUID
34
- ground_truth_task_id: UUID
35
- prediction_task_id: UUID
36
- tag_id: UUID | None = None
37
-
38
-
39
- @metrics_router.post("/metrics/compute/detection/map", response_model=DetectionMetricsMAP)
40
- def compute_detection_map(
41
- request_body: DetectionMetricsMAPRequest,
42
- session: SessionDep,
43
- ) -> DetectionMetricsMAP:
44
- """Compute the MAP detection metric."""
45
- ground_truth_annotations = annotation_resolver.get_all(
46
- session=session,
47
- filters=AnnotationsFilter(
48
- dataset_ids=[request_body.dataset_id],
49
- annotation_task_ids=[request_body.ground_truth_task_id],
50
- sample_tag_ids=[request_body.tag_id] if request_body.tag_id else None,
51
- ),
52
- ).annotations
53
- prediction_annotations = annotation_resolver.get_all(
54
- session=session,
55
- filters=AnnotationsFilter(
56
- dataset_ids=[request_body.dataset_id],
57
- annotation_task_ids=[request_body.prediction_task_id],
58
- sample_tag_ids=[request_body.tag_id] if request_body.tag_id else None,
59
- ),
60
- ).annotations
61
-
62
- metrics_result = calculate_map_metric(
63
- pred_annotations=prediction_annotations,
64
- gt_annotations=ground_truth_annotations,
65
- )
66
-
67
- # Rename per-class metrics to use label names
68
- raw_map_pc = metrics_result.map_per_class
69
- if raw_map_pc:
70
- id2name = annotation_label_resolver.names_by_ids(
71
- session=session, ids=[UUID(k) for k in raw_map_pc]
72
- )
73
- metrics_result.map_per_class = {id2name.get(k, k): v for k, v in raw_map_pc.items()}
74
- raw_mar100_pc = metrics_result.mar_100_per_class
75
- if raw_mar100_pc:
76
- id2name = annotation_label_resolver.names_by_ids(
77
- session=session, ids=[UUID(k) for k in raw_mar100_pc]
78
- )
79
- metrics_result.mar_100_per_class = {id2name.get(k, k): v for k, v in raw_mar100_pc.items()}
80
- return metrics_result