kaiko-eva 0.3.3__tar.gz → 0.4.1__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 kaiko-eva might be problematic. Click here for more details.

Files changed (765) hide show
  1. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/PKG-INFO +17 -3
  2. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/README.md +11 -2
  3. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/pyproject.toml +7 -1
  4. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/callbacks/config.py +15 -6
  5. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/callbacks/writers/embeddings/base.py +44 -10
  6. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/cli/setup.py +1 -1
  7. kaiko_eva-0.4.1/src/eva/core/data/dataloaders/__init__.py +5 -0
  8. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/data/samplers/classification/balanced.py +24 -12
  9. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/data/samplers/random.py +17 -10
  10. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/interface/interface.py +21 -0
  11. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/loggers/utils/wandb.py +4 -1
  12. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/models/modules/module.py +2 -2
  13. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/models/wrappers/base.py +2 -2
  14. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/models/wrappers/from_function.py +3 -3
  15. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/models/wrappers/from_torchhub.py +9 -7
  16. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/models/wrappers/huggingface.py +4 -5
  17. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/models/wrappers/onnx.py +5 -5
  18. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/trainers/trainer.py +13 -1
  19. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/utils/__init__.py +2 -1
  20. kaiko_eva-0.4.1/src/eva/core/utils/distributed.py +12 -0
  21. kaiko_eva-0.4.1/src/eva/core/utils/paths.py +14 -0
  22. kaiko_eva-0.4.1/src/eva/core/utils/requirements.py +72 -0
  23. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/language/__init__.py +2 -1
  24. kaiko_eva-0.4.1/src/eva/language/callbacks/__init__.py +5 -0
  25. kaiko_eva-0.4.1/src/eva/language/callbacks/writers/__init__.py +5 -0
  26. kaiko_eva-0.4.1/src/eva/language/callbacks/writers/prediction.py +201 -0
  27. kaiko_eva-0.4.1/src/eva/language/data/dataloaders/__init__.py +5 -0
  28. kaiko_eva-0.4.1/src/eva/language/data/dataloaders/collate_fn/__init__.py +5 -0
  29. kaiko_eva-0.4.1/src/eva/language/data/dataloaders/collate_fn/text.py +57 -0
  30. kaiko_eva-0.4.1/src/eva/language/data/datasets/__init__.py +11 -0
  31. kaiko_eva-0.3.3/src/eva/language/data/datasets/language.py → kaiko_eva-0.4.1/src/eva/language/data/datasets/base.py +1 -1
  32. kaiko_eva-0.4.1/src/eva/language/data/datasets/classification/base.py +23 -0
  33. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/language/data/datasets/classification/pubmedqa.py +36 -4
  34. kaiko_eva-0.4.1/src/eva/language/data/datasets/prediction.py +151 -0
  35. kaiko_eva-0.4.1/src/eva/language/data/datasets/schemas.py +18 -0
  36. kaiko_eva-0.4.1/src/eva/language/data/datasets/text.py +92 -0
  37. kaiko_eva-0.4.1/src/eva/language/data/datasets/typings.py +39 -0
  38. kaiko_eva-0.4.1/src/eva/language/data/messages.py +60 -0
  39. kaiko_eva-0.4.1/src/eva/language/models/__init__.py +29 -0
  40. kaiko_eva-0.4.1/src/eva/language/models/modules/__init__.py +5 -0
  41. kaiko_eva-0.4.1/src/eva/language/models/modules/language.py +94 -0
  42. kaiko_eva-0.4.1/src/eva/language/models/networks/__init__.py +12 -0
  43. kaiko_eva-0.4.1/src/eva/language/models/networks/alibaba.py +26 -0
  44. kaiko_eva-0.4.1/src/eva/language/models/networks/api/__init__.py +11 -0
  45. kaiko_eva-0.4.1/src/eva/language/models/networks/api/anthropic.py +34 -0
  46. kaiko_eva-0.4.1/src/eva/language/models/networks/registry.py +5 -0
  47. kaiko_eva-0.4.1/src/eva/language/models/typings.py +56 -0
  48. kaiko_eva-0.4.1/src/eva/language/models/wrappers/__init__.py +19 -0
  49. kaiko_eva-0.4.1/src/eva/language/models/wrappers/base.py +47 -0
  50. kaiko_eva-0.4.1/src/eva/language/models/wrappers/from_registry.py +54 -0
  51. kaiko_eva-0.4.1/src/eva/language/models/wrappers/huggingface.py +115 -0
  52. kaiko_eva-0.4.1/src/eva/language/models/wrappers/litellm.py +122 -0
  53. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/language/models/wrappers/vllm.py +37 -13
  54. kaiko_eva-0.4.1/src/eva/language/utils/__init__.py +6 -0
  55. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/language/utils/str_to_int_tensor.py +20 -12
  56. kaiko_eva-0.4.1/src/eva/language/utils/text/__init__.py +5 -0
  57. kaiko_eva-0.4.1/src/eva/language/utils/text/messages.py +113 -0
  58. kaiko_eva-0.4.1/src/eva/multimodal/__init__.py +6 -0
  59. kaiko_eva-0.4.1/src/eva/multimodal/callbacks/__init__.py +5 -0
  60. kaiko_eva-0.4.1/src/eva/multimodal/callbacks/writers/__init__.py +5 -0
  61. kaiko_eva-0.4.1/src/eva/multimodal/callbacks/writers/prediction.py +39 -0
  62. kaiko_eva-0.4.1/src/eva/multimodal/data/__init__.py +5 -0
  63. kaiko_eva-0.4.1/src/eva/multimodal/data/dataloaders/__init__.py +5 -0
  64. kaiko_eva-0.4.1/src/eva/multimodal/data/dataloaders/collate_fn/__init__.py +5 -0
  65. kaiko_eva-0.4.1/src/eva/multimodal/data/dataloaders/collate_fn/text_image.py +28 -0
  66. kaiko_eva-0.4.1/src/eva/multimodal/data/datasets/__init__.py +6 -0
  67. kaiko_eva-0.4.1/src/eva/multimodal/data/datasets/base.py +13 -0
  68. kaiko_eva-0.4.1/src/eva/multimodal/data/datasets/multiple_choice/__init__.py +5 -0
  69. kaiko_eva-0.4.1/src/eva/multimodal/data/datasets/multiple_choice/patch_camelyon.py +80 -0
  70. kaiko_eva-0.4.1/src/eva/multimodal/data/datasets/schemas.py +14 -0
  71. kaiko_eva-0.4.1/src/eva/multimodal/data/datasets/text_image.py +77 -0
  72. kaiko_eva-0.4.1/src/eva/multimodal/data/datasets/typings.py +27 -0
  73. kaiko_eva-0.4.1/src/eva/multimodal/models/__init__.py +8 -0
  74. kaiko_eva-0.4.1/src/eva/multimodal/models/modules/__init__.py +5 -0
  75. kaiko_eva-0.4.1/src/eva/multimodal/models/modules/vision_language.py +56 -0
  76. kaiko_eva-0.4.1/src/eva/multimodal/models/networks/__init__.py +14 -0
  77. kaiko_eva-0.4.1/src/eva/multimodal/models/networks/alibaba.py +40 -0
  78. kaiko_eva-0.4.1/src/eva/multimodal/models/networks/api/__init__.py +11 -0
  79. kaiko_eva-0.4.1/src/eva/multimodal/models/networks/api/anthropic.py +34 -0
  80. kaiko_eva-0.4.1/src/eva/multimodal/models/networks/others.py +48 -0
  81. kaiko_eva-0.4.1/src/eva/multimodal/models/networks/registry.py +5 -0
  82. kaiko_eva-0.4.1/src/eva/multimodal/models/typings.py +27 -0
  83. kaiko_eva-0.4.1/src/eva/multimodal/models/wrappers/__init__.py +13 -0
  84. kaiko_eva-0.4.1/src/eva/multimodal/models/wrappers/base.py +48 -0
  85. kaiko_eva-0.4.1/src/eva/multimodal/models/wrappers/from_registry.py +54 -0
  86. kaiko_eva-0.4.1/src/eva/multimodal/models/wrappers/huggingface.py +193 -0
  87. kaiko_eva-0.4.1/src/eva/multimodal/models/wrappers/litellm.py +58 -0
  88. kaiko_eva-0.4.1/src/eva/multimodal/utils/__init__.py +1 -0
  89. kaiko_eva-0.4.1/src/eva/multimodal/utils/batch/__init__.py +5 -0
  90. kaiko_eva-0.4.1/src/eva/multimodal/utils/batch/unpack.py +11 -0
  91. kaiko_eva-0.4.1/src/eva/multimodal/utils/image/__init__.py +5 -0
  92. kaiko_eva-0.4.1/src/eva/multimodal/utils/image/encode.py +28 -0
  93. kaiko_eva-0.4.1/src/eva/multimodal/utils/text/__init__.py +1 -0
  94. kaiko_eva-0.4.1/src/eva/multimodal/utils/text/messages.py +79 -0
  95. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/datasets/classification/breakhis.py +5 -8
  96. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/datasets/classification/panda.py +12 -5
  97. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/datasets/classification/patch_camelyon.py +8 -6
  98. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/datasets/segmentation/btcv.py +1 -1
  99. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/datasets/segmentation/consep.py +1 -1
  100. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/datasets/segmentation/lits17.py +1 -1
  101. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/datasets/segmentation/monusac.py +15 -6
  102. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/datasets/segmentation/msd_task7_pancreas.py +1 -1
  103. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/transforms/__init__.py +2 -1
  104. kaiko_eva-0.4.1/src/eva/vision/data/transforms/base/__init__.py +6 -0
  105. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/transforms/base/monai.py +2 -2
  106. kaiko_eva-0.4.1/src/eva/vision/data/transforms/base/torchvision.py +33 -0
  107. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/transforms/common/squeeze.py +6 -3
  108. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/transforms/croppad/crop_foreground.py +8 -7
  109. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/transforms/croppad/rand_crop_by_label_classes.py +6 -5
  110. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/transforms/croppad/rand_crop_by_pos_neg_label.py +6 -5
  111. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/transforms/croppad/rand_spatial_crop.py +8 -7
  112. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/transforms/croppad/spatial_pad.py +6 -6
  113. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/transforms/intensity/rand_scale_intensity.py +3 -3
  114. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/transforms/intensity/rand_shift_intensity.py +3 -3
  115. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/transforms/intensity/scale_intensity_ranged.py +5 -5
  116. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/transforms/spatial/__init__.py +2 -1
  117. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/transforms/spatial/flip.py +8 -7
  118. kaiko_eva-0.4.1/src/eva/vision/data/transforms/spatial/functional/__init__.py +5 -0
  119. kaiko_eva-0.4.1/src/eva/vision/data/transforms/spatial/functional/resize.py +26 -0
  120. kaiko_eva-0.4.1/src/eva/vision/data/transforms/spatial/resize.py +63 -0
  121. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/transforms/spatial/rotate.py +8 -7
  122. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/transforms/spatial/spacing.py +7 -6
  123. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/transforms/utility/ensure_channel_first.py +6 -6
  124. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/models/networks/backbones/universal/vit.py +24 -0
  125. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/models/wrappers/from_registry.py +6 -5
  126. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/models/wrappers/from_timm.py +6 -4
  127. kaiko_eva-0.4.1/tests/__init__.py +1 -0
  128. kaiko_eva-0.4.1/tests/eva/assets/language/predictions/pubmedqa.csv +3 -0
  129. kaiko_eva-0.4.1/tests/eva/assets/language/predictions/pubmedqa.jsonl +3 -0
  130. kaiko_eva-0.4.1/tests/eva/assets/language/predictions/pubmedqa.parquet +3 -0
  131. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/test_cli.py +1 -1
  132. kaiko_eva-0.4.1/tests/eva/core/utils/test_requirements.py +131 -0
  133. kaiko_eva-0.4.1/tests/eva/language/__init__.py +1 -0
  134. kaiko_eva-0.4.1/tests/eva/language/callbacks/writers/test_prediction.py +243 -0
  135. kaiko_eva-0.4.1/tests/eva/language/data/dataloaders/collate_fn/test_text.py +182 -0
  136. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/language/data/datasets/classification/test_pubmedqa.py +7 -4
  137. kaiko_eva-0.4.1/tests/eva/language/data/datasets/test_prediction.py +174 -0
  138. kaiko_eva-0.4.1/tests/eva/language/data/datasets/test_text.py +80 -0
  139. kaiko_eva-0.4.1/tests/eva/language/models/modules/test_language.py +72 -0
  140. kaiko_eva-0.4.1/tests/eva/language/models/wrappers/test_from_registry.py +28 -0
  141. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/language/models/wrappers/test_huggingface.py +15 -8
  142. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/language/models/wrappers/test_litellm.py +9 -7
  143. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/language/models/wrappers/test_vllm.py +8 -8
  144. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/language/test_language_cli.py +40 -3
  145. kaiko_eva-0.4.1/tests/eva/language/utils/test_messages.py +241 -0
  146. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/language/utils/test_str_to_int_tensor.py +13 -5
  147. kaiko_eva-0.4.1/tests/eva/multimodal/__init__.py +1 -0
  148. kaiko_eva-0.4.1/tests/eva/multimodal/data/__init__.py +1 -0
  149. kaiko_eva-0.4.1/tests/eva/multimodal/data/dataloaders/__init__.py +1 -0
  150. kaiko_eva-0.4.1/tests/eva/multimodal/data/dataloaders/collate_fn/__init__.py +1 -0
  151. kaiko_eva-0.4.1/tests/eva/multimodal/data/dataloaders/collate_fn/test_text_image.py +88 -0
  152. kaiko_eva-0.4.1/tests/eva/multimodal/data/datasets/__init__.py +1 -0
  153. kaiko_eva-0.4.1/tests/eva/multimodal/data/datasets/multiple_choice/__init__.py +1 -0
  154. kaiko_eva-0.4.1/tests/eva/multimodal/data/datasets/multiple_choice/test_patch_camelyon.py +104 -0
  155. kaiko_eva-0.4.1/tests/eva/multimodal/data/datasets/test_base.py +31 -0
  156. kaiko_eva-0.4.1/tests/eva/multimodal/data/datasets/test_dataset_typings.py +50 -0
  157. kaiko_eva-0.4.1/tests/eva/multimodal/data/datasets/test_schemas.py +48 -0
  158. kaiko_eva-0.4.1/tests/eva/multimodal/data/datasets/test_text_image.py +90 -0
  159. kaiko_eva-0.4.1/tests/eva/multimodal/models/__init__.py +1 -0
  160. kaiko_eva-0.4.1/tests/eva/multimodal/models/modules/test_vision_language.py +123 -0
  161. kaiko_eva-0.4.1/tests/eva/multimodal/models/test_typings.py +36 -0
  162. kaiko_eva-0.4.1/tests/eva/multimodal/models/wrappers/__init__.py +1 -0
  163. kaiko_eva-0.4.1/tests/eva/multimodal/models/wrappers/test_base.py +46 -0
  164. kaiko_eva-0.4.1/tests/eva/multimodal/models/wrappers/test_from_registry.py +28 -0
  165. kaiko_eva-0.4.1/tests/eva/multimodal/models/wrappers/test_huggingface.py +133 -0
  166. kaiko_eva-0.4.1/tests/eva/multimodal/models/wrappers/test_litellm.py +89 -0
  167. kaiko_eva-0.4.1/tests/eva/multimodal/test_multimodal_cli.py +120 -0
  168. kaiko_eva-0.4.1/tests/eva/multimodal/utils/__init__.py +1 -0
  169. kaiko_eva-0.4.1/tests/eva/multimodal/utils/image/__init__.py +1 -0
  170. kaiko_eva-0.4.1/tests/eva/multimodal/utils/image/test_encode.py +38 -0
  171. kaiko_eva-0.4.1/tests/eva/multimodal/utils/text/__init__.py +1 -0
  172. kaiko_eva-0.4.1/tests/eva/multimodal/utils/text/test_messages.py +65 -0
  173. kaiko_eva-0.4.1/tests/eva/vision/__init__.py +1 -0
  174. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/data/datasets/classification/test_panda.py +19 -13
  175. kaiko_eva-0.4.1/tests/eva/vision/data/transforms/croppad/__init__.py +1 -0
  176. kaiko_eva-0.4.1/tests/eva/vision/data/transforms/croppad/test_rand_crop_by_label_classes.py +77 -0
  177. kaiko_eva-0.4.1/tests/eva/vision/data/transforms/spatial/test_resize.py +58 -0
  178. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/test_vision_cli.py +14 -0
  179. kaiko_eva-0.3.3/src/eva/core/data/dataloaders/__init__.py +0 -6
  180. kaiko_eva-0.3.3/src/eva/core/data/dataloaders/collate_fn/__init__.py +0 -5
  181. kaiko_eva-0.3.3/src/eva/core/data/dataloaders/collate_fn/collate.py +0 -24
  182. kaiko_eva-0.3.3/src/eva/core/utils/requirements.py +0 -26
  183. kaiko_eva-0.3.3/src/eva/language/data/datasets/__init__.py +0 -9
  184. kaiko_eva-0.3.3/src/eva/language/data/datasets/classification/base.py +0 -63
  185. kaiko_eva-0.3.3/src/eva/language/models/__init__.py +0 -25
  186. kaiko_eva-0.3.3/src/eva/language/models/modules/__init__.py +0 -5
  187. kaiko_eva-0.3.3/src/eva/language/models/modules/text.py +0 -85
  188. kaiko_eva-0.3.3/src/eva/language/models/wrappers/__init__.py +0 -11
  189. kaiko_eva-0.3.3/src/eva/language/models/wrappers/huggingface.py +0 -69
  190. kaiko_eva-0.3.3/src/eva/language/models/wrappers/litellm.py +0 -77
  191. kaiko_eva-0.3.3/src/eva/language/utils/__init__.py +0 -5
  192. kaiko_eva-0.3.3/src/eva/vision/data/transforms/base/__init__.py +0 -5
  193. kaiko_eva-0.3.3/tests/__init__.py +0 -1
  194. kaiko_eva-0.3.3/tests/eva/language/__init__.py +0 -1
  195. kaiko_eva-0.3.3/tests/eva/language/models/modules/test_text.py +0 -69
  196. kaiko_eva-0.3.3/tests/eva/vision/__init__.py +0 -1
  197. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/LICENSE +0 -0
  198. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/__init__.py +0 -0
  199. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/__main__.py +0 -0
  200. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/__version__.py +0 -0
  201. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/__init__.py +0 -0
  202. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/callbacks/__init__.py +0 -0
  203. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/callbacks/writers/__init__.py +0 -0
  204. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/callbacks/writers/embeddings/__init__.py +0 -0
  205. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/callbacks/writers/embeddings/_manifest.py +0 -0
  206. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/callbacks/writers/embeddings/classification.py +0 -0
  207. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/callbacks/writers/embeddings/segmentation.py +0 -0
  208. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/callbacks/writers/embeddings/typings.py +0 -0
  209. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/cli/__init__.py +0 -0
  210. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/cli/cli.py +0 -0
  211. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/cli/logo.py +0 -0
  212. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/data/__init__.py +0 -0
  213. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/data/dataloaders/dataloader.py +0 -0
  214. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/data/datamodules/__init__.py +0 -0
  215. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/data/datamodules/call.py +0 -0
  216. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/data/datamodules/datamodule.py +0 -0
  217. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/data/datamodules/schemas.py +0 -0
  218. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/data/datasets/__init__.py +0 -0
  219. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/data/datasets/base.py +0 -0
  220. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/data/datasets/classification/__init__.py +0 -0
  221. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/data/datasets/classification/embeddings.py +0 -0
  222. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/data/datasets/classification/multi_embeddings.py +0 -0
  223. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/data/datasets/dataset.py +0 -0
  224. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/data/datasets/embeddings.py +0 -0
  225. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/data/datasets/typings.py +0 -0
  226. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/data/samplers/__init__.py +0 -0
  227. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/data/samplers/classification/__init__.py +0 -0
  228. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/data/samplers/sampler.py +0 -0
  229. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/data/splitting/__init__.py +0 -0
  230. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/data/splitting/random.py +0 -0
  231. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/data/splitting/stratified.py +0 -0
  232. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/data/transforms/__init__.py +0 -0
  233. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/data/transforms/dtype/__init__.py +0 -0
  234. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/data/transforms/dtype/array.py +0 -0
  235. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/data/transforms/padding/__init__.py +0 -0
  236. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/data/transforms/padding/pad_2d_tensor.py +0 -0
  237. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/data/transforms/sampling/__init__.py +0 -0
  238. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/data/transforms/sampling/sample_from_axis.py +0 -0
  239. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/interface/__init__.py +0 -0
  240. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/loggers/__init__.py +0 -0
  241. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/loggers/dummy.py +0 -0
  242. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/loggers/experimental_loggers.py +0 -0
  243. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/loggers/log/__init__.py +0 -0
  244. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/loggers/log/image.py +0 -0
  245. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/loggers/log/parameters.py +0 -0
  246. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/loggers/log/table.py +0 -0
  247. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/loggers/log/utils.py +0 -0
  248. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/loggers/loggers.py +0 -0
  249. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/losses/__init__.py +0 -0
  250. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/losses/cross_entropy.py +0 -0
  251. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/metrics/__init__.py +0 -0
  252. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/metrics/average_loss.py +0 -0
  253. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/metrics/binary_balanced_accuracy.py +0 -0
  254. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/metrics/defaults/__init__.py +0 -0
  255. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/metrics/defaults/classification/__init__.py +0 -0
  256. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/metrics/defaults/classification/binary.py +0 -0
  257. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/metrics/defaults/classification/multiclass.py +0 -0
  258. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/metrics/structs/__init__.py +0 -0
  259. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/metrics/structs/collection.py +0 -0
  260. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/metrics/structs/metric.py +0 -0
  261. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/metrics/structs/module.py +0 -0
  262. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/metrics/structs/schemas.py +0 -0
  263. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/metrics/structs/typings.py +0 -0
  264. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/models/__init__.py +0 -0
  265. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/models/modules/__init__.py +0 -0
  266. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/models/modules/head.py +0 -0
  267. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/models/modules/inference.py +0 -0
  268. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/models/modules/scheduler.py +0 -0
  269. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/models/modules/typings.py +0 -0
  270. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/models/modules/utils/__init__.py +0 -0
  271. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/models/modules/utils/batch_postprocess.py +0 -0
  272. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/models/modules/utils/checkpoint.py +0 -0
  273. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/models/modules/utils/grad.py +0 -0
  274. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/models/networks/__init__.py +0 -0
  275. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/models/networks/mlp.py +0 -0
  276. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/models/transforms/__init__.py +0 -0
  277. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/models/transforms/as_discrete.py +0 -0
  278. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/models/transforms/extract_cls_features.py +0 -0
  279. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/models/transforms/extract_patch_features.py +0 -0
  280. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/models/wrappers/__init__.py +0 -0
  281. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/models/wrappers/_utils.py +0 -0
  282. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/trainers/__init__.py +0 -0
  283. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/trainers/_logging.py +0 -0
  284. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/trainers/_recorder.py +0 -0
  285. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/trainers/_utils.py +0 -0
  286. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/trainers/functional.py +0 -0
  287. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/utils/clone.py +0 -0
  288. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/utils/factory.py +0 -0
  289. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/utils/io/__init__.py +0 -0
  290. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/utils/io/dataframe.py +0 -0
  291. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/utils/io/gz.py +0 -0
  292. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/utils/memory.py +0 -0
  293. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/utils/multiprocessing.py +0 -0
  294. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/utils/operations.py +0 -0
  295. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/utils/parser.py +0 -0
  296. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/utils/progress_bar.py +0 -0
  297. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/utils/registry.py +0 -0
  298. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/utils/suppress_logs.py +0 -0
  299. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/core/utils/workers.py +0 -0
  300. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/language/data/__init__.py +0 -0
  301. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/language/data/datasets/classification/__init__.py +0 -0
  302. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/language/models/modules/typings.py +0 -0
  303. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/__init__.py +0 -0
  304. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/callbacks/__init__.py +0 -0
  305. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/callbacks/loggers/__init__.py +0 -0
  306. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/callbacks/loggers/batch/__init__.py +0 -0
  307. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/callbacks/loggers/batch/base.py +0 -0
  308. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/callbacks/loggers/batch/segmentation.py +0 -0
  309. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/__init__.py +0 -0
  310. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/dataloaders/__init__.py +0 -0
  311. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/dataloaders/collate_fn/__init__.py +0 -0
  312. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/dataloaders/collate_fn/collection.py +0 -0
  313. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/dataloaders/worker_init.py +0 -0
  314. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/datasets/__init__.py +0 -0
  315. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/datasets/_utils.py +0 -0
  316. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/datasets/_validators.py +0 -0
  317. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/datasets/classification/__init__.py +0 -0
  318. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/datasets/classification/bach.py +0 -0
  319. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/datasets/classification/bracs.py +0 -0
  320. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/datasets/classification/camelyon16.py +0 -0
  321. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/datasets/classification/crc.py +0 -0
  322. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/datasets/classification/gleason_arvaniti.py +0 -0
  323. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/datasets/classification/mhist.py +0 -0
  324. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/datasets/classification/unitopatho.py +0 -0
  325. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/datasets/classification/wsi.py +0 -0
  326. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/datasets/segmentation/__init__.py +0 -0
  327. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/datasets/segmentation/_utils.py +0 -0
  328. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/datasets/segmentation/bcss.py +0 -0
  329. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/datasets/segmentation/embeddings.py +0 -0
  330. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/datasets/segmentation/metadata/__init__.py +0 -0
  331. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/datasets/segmentation/metadata/_msd_task7_pancreas.py +0 -0
  332. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/datasets/structs.py +0 -0
  333. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/datasets/vision.py +0 -0
  334. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/datasets/wsi.py +0 -0
  335. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/transforms/common/__init__.py +0 -0
  336. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/transforms/common/resize_and_crop.py +0 -0
  337. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/transforms/croppad/__init__.py +0 -0
  338. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/transforms/intensity/__init__.py +0 -0
  339. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/transforms/utility/__init__.py +0 -0
  340. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/tv_tensors/__init__.py +0 -0
  341. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/tv_tensors/volume.py +0 -0
  342. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/wsi/__init__.py +0 -0
  343. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/wsi/backends/__init__.py +0 -0
  344. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/wsi/backends/base.py +0 -0
  345. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/wsi/backends/openslide.py +0 -0
  346. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/wsi/backends/pil.py +0 -0
  347. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/wsi/backends/tiffslide.py +0 -0
  348. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/wsi/patching/__init__.py +0 -0
  349. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/wsi/patching/coordinates.py +0 -0
  350. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/wsi/patching/mask.py +0 -0
  351. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/wsi/patching/samplers/__init__.py +0 -0
  352. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/wsi/patching/samplers/_utils.py +0 -0
  353. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/wsi/patching/samplers/base.py +0 -0
  354. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/wsi/patching/samplers/foreground_grid.py +0 -0
  355. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/wsi/patching/samplers/grid.py +0 -0
  356. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/data/wsi/patching/samplers/random.py +0 -0
  357. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/losses/__init__.py +0 -0
  358. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/losses/dice.py +0 -0
  359. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/metrics/__init__.py +0 -0
  360. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/metrics/defaults/__init__.py +0 -0
  361. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/metrics/defaults/segmentation/__init__.py +0 -0
  362. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/metrics/defaults/segmentation/multiclass.py +0 -0
  363. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/metrics/segmentation/__init__.py +0 -0
  364. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/metrics/segmentation/_utils.py +0 -0
  365. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/metrics/segmentation/dice.py +0 -0
  366. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/metrics/segmentation/generalized_dice.py +0 -0
  367. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/metrics/segmentation/mean_iou.py +0 -0
  368. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/metrics/segmentation/monai_dice.py +0 -0
  369. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/metrics/wrappers/__init__.py +0 -0
  370. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/metrics/wrappers/monai.py +0 -0
  371. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/models/__init__.py +0 -0
  372. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/models/modules/__init__.py +0 -0
  373. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/models/modules/semantic_segmentation.py +0 -0
  374. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/models/networks/__init__.py +0 -0
  375. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/models/networks/abmil.py +0 -0
  376. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/models/networks/backbones/__init__.py +0 -0
  377. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/models/networks/backbones/_utils.py +0 -0
  378. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/models/networks/backbones/pathology/__init__.py +0 -0
  379. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/models/networks/backbones/pathology/bioptimus.py +0 -0
  380. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/models/networks/backbones/pathology/gigapath.py +0 -0
  381. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/models/networks/backbones/pathology/histai.py +0 -0
  382. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/models/networks/backbones/pathology/hkust.py +0 -0
  383. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/models/networks/backbones/pathology/kaiko.py +0 -0
  384. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/models/networks/backbones/pathology/lunit.py +0 -0
  385. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/models/networks/backbones/pathology/mahmood.py +0 -0
  386. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/models/networks/backbones/pathology/owkin.py +0 -0
  387. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/models/networks/backbones/pathology/paige.py +0 -0
  388. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/models/networks/backbones/radiology/__init__.py +0 -0
  389. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/models/networks/backbones/radiology/swin_unetr.py +0 -0
  390. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/models/networks/backbones/radiology/voco.py +0 -0
  391. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/models/networks/backbones/registry.py +0 -0
  392. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/models/networks/backbones/timm/__init__.py +0 -0
  393. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/models/networks/backbones/timm/backbones.py +0 -0
  394. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/models/networks/backbones/universal/__init__.py +0 -0
  395. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/models/networks/decoders/__init__.py +0 -0
  396. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/models/networks/decoders/segmentation/__init__.py +0 -0
  397. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/models/networks/decoders/segmentation/base.py +0 -0
  398. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/models/networks/decoders/segmentation/decoder2d.py +0 -0
  399. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/models/networks/decoders/segmentation/linear.py +0 -0
  400. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/models/networks/decoders/segmentation/semantic/__init__.py +0 -0
  401. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/models/networks/decoders/segmentation/semantic/common.py +0 -0
  402. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/models/networks/decoders/segmentation/semantic/swin_unetr.py +0 -0
  403. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/models/networks/decoders/segmentation/semantic/with_image.py +0 -0
  404. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/models/networks/decoders/segmentation/typings.py +0 -0
  405. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/models/wrappers/__init__.py +0 -0
  406. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/utils/__init__.py +0 -0
  407. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/utils/colormap.py +0 -0
  408. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/utils/convert.py +0 -0
  409. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/utils/io/__init__.py +0 -0
  410. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/utils/io/_utils.py +0 -0
  411. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/utils/io/image.py +0 -0
  412. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/utils/io/mat.py +0 -0
  413. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/utils/io/nifti.py +0 -0
  414. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/src/eva/vision/utils/io/text.py +0 -0
  415. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/__init__.py +0 -0
  416. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/_cli.py +0 -0
  417. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/core/archives/test.txt.gz +0 -0
  418. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/core/datasets/embeddings/embeddings/tensor_0_shape_8.pt +0 -0
  419. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/core/datasets/embeddings/embeddings/tensor_1_shape_8.pt +0 -0
  420. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/core/datasets/embeddings/embeddings/tensor_2_shape_8_list.pt +0 -0
  421. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/core/datasets/embeddings/embeddings/tensor_3_shape_8_list.pt +0 -0
  422. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/core/datasets/embeddings/embeddings/tensor_4_shape_1x8.pt +0 -0
  423. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/core/datasets/embeddings/embeddings/tensor_5_shape_1x8.pt +0 -0
  424. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/core/datasets/embeddings/embeddings/tensor_6_shape_1x8_list.pt +0 -0
  425. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/core/datasets/embeddings/embeddings/tensor_7_shape_1x8_list.pt +0 -0
  426. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/core/datasets/embeddings/manifest.csv +0 -0
  427. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/core/datasets/multi-embeddings/embeddings/tensor_0_shape_6x8.pt +0 -0
  428. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/core/datasets/multi-embeddings/embeddings/tensor_1_shape_3x8.pt +0 -0
  429. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/core/datasets/multi-embeddings/embeddings/tensor_2_shape_1x8.pt +0 -0
  430. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/core/datasets/multi-embeddings/embeddings/tensor_3_shape_2x8.pt +0 -0
  431. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/core/datasets/multi-embeddings/embeddings/tensor_4_shape_5x8.pt +0 -0
  432. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/core/datasets/multi-embeddings/embeddings/tensor_5_shape_3x8.pt +0 -0
  433. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/core/datasets/multi-embeddings/embeddings/tensor_6_shape_1x8_list.pt +0 -0
  434. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/core/datasets/multi-embeddings/embeddings/tensor_7_shape_6x8_list.pt +0 -0
  435. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/core/datasets/multi-embeddings/embeddings/tensor_8_shape_2x8_list.pt +0 -0
  436. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/core/datasets/multi-embeddings/embeddings/tensor_9_shape_5x8_list.pt +0 -0
  437. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/core/datasets/multi-embeddings/manifest.csv +0 -0
  438. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/images/random_bgr_32x32.png +0 -0
  439. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/images/random_grayscale_32x32.png +0 -0
  440. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/arvaniti_gleason_patches/test_patches_750/patho_1/ZT80_38_A_1_2/ZT80_38_A_1_2_patch_18_class_1.jpg +0 -0
  441. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/arvaniti_gleason_patches/train_validation_patches_750/ZT111_4_B_4_6/ZT111_4_B_4_6_patch_12_class_1.jpg +0 -0
  442. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/arvaniti_gleason_patches/train_validation_patches_750/ZT204_6_B_7_8/ZT204_6_B_7_8_patch_3_class_2.jpg +0 -0
  443. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/arvaniti_gleason_patches/train_validation_patches_750/ZT76_39_A_1_2/ZT76_39_A_1_2_patch_00_class_0.jpg +0 -0
  444. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/Benign/b001.tif +0 -0
  445. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/Benign/b002.tif +0 -0
  446. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/Benign/b003.tif +0 -0
  447. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/Benign/b004.tif +0 -0
  448. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/Benign/b005.tif +0 -0
  449. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/Benign/b006.tif +0 -0
  450. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/InSitu/is001.tif +0 -0
  451. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/InSitu/is002.tif +0 -0
  452. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/InSitu/is003.tif +0 -0
  453. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/InSitu/is004.tif +0 -0
  454. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/InSitu/is005.tif +0 -0
  455. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/InSitu/is006.tif +0 -0
  456. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/Invasive/iv001.tif +0 -0
  457. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/Invasive/iv002.tif +0 -0
  458. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/Invasive/iv003.tif +0 -0
  459. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/Invasive/iv004.tif +0 -0
  460. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/Invasive/iv005.tif +0 -0
  461. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/Invasive/iv006.tif +0 -0
  462. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/Normal/n001.tif +0 -0
  463. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/Normal/n002.tif +0 -0
  464. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/Normal/n003.tif +0 -0
  465. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/Normal/n004.tif +0 -0
  466. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/Normal/n005.tif +0 -0
  467. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/Normal/n006.tif +0 -0
  468. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bcss/masks/TCGA-A2-A0CM-DX1_xmin18562_ymin56852_MPP-0.2500.png +0 -0
  469. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bcss/masks/TCGA-A7-A4SD-DX1_xmin53807_ymin11871_MPP-0.2500.png +0 -0
  470. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bcss/masks/TCGA-AR-A0TS-DX1_xmin118843_ymin22812_MPP-0.2500.png +0 -0
  471. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bcss/masks/TCGA-AR-A1AQ-DX1_xmin18171_ymin38296_MPP-0.2500.png +0 -0
  472. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bcss/masks/TCGA-C8-A3XY-DX1_xmin76297_ymin35510_MPP-0.2500.png +0 -0
  473. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bcss/masks/TCGA-D8-A1XQ-DX1_xmin61261_ymin33317_MPP-0.2500.png +0 -0
  474. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bcss/masks/TCGA-EW-A1P4-DX1_xmin17256_ymin35430_MPP-0.2500.png +0 -0
  475. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bcss/masks/TCGA-GI-A2C9-DX1_xmin20882_ymin11843_MPP-0.2500.png +0 -0
  476. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bcss/masks/TCGA-OL-A5D6-DX1_xmin115108_ymin40554_MPP-0.2500.png +0 -0
  477. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bcss/masks/TCGA-OL-A5D7-DX1_xmin114443_ymin22490_MPP-0.2500.png +0 -0
  478. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bcss/rgbs_colorNormalized/TCGA-A2-A0CM-DX1_xmin18562_ymin56852_MPP-0.2500.png +0 -0
  479. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bcss/rgbs_colorNormalized/TCGA-A7-A4SD-DX1_xmin53807_ymin11871_MPP-0.2500.png +0 -0
  480. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bcss/rgbs_colorNormalized/TCGA-AR-A0TS-DX1_xmin118843_ymin22812_MPP-0.2500.png +0 -0
  481. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bcss/rgbs_colorNormalized/TCGA-AR-A1AQ-DX1_xmin18171_ymin38296_MPP-0.2500.png +0 -0
  482. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bcss/rgbs_colorNormalized/TCGA-C8-A3XY-DX1_xmin76297_ymin35510_MPP-0.2500.png +0 -0
  483. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bcss/rgbs_colorNormalized/TCGA-D8-A1XQ-DX1_xmin61261_ymin33317_MPP-0.2500.png +0 -0
  484. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bcss/rgbs_colorNormalized/TCGA-EW-A1P4-DX1_xmin17256_ymin35430_MPP-0.2500.png +0 -0
  485. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bcss/rgbs_colorNormalized/TCGA-GI-A2C9-DX1_xmin20882_ymin11843_MPP-0.2500.png +0 -0
  486. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bcss/rgbs_colorNormalized/TCGA-OL-A5D6-DX1_xmin115108_ymin40554_MPP-0.2500.png +0 -0
  487. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bcss/rgbs_colorNormalized/TCGA-OL-A5D7-DX1_xmin114443_ymin22490_MPP-0.2500.png +0 -0
  488. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bracs/BRACS_RoI/latest_version/test/0_N/BRACS_264_N_1.png +0 -0
  489. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bracs/BRACS_RoI/latest_version/test/1_PB/BRACS_264_PB_18.png +0 -0
  490. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bracs/BRACS_RoI/latest_version/train/0_N/BRACS_280_N_2.png +0 -0
  491. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bracs/BRACS_RoI/latest_version/train/1_PB/BRACS_281_PB_2.png +0 -0
  492. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bracs/BRACS_RoI/latest_version/val/0_N/BRACS_265_N_5.png +0 -0
  493. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/bracs/BRACS_RoI/latest_version/val/1_PB/BRACS_265_PB_7.png +0 -0
  494. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/breakhis/BreaKHis_v1/histology_slides/breast/benign/SOB/fibroadenoma/SOB_B_F_14-9133/40X/SOB_B_F-14-9133-40-001.png +0 -0
  495. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/breakhis/BreaKHis_v1/histology_slides/breast/benign/SOB/tubular_adenoma/SOB_B_A_14-21978AB/SOB_B_TA_14-3411F/40X/SOB_B_TA-14-3411F-40-001.png +0 -0
  496. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/breakhis/BreaKHis_v1/histology_slides/breast/benign/SOB/tubular_adenoma/SOB_B_A_14-22549AB/SOB_B_TA_14-13200/40X/SOB_B_TA-14-13200-40-001.png +0 -0
  497. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/breakhis/BreaKHis_v1/histology_slides/breast/malignant/SOB/mucinous_carcinoma/SOB_M_MC_14-19979/40X/SOB_M_MC-14-19979-40-001.png +0 -0
  498. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/btcv/imagesTr/img0001.nii.gz +0 -0
  499. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/btcv/imagesTr/img0002.nii.gz +0 -0
  500. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/btcv/labelsTr/label0001.nii.gz +0 -0
  501. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/btcv/labelsTr/label0002.nii.gz +0 -0
  502. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/camelyon16/testing/images/test_001.tif +0 -0
  503. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/camelyon16/testing/images/test_002.tif +0 -0
  504. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/camelyon16/testing/reference.csv +0 -0
  505. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/camelyon16/training/normal/normal_001.tif +0 -0
  506. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/camelyon16/training/normal/normal_002.tif +0 -0
  507. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/camelyon16/training/tumor/tumor_001.tif +0 -0
  508. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/camelyon16/training/tumor/tumor_002.tif +0 -0
  509. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/consep/Test/Images/test_1.png +0 -0
  510. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/consep/Test/Images/test_2.png +0 -0
  511. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/consep/Test/Images/test_3.png +0 -0
  512. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/consep/Test/Labels/test_1.mat +0 -0
  513. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/consep/Test/Labels/test_2.mat +0 -0
  514. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/consep/Test/Labels/test_3.mat +0 -0
  515. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/consep/Train/Images/train_1.png +0 -0
  516. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/consep/Train/Images/train_2.png +0 -0
  517. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/consep/Train/Images/train_3.png +0 -0
  518. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/consep/Train/Images/train_4.png +0 -0
  519. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/consep/Train/Labels/train_1.mat +0 -0
  520. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/consep/Train/Labels/train_2.mat +0 -0
  521. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/consep/Train/Labels/train_3.mat +0 -0
  522. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/consep/Train/Labels/train_4.mat +0 -0
  523. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/CRC-VAL-HE-7K/ADI/ADI-SIHVHHPH.tif +0 -0
  524. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/CRC-VAL-HE-7K/ADI/ADI-SIHWWQMY.tif +0 -0
  525. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/CRC-VAL-HE-7K/BACK/BACK-YYYHKNMK.tif +0 -0
  526. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/CRC-VAL-HE-7K/BACK/BACK-YYYMDTNW.tif +0 -0
  527. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/CRC-VAL-HE-7K/DEB/DEB-YYYRSHLP.tif +0 -0
  528. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/CRC-VAL-HE-7K/DEB/DEB-YYYTCTDR.tif +0 -0
  529. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/CRC-VAL-HE-7K/LYM/LYM-YYWRPGDD.tif +0 -0
  530. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/CRC-VAL-HE-7K/LYM/LYM-YYYTKMWW.tif +0 -0
  531. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/CRC-VAL-HE-7K/MUC/MUC-YYYNWSAM.tif +0 -0
  532. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/CRC-VAL-HE-7K/MUC/MUC-YYYRQDLW.tif +0 -0
  533. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/CRC-VAL-HE-7K/MUS/MUS-YYYNVQVQ.tif +0 -0
  534. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/CRC-VAL-HE-7K/MUS/MUS-YYYRWWNH.tif +0 -0
  535. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/CRC-VAL-HE-7K/NORM/NORM-YYTTIRVD.tif +0 -0
  536. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/CRC-VAL-HE-7K/NORM/NORM-YYVAFTKA.tif +0 -0
  537. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/CRC-VAL-HE-7K/STR/STR-YYYHNSSM.tif +0 -0
  538. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/CRC-VAL-HE-7K/STR/STR-YYYWVWFG.tif +0 -0
  539. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/CRC-VAL-HE-7K/TUM/TUM-YYYSGWYW.tif +0 -0
  540. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/CRC-VAL-HE-7K/TUM/TUM-YYYYQFVN.tif +0 -0
  541. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K/ADI/ADI-SIHVHHPH.tif +0 -0
  542. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K/ADI/ADI-SIHWWQMY.tif +0 -0
  543. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K/BACK/BACK-YYYHKNMK.tif +0 -0
  544. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K/BACK/BACK-YYYMDTNW.tif +0 -0
  545. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K/DEB/DEB-YYYRSHLP.tif +0 -0
  546. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K/DEB/DEB-YYYTCTDR.tif +0 -0
  547. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K/LYM/LYM-YYWRPGDD.tif +0 -0
  548. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K/LYM/LYM-YYYTKMWW.tif +0 -0
  549. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K/MUC/MUC-YYYNWSAM.tif +0 -0
  550. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K/MUC/MUC-YYYRQDLW.tif +0 -0
  551. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K/MUS/MUS-YYYNVQVQ.tif +0 -0
  552. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K/MUS/MUS-YYYRWWNH.tif +0 -0
  553. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K/NORM/NORM-YYTTIRVD.tif +0 -0
  554. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K/NORM/NORM-YYVAFTKA.tif +0 -0
  555. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K/STR/STR-YYYHNSSM.tif +0 -0
  556. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K/STR/STR-YYYWVWFG.tif +0 -0
  557. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K/TUM/TUM-YYYSGWYW.tif +0 -0
  558. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K/TUM/TUM-YYYYQFVN.tif +0 -0
  559. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K-NONORM/ADI/ADI-SIHVHHPH.tif +0 -0
  560. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K-NONORM/ADI/ADI-SIHWWQMY.tif +0 -0
  561. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K-NONORM/BACK/BACK-YYYHKNMK.tif +0 -0
  562. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K-NONORM/BACK/BACK-YYYMDTNW.tif +0 -0
  563. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K-NONORM/DEB/DEB-YYYRSHLP.tif +0 -0
  564. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K-NONORM/DEB/DEB-YYYTCTDR.tif +0 -0
  565. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K-NONORM/LYM/LYM-YYWRPGDD.tif +0 -0
  566. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K-NONORM/LYM/LYM-YYYTKMWW.tif +0 -0
  567. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K-NONORM/MUC/MUC-YYYNWSAM.tif +0 -0
  568. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K-NONORM/MUC/MUC-YYYRQDLW.tif +0 -0
  569. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K-NONORM/MUS/MUS-YYYNVQVQ.tif +0 -0
  570. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K-NONORM/MUS/MUS-YYYRWWNH.tif +0 -0
  571. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K-NONORM/NORM/NORM-YYTTIRVD.tif +0 -0
  572. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K-NONORM/NORM/NORM-YYVAFTKA.tif +0 -0
  573. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K-NONORM/STR/STR-YYYHNSSM.tif +0 -0
  574. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K-NONORM/STR/STR-YYYWVWFG.tif +0 -0
  575. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K-NONORM/TUM/TUM-YYYSGWYW.tif +0 -0
  576. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K-NONORM/TUM/TUM-YYYYQFVN.tif +0 -0
  577. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/lits17/Training_Batch2/segmentation-31.nii +0 -0
  578. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/lits17/Training_Batch2/segmentation-45.nii +0 -0
  579. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/lits17/Training_Batch2/volume-31.nii +0 -0
  580. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/lits17/Training_Batch2/volume-45.nii +0 -0
  581. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/mhist/annotations.csv +0 -0
  582. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/mhist/images/MHIST_aaa.png +0 -0
  583. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/mhist/images/MHIST_aab.png +0 -0
  584. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/mhist/images/MHIST_aac.png +0 -0
  585. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/mhist/images/MHIST_aae.png +0 -0
  586. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/mhist/images/MHIST_aaf.png +0 -0
  587. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/mhist/images/MHIST_aag.png +0 -0
  588. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/mhist/images/MHIST_aah.png +0 -0
  589. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/monusac/MoNuSAC Testing Data and Annotations/TCGA-2Z-A9JG-01Z-00-DX1/TCGA-2Z-A9JG-01Z-00-DX1_1.tif +0 -0
  590. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/monusac/MoNuSAC Testing Data and Annotations/TCGA-2Z-A9JG-01Z-00-DX1/TCGA-2Z-A9JG-01Z-00-DX1_1.xml +0 -0
  591. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/monusac/MoNuSAC Testing Data and Annotations/TCGA-2Z-A9JG-01Z-00-DX1/TCGA-2Z-A9JG-01Z-00-DX1_2.tif +0 -0
  592. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/monusac/MoNuSAC Testing Data and Annotations/TCGA-2Z-A9JG-01Z-00-DX1/TCGA-2Z-A9JG-01Z-00-DX1_2.xml +0 -0
  593. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/monusac/MoNuSAC Testing Data and Annotations/TCGA-2Z-A9JG-01Z-00-DX1/TCGA-2Z-A9JG-01Z-00-DX1_3.tif +0 -0
  594. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/monusac/MoNuSAC Testing Data and Annotations/TCGA-2Z-A9JG-01Z-00-DX1/TCGA-2Z-A9JG-01Z-00-DX1_3.xml +0 -0
  595. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/monusac/MoNuSAC Testing Data and Annotations/TCGA-2Z-A9JN-01Z-00-DX1/TCGA-2Z-A9JN-01Z-00-DX1_1.tif +0 -0
  596. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/monusac/MoNuSAC Testing Data and Annotations/TCGA-2Z-A9JN-01Z-00-DX1/TCGA-2Z-A9JN-01Z-00-DX1_1.xml +0 -0
  597. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/monusac/MoNuSAC_images_and_annotations/TCGA-55-1594-01Z-00-DX1/TCGA-55-1594-01Z-00-DX1_003.tif +0 -0
  598. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/monusac/MoNuSAC_images_and_annotations/TCGA-55-1594-01Z-00-DX1/TCGA-55-1594-01Z-00-DX1_003.xml +0 -0
  599. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/monusac/MoNuSAC_images_and_annotations/TCGA-5P-A9K0-01Z-00-DX1/TCGA-5P-A9K0-01Z-00-DX1_3.tif +0 -0
  600. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/monusac/MoNuSAC_images_and_annotations/TCGA-5P-A9K0-01Z-00-DX1/TCGA-5P-A9K0-01Z-00-DX1_3.xml +0 -0
  601. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/monusac/MoNuSAC_images_and_annotations/TCGA-69-7760-01Z-00-DX1/TCGA-69-7760-01Z-00-DX1_001.tif +0 -0
  602. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/monusac/MoNuSAC_images_and_annotations/TCGA-69-7760-01Z-00-DX1/TCGA-69-7760-01Z-00-DX1_001.xml +0 -0
  603. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/monusac/MoNuSAC_images_and_annotations/TCGA-69-A59K-01Z-00-DX1/TCGA-69-A59K-01Z-00-DX1_001.tif +0 -0
  604. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/monusac/MoNuSAC_images_and_annotations/TCGA-69-A59K-01Z-00-DX1/TCGA-69-A59K-01Z-00-DX1_001.xml +0 -0
  605. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/monusac/MoNuSAC_images_and_annotations/TCGA-69-A59K-01Z-00-DX1/TCGA-69-A59K-01Z-00-DX1_002.tif +0 -0
  606. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/monusac/MoNuSAC_images_and_annotations/TCGA-69-A59K-01Z-00-DX1/TCGA-69-A59K-01Z-00-DX1_002.xml +0 -0
  607. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/msd_task7_pancreas/imagesTr/pancreas_001_0000.nii.gz +0 -0
  608. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/msd_task7_pancreas/imagesTr/pancreas_006_0000.nii.gz +0 -0
  609. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/msd_task7_pancreas/labelsTr/pancreas_001.nii.gz +0 -0
  610. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/msd_task7_pancreas/labelsTr/pancreas_006.nii.gz +0 -0
  611. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/panda/train_images/0214df71ae527e2144021178c453d204.tiff +0 -0
  612. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/panda/train_images/02d302a8d723fa00331f373091b29135.tiff +0 -0
  613. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/panda/train_images/157565e23ba28d5a42f63f34f3dd4425.tiff +0 -0
  614. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/panda/train_images/682a1fd346b6fff340afbdb80c2f7caf.tiff +0 -0
  615. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/panda/train_images/8582b59b41635fa38401d1bddad66707.tiff +0 -0
  616. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/panda/train_images/8c357871e57c5c60277230412f2d9028.tiff +0 -0
  617. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/panda/train_images/979cf5a2fa4079eaf74343d6ff5e1b51.tiff +0 -0
  618. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/panda/train_images/9dd40c0127d217bc4917e4db40e06e94.tiff +0 -0
  619. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/panda/train_images/9ed8ec7bf90653bc4ca86b3ca53cbb96.tiff +0 -0
  620. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/panda/train_images/a04310d441e8d2c7a5066627baeec9b6.tiff +0 -0
  621. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/panda/train_images/fb8886059879eaac70139336cb525838.tiff +0 -0
  622. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/panda/train_with_noisy_labels.csv +0 -0
  623. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/patch_camelyon/camelyonpatch_level_2_split_test_x.h5 +0 -0
  624. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/patch_camelyon/camelyonpatch_level_2_split_test_y.h5 +0 -0
  625. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/patch_camelyon/camelyonpatch_level_2_split_train_x.h5 +0 -0
  626. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/patch_camelyon/camelyonpatch_level_2_split_train_y.h5 +0 -0
  627. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/patch_camelyon/camelyonpatch_level_2_split_valid_x.h5 +0 -0
  628. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/patch_camelyon/camelyonpatch_level_2_split_valid_y.h5 +0 -0
  629. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/unitopatho/800/HP/149-B3-HP.ndpi_ROI__mpp0.44_reg000_crop_sk00003_(12824,33871,1812,1812).png +0 -0
  630. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/unitopatho/800/NORM/188-B4-NORM.ndpi_ROI__mpp0.44_reg001_crop_sk00026_(15904,10751,1812,1812).png +0 -0
  631. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/unitopatho/800/TVA.LG/243-B5-TVALG.ndpi_ROI__mpp0.44_reg002_crop_sk00033_(7688,23775,1812,1812).png +0 -0
  632. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/unitopatho/800/TVA.LG/TVA.LG CASO 2 - 2018-12-04 13.19.16.ndpi_ROI__mpp0.44_reg000_crop_sk00021_(9060,9947,1812,1812).png +0 -0
  633. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/unitopatho/800/test.csv +0 -0
  634. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/unitopatho/800/train.csv +0 -0
  635. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/wsi/0/a.tiff +0 -0
  636. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/wsi/0/b.tiff +0 -0
  637. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/wsi/1/a.tiff +0 -0
  638. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/assets/vision/datasets/wsi/manifest.csv +0 -0
  639. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/conftest.py +0 -0
  640. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/callbacks/__init__.py +0 -0
  641. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/callbacks/conftest.py +0 -0
  642. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/callbacks/writers/__init__.py +0 -0
  643. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/callbacks/writers/embeddings/__init__.py +0 -0
  644. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/callbacks/writers/embeddings/test_classification.py +0 -0
  645. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/data/__init__.py +0 -0
  646. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/data/dataloaders/__init__.py +0 -0
  647. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/data/dataloaders/test_dataloader.py +0 -0
  648. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/data/datamodules/__init__.py +0 -0
  649. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/data/datamodules/_utils.py +0 -0
  650. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/data/datamodules/test_datamodule.py +0 -0
  651. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/data/datamodules/test_schemas.py +0 -0
  652. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/data/datasets/__init__.py +0 -0
  653. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/data/datasets/classification/__init__.py +0 -0
  654. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/data/datasets/classification/test_embeddings.py +0 -0
  655. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/data/datasets/classification/test_multi_embeddings.py +0 -0
  656. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/data/samplers/__init__.py +0 -0
  657. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/data/samplers/_utils.py +0 -0
  658. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/data/samplers/classification/__init__.py +0 -0
  659. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/data/samplers/classification/test_balanced.py +0 -0
  660. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/data/splitting/__init__.py +0 -0
  661. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/data/splitting/test_random.py +0 -0
  662. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/data/splitting/test_stratified.py +0 -0
  663. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/data/transforms/__init__.py +0 -0
  664. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/data/transforms/padding/__init__.py +0 -0
  665. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/data/transforms/padding/test_pad_2d_tensor.py +0 -0
  666. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/data/transforms/sampling/__init__.py +0 -0
  667. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/data/transforms/sampling/test_sample_from_axis.py +0 -0
  668. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/metrics/__init__.py +0 -0
  669. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/metrics/core/__init__.py +0 -0
  670. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/metrics/core/test_metric_module.py +0 -0
  671. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/metrics/core/test_schemas.py +0 -0
  672. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/metrics/defaults/__init__.py +0 -0
  673. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/metrics/defaults/classification/__init__.py +0 -0
  674. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/metrics/defaults/classification/test_binary.py +0 -0
  675. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/metrics/defaults/classification/test_multiclass.py +0 -0
  676. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/metrics/test_average_loss.py +0 -0
  677. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/metrics/test_binary_balanced_accuracy.py +0 -0
  678. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/models/__init__.py +0 -0
  679. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/models/modules/__init__.py +0 -0
  680. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/models/modules/conftest.py +0 -0
  681. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/models/modules/test_head.py +0 -0
  682. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/models/modules/test_inference.py +0 -0
  683. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/models/modules/utils/__init__.py +0 -0
  684. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/models/modules/utils/test_batch_postproces.py +0 -0
  685. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/models/networks/__init__.py +0 -0
  686. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/models/networks/test_mlp.py +0 -0
  687. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/models/wrappers/__init__.py +0 -0
  688. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/models/wrappers/test_from_function.py +0 -0
  689. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/models/wrappers/test_from_torchub.py +0 -0
  690. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/models/wrappers/test_huggingface.py +0 -0
  691. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/models/wrappers/test_onnx.py +0 -0
  692. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/trainers/__init__.py +0 -0
  693. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/trainers/test_recorder.py +0 -0
  694. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/utils/__init__.py +0 -0
  695. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/utils/io/__init__.py +0 -0
  696. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/utils/io/test_gz.py +0 -0
  697. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/utils/test_factory.py +0 -0
  698. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/core/utils/test_operations.py +0 -0
  699. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/language/data/__init__.py +0 -0
  700. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/language/data/datasets/__init__.py +0 -0
  701. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/language/data/datasets/classification/__init__.py +0 -0
  702. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/language/models/__init__.py +0 -0
  703. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/language/models/modules/__init__.py +0 -0
  704. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/language/models/wrappers/__init__.py +0 -0
  705. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/language/utils/__init__.py +0 -0
  706. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/data/__init__.py +0 -0
  707. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/data/datasets/__init__.py +0 -0
  708. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/data/datasets/classification/__init__.py +0 -0
  709. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/data/datasets/classification/test_bach.py +0 -0
  710. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/data/datasets/classification/test_bracs.py +0 -0
  711. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/data/datasets/classification/test_breakhis.py +0 -0
  712. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/data/datasets/classification/test_camelyon16.py +0 -0
  713. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/data/datasets/classification/test_crc.py +0 -0
  714. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/data/datasets/classification/test_gleason_arvaniti.py +0 -0
  715. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/data/datasets/classification/test_mhist.py +0 -0
  716. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/data/datasets/classification/test_patch_camelyon.py +0 -0
  717. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/data/datasets/classification/test_unitopatho.py +0 -0
  718. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/data/datasets/classification/test_wsi.py +0 -0
  719. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/data/datasets/segmentation/__init__.py +0 -0
  720. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/data/datasets/segmentation/test_bcss.py +0 -0
  721. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/data/datasets/segmentation/test_btcv.py +0 -0
  722. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/data/datasets/segmentation/test_consep.py +0 -0
  723. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/data/datasets/segmentation/test_lits17.py +0 -0
  724. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/data/datasets/segmentation/test_monusac.py +0 -0
  725. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/data/datasets/segmentation/test_msd_task7_pancreas.py +0 -0
  726. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/data/datasets/test_wsi.py +0 -0
  727. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/data/transforms/__init__.py +0 -0
  728. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/data/transforms/common/__init__.py +0 -0
  729. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/data/transforms/common/test_resize_and_crop.py +0 -0
  730. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/data/wsi/__init__.py +0 -0
  731. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/data/wsi/patching/__init__.py +0 -0
  732. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/data/wsi/patching/samplers/__init__.py +0 -0
  733. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/data/wsi/patching/samplers/test_foreground_grid.py +0 -0
  734. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/data/wsi/patching/samplers/test_grid.py +0 -0
  735. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/data/wsi/patching/samplers/test_random.py +0 -0
  736. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/data/wsi/patching/test_mask.py +0 -0
  737. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/metrics/defaults/__init__.py +0 -0
  738. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/metrics/defaults/segmentation/__init__.py +0 -0
  739. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/metrics/defaults/segmentation/test_multiclass.py +0 -0
  740. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/metrics/segmentation/__init__.py +0 -0
  741. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/metrics/segmentation/_utils.py +0 -0
  742. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/metrics/segmentation/test_dice.py +0 -0
  743. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/metrics/segmentation/test_generalized_dice.py +0 -0
  744. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/metrics/segmentation/test_mean_iou.py +0 -0
  745. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/models/__init__.py +0 -0
  746. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/models/modules/__init__.py +0 -0
  747. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/models/modules/conftest.py +0 -0
  748. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/models/modules/test_semantic_segmentation.py +0 -0
  749. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/models/networks/__init__.py +0 -0
  750. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/models/networks/backbones/__init__.py +0 -0
  751. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/models/networks/backbones/radiology/test_swin_unetr.py +0 -0
  752. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/models/networks/backbones/test_registry.py +0 -0
  753. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/models/networks/decoders/__init__.py +0 -0
  754. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/models/networks/decoders/segmentation/__init__.py +0 -0
  755. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/models/networks/decoders/segmentation/test_conv.py +0 -0
  756. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/models/networks/decoders/segmentation/test_linear.py +0 -0
  757. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/models/networks/decoders/segmentation/test_swin_unetr.py +0 -0
  758. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/models/networks/test_abmil.py +0 -0
  759. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/models/wrappers/__init__.py +0 -0
  760. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/models/wrappers/test_backbone.py +0 -0
  761. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/models/wrappers/test_from_timm.py +0 -0
  762. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/utils/__init__.py +0 -0
  763. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/utils/io/__init__.py +0 -0
  764. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/utils/io/test_image.py +0 -0
  765. {kaiko_eva-0.3.3 → kaiko_eva-0.4.1}/tests/eva/vision/utils/test_convert.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: kaiko-eva
3
- Version: 0.3.3
3
+ Version: 0.4.1
4
4
  Summary: Evaluation Framework for oncology foundation models.
5
5
  Keywords: machine-learning,evaluation-framework,oncology,foundation-models
6
6
  Author-Email: Ioannis Gatopoulos <ioannis@kaiko.ai>, =?utf-8?q?Nicolas_K=C3=A4nzig?= <nicolas@kaiko.ai>, Roman Moser <roman@kaiko.ai>
@@ -245,6 +245,10 @@ Requires-Dist: einops>=0.8.1; extra == "vision"
245
245
  Provides-Extra: language
246
246
  Requires-Dist: datasets<4.0.0,>=2.19.0; extra == "language"
247
247
  Requires-Dist: litellm>=1.61.8; extra == "language"
248
+ Requires-Dist: backoff>=2.2.1; extra == "language"
249
+ Provides-Extra: multimodal
250
+ Requires-Dist: litellm>=1.61.8; extra == "multimodal"
251
+ Requires-Dist: backoff>=2.2.1; extra == "multimodal"
248
252
  Provides-Extra: all
249
253
  Requires-Dist: h5py>=3.10.0; extra == "all"
250
254
  Requires-Dist: nibabel>=4.0.1; extra == "all"
@@ -260,6 +264,7 @@ Requires-Dist: monai>=1.3.2; extra == "all"
260
264
  Requires-Dist: einops>=0.8.1; extra == "all"
261
265
  Requires-Dist: datasets<4.0.0,>=2.19.0; extra == "all"
262
266
  Requires-Dist: litellm>=1.61.8; extra == "all"
267
+ Requires-Dist: backoff>=2.2.1; extra == "all"
263
268
  Description-Content-Type: text/markdown
264
269
 
265
270
  <div align="center">
@@ -298,7 +303,7 @@ Check out the [documentation](https://kaiko-ai.github.io/eva/) for more informat
298
303
 
299
304
  ### Highlights:
300
305
  - Easy and reliable benchmark of Oncology FMs
301
- - Supports patch-level classification, slide-level classification, semantic segmentation, and text classification downstream tasks
306
+ - Supports patch-level classification, slide-level classification, semantic segmentation, and (visual) question answering tasks.
302
307
  - Automatic embedding inference and evaluation of a downstream task
303
308
  - Native support of popular medical [datasets](https://kaiko-ai.github.io/eva/dev/datasets/) and models
304
309
  - Produce statistics over multiple evaluation fits and multiple metrics
@@ -316,6 +321,9 @@ pip install 'kaiko-eva[vision]'
316
321
  # to install the expanded `language` version
317
322
  pip install 'kaiko-eva[language]'
318
323
 
324
+ # to install the expanded `multimodal` version
325
+ pip install 'kaiko-eva[multimodal]'
326
+
319
327
  # to install everything
320
328
  pip install 'kaiko-eva[all]'
321
329
  ```
@@ -483,7 +491,13 @@ and [tutorials](https://kaiko-ai.github.io/eva/main/user-guide/advanced/replicat
483
491
 
484
492
  The following table shows the FMs we have evaluated with _`eva`_. For more detailed information about the evaluation process, please refer to our [documentation](https://kaiko-ai.github.io/eva/main/leaderboards/).
485
493
 
486
- ![Pathology Leaderboard](./docs/images/leaderboard.svg)
494
+ ### Pathology
495
+
496
+ <img src="./docs/images/leaderboards/pathology.svg" alt="Pathology Leaderboard">
497
+
498
+ ### Radiology
499
+
500
+ <img src="./docs/images/leaderboards/radiology.svg" alt="Radiology Leaderboard" width="600">
487
501
 
488
502
 
489
503
  ## Contributing
@@ -34,7 +34,7 @@ Check out the [documentation](https://kaiko-ai.github.io/eva/) for more informat
34
34
 
35
35
  ### Highlights:
36
36
  - Easy and reliable benchmark of Oncology FMs
37
- - Supports patch-level classification, slide-level classification, semantic segmentation, and text classification downstream tasks
37
+ - Supports patch-level classification, slide-level classification, semantic segmentation, and (visual) question answering tasks.
38
38
  - Automatic embedding inference and evaluation of a downstream task
39
39
  - Native support of popular medical [datasets](https://kaiko-ai.github.io/eva/dev/datasets/) and models
40
40
  - Produce statistics over multiple evaluation fits and multiple metrics
@@ -52,6 +52,9 @@ pip install 'kaiko-eva[vision]'
52
52
  # to install the expanded `language` version
53
53
  pip install 'kaiko-eva[language]'
54
54
 
55
+ # to install the expanded `multimodal` version
56
+ pip install 'kaiko-eva[multimodal]'
57
+
55
58
  # to install everything
56
59
  pip install 'kaiko-eva[all]'
57
60
  ```
@@ -219,7 +222,13 @@ and [tutorials](https://kaiko-ai.github.io/eva/main/user-guide/advanced/replicat
219
222
 
220
223
  The following table shows the FMs we have evaluated with _`eva`_. For more detailed information about the evaluation process, please refer to our [documentation](https://kaiko-ai.github.io/eva/main/leaderboards/).
221
224
 
222
- ![Pathology Leaderboard](./docs/images/leaderboard.svg)
225
+ ### Pathology
226
+
227
+ <img src="./docs/images/leaderboards/pathology.svg" alt="Pathology Leaderboard">
228
+
229
+ ### Radiology
230
+
231
+ <img src="./docs/images/leaderboards/radiology.svg" alt="Radiology Leaderboard" width="600">
223
232
 
224
233
 
225
234
  ## Contributing
@@ -6,7 +6,7 @@ build-backend = "pdm.backend"
6
6
 
7
7
  [project]
8
8
  name = "kaiko-eva"
9
- version = "0.3.3"
9
+ version = "0.4.1"
10
10
  description = "Evaluation Framework for oncology foundation models."
11
11
  keywords = [
12
12
  "machine-learning",
@@ -75,6 +75,11 @@ vision = [
75
75
  language = [
76
76
  "datasets<4.0.0,>=2.19.0",
77
77
  "litellm>=1.61.8",
78
+ "backoff>=2.2.1",
79
+ ]
80
+ multimodal = [
81
+ "litellm>=1.61.8",
82
+ "backoff>=2.2.1",
78
83
  ]
79
84
  all = [
80
85
  "h5py>=3.10.0",
@@ -91,6 +96,7 @@ all = [
91
96
  "einops>=0.8.1",
92
97
  "datasets<4.0.0,>=2.19.0",
93
98
  "litellm>=1.61.8",
99
+ "backoff>=2.2.1",
94
100
  ]
95
101
 
96
102
  [project.scripts]
@@ -9,11 +9,13 @@ from typing import Any, Dict, List
9
9
  import lightning.pytorch as pl
10
10
  import yaml
11
11
  from lightning_fabric.utilities import cloud_io
12
+ from loguru import logger
12
13
  from loguru import logger as cli_logger
13
14
  from omegaconf import OmegaConf
14
15
  from typing_extensions import TypeGuard, override
15
16
 
16
17
  from eva.core import loggers
18
+ from eva.core.utils import distributed as dist_utils
17
19
 
18
20
 
19
21
  class ConfigurationLogger(pl.Callback):
@@ -39,8 +41,14 @@ class ConfigurationLogger(pl.Callback):
39
41
  pl_module: pl.LightningModule,
40
42
  stage: str | None = None,
41
43
  ) -> None:
42
- log_dir = trainer.log_dir
43
- if not _logdir_exists(log_dir):
44
+ if dist_utils.is_distributed():
45
+ logger.info("ConfigurationLogger skipped as not supported in distributed mode.")
46
+ # TODO: Enabling leads to deadlocks in DDP mode, but I could not yet figure out why.
47
+ return
48
+
49
+ if not trainer.is_global_zero or not _logdir_exists(
50
+ log_dir := trainer.log_dir, self._verbose
51
+ ):
44
52
  return
45
53
 
46
54
  configuration = _load_submitted_config()
@@ -51,6 +59,10 @@ class ConfigurationLogger(pl.Callback):
51
59
 
52
60
  save_as = os.path.join(log_dir, self._save_as)
53
61
  fs = cloud_io.get_filesystem(log_dir)
62
+
63
+ if not fs.exists(log_dir):
64
+ fs.makedirs(log_dir)
65
+
54
66
  with fs.open(save_as, "w") as output_file:
55
67
  yaml.dump(configuration, output_file, sort_keys=False)
56
68
 
@@ -126,7 +138,7 @@ def _type_resolver(mapping: Dict[str, Any]) -> Dict[str, Any]:
126
138
  for key, value in mapping.items():
127
139
  if isinstance(value, dict):
128
140
  formatted_value = _type_resolver(value)
129
- elif isinstance(value, list) and isinstance(value[0], dict):
141
+ elif isinstance(value, list) and value and isinstance(value[0], dict):
130
142
  formatted_value = [_type_resolver(subvalue) for subvalue in value]
131
143
  else:
132
144
  try:
@@ -134,10 +146,7 @@ def _type_resolver(mapping: Dict[str, Any]) -> Dict[str, Any]:
134
146
  formatted_value = (
135
147
  value if isinstance(parsed_value, BuiltinFunctionType) else parsed_value
136
148
  )
137
-
138
149
  except Exception:
139
150
  formatted_value = value
140
-
141
151
  mapping[key] = formatted_value
142
-
143
152
  return mapping
@@ -7,6 +7,7 @@ from typing import Any, Dict, List, Sequence
7
7
 
8
8
  import lightning.pytorch as pl
9
9
  import torch
10
+ import torch.distributed as dist
10
11
  from lightning.pytorch import callbacks
11
12
  from loguru import logger
12
13
  from torch import multiprocessing, nn
@@ -15,6 +16,7 @@ from typing_extensions import override
15
16
  from eva.core import utils
16
17
  from eva.core.callbacks.writers.embeddings.typings import QUEUE_ITEM
17
18
  from eva.core.models.modules.typings import INPUT_BATCH
19
+ from eva.core.utils import distributed as dist_utils
18
20
  from eva.core.utils import multiprocessing as eva_multiprocessing
19
21
 
20
22
 
@@ -58,8 +60,9 @@ class EmbeddingsWriter(callbacks.BasePredictionWriter, abc.ABC):
58
60
  self._save_every_n = save_every_n
59
61
  self._metadata_keys = metadata_keys or []
60
62
 
61
- self._write_queue: multiprocessing.Queue
62
- self._write_process: eva_multiprocessing.Process
63
+ self._write_queue: multiprocessing.Queue | None = None
64
+ self._write_process: eva_multiprocessing.Process | None = None
65
+ self._is_rank_zero: bool = False
63
66
 
64
67
  @staticmethod
65
68
  @abc.abstractmethod
@@ -78,9 +81,13 @@ class EmbeddingsWriter(callbacks.BasePredictionWriter, abc.ABC):
78
81
 
79
82
  @override
80
83
  def on_predict_start(self, trainer: pl.Trainer, pl_module: pl.LightningModule) -> None:
81
- self._check_if_exists()
82
- self._initialize_write_process()
83
- self._write_process.start()
84
+ self._is_rank_zero = trainer.is_global_zero
85
+ if self._is_rank_zero:
86
+ self._check_if_exists()
87
+ self._initialize_write_process()
88
+ if self._write_process is None or self._write_queue is None:
89
+ raise RuntimeError("Failed to initialize embedding writer process.")
90
+ self._write_process.start()
84
91
 
85
92
  if self._backbone is not None:
86
93
  self._backbone = self._backbone.to(pl_module.device)
@@ -106,6 +113,7 @@ class EmbeddingsWriter(callbacks.BasePredictionWriter, abc.ABC):
106
113
  with torch.no_grad():
107
114
  embeddings = self._get_embeddings(prediction)
108
115
 
116
+ queue_items: List[QUEUE_ITEM] = []
109
117
  for local_idx, global_idx in enumerate(batch_indices[: len(embeddings)]):
110
118
  data_name = dataset.filename(global_idx)
111
119
  save_name = os.path.splitext(data_name)[0] + ".pt"
@@ -121,15 +129,41 @@ class EmbeddingsWriter(callbacks.BasePredictionWriter, abc.ABC):
121
129
  split=split,
122
130
  metadata=item_metadata,
123
131
  )
124
- self._write_queue.put(item)
132
+ queue_items.append(item)
125
133
 
126
- self._write_process.check_exceptions()
134
+ gathered_items = self._gather_queue_items(queue_items)
135
+ if self._is_rank_zero:
136
+ for item in gathered_items:
137
+ self._write_queue.put(item) # type: ignore
138
+ self._write_process.check_exceptions() # type: ignore
127
139
 
128
140
  @override
129
141
  def on_predict_end(self, trainer: pl.Trainer, pl_module: pl.LightningModule) -> None:
130
- self._write_queue.put(None)
131
- self._write_process.join()
132
- logger.info(f"Predictions and manifest saved to {self._output_dir}")
142
+ if dist_utils.is_distributed():
143
+ dist.barrier()
144
+
145
+ if self._is_rank_zero and self._write_queue is not None:
146
+ self._write_queue.put(None)
147
+ if self._write_process is not None:
148
+ self._write_process.join()
149
+ logger.info(f"Predictions and manifest saved to {self._output_dir}")
150
+
151
+ def _gather_queue_items(self, items: List[QUEUE_ITEM]) -> List[QUEUE_ITEM]:
152
+ """Gather queue items across distributed ranks, returning only on rank zero."""
153
+ if not dist_utils.is_distributed():
154
+ return items
155
+
156
+ world_size = dist.get_world_size()
157
+ object_list: List[List[QUEUE_ITEM]] = [[] for _ in range(world_size)]
158
+ dist.all_gather_object(object_list, items)
159
+
160
+ if self._is_rank_zero:
161
+ gathered: List[QUEUE_ITEM] = []
162
+ for rank_items in object_list:
163
+ gathered.extend(rank_items)
164
+ return gathered
165
+
166
+ return []
133
167
 
134
168
  def _initialize_write_process(self) -> None:
135
169
  self._write_queue = multiprocessing.Queue()
@@ -59,7 +59,7 @@ def _initialize_logger() -> None:
59
59
  " :: <bold><level>{level}</level></bold>"
60
60
  " :: {message}",
61
61
  colorize=True,
62
- level="INFO",
62
+ level=os.getenv("LOGURU_LEVEL", "INFO"),
63
63
  )
64
64
 
65
65
 
@@ -0,0 +1,5 @@
1
+ """Dataloaders API."""
2
+
3
+ from eva.core.data.dataloaders.dataloader import DataLoader
4
+
5
+ __all__ = ["DataLoader"]
@@ -1,9 +1,10 @@
1
1
  """Random class sampler for data loading."""
2
2
 
3
3
  from collections import defaultdict
4
- from typing import Dict, Iterator, List
4
+ from typing import Dict, Iterator, List, Union
5
5
 
6
6
  import numpy as np
7
+ import torch
7
8
  from loguru import logger
8
9
  from typing_extensions import override
9
10
 
@@ -32,7 +33,7 @@ class BalancedSampler(SamplerWithDataSource[int]):
32
33
  """
33
34
  self._num_samples = num_samples
34
35
  self._replacement = replacement
35
- self._class_indices: Dict[int, List[int]] = defaultdict(list)
36
+ self._class_indices: Dict[Union[int, str], List[int]] = defaultdict(list)
36
37
  self._random_generator = np.random.default_rng(seed)
37
38
  self._indices: List[int] = []
38
39
 
@@ -62,20 +63,31 @@ class BalancedSampler(SamplerWithDataSource[int]):
62
63
  super().set_dataset(data_source)
63
64
  self._make_indices()
64
65
 
66
+ def _get_class_idx(self, idx):
67
+ """Load and validate the class index for a given sample index."""
68
+ if hasattr(self.data_source, "load_target"):
69
+ target = self.data_source.load_target(idx) # type: ignore
70
+ else:
71
+ _, target, _ = DataSample(*self.data_source[idx])
72
+
73
+ if target is None:
74
+ raise ValueError("The dataset must return non-empty targets.")
75
+
76
+ if isinstance(target, str):
77
+ return target
78
+
79
+ if isinstance(target, torch.Tensor):
80
+ if target.numel() != 1:
81
+ raise ValueError("The dataset must return a single & scalar target.")
82
+ return int(target.item())
83
+
84
+ raise ValueError("Unsupported target type. Expected str or tensor-like object.")
85
+
65
86
  def _make_indices(self):
66
87
  """Samples the indices for each class in the dataset."""
67
88
  self._class_indices.clear()
68
89
  for idx in tqdm(range(len(self.data_source)), desc="Fetching class indices for sampler"):
69
- if hasattr(self.data_source, "load_target"):
70
- target = self.data_source.load_target(idx) # type: ignore
71
- else:
72
- _, target, _ = DataSample(*self.data_source[idx])
73
- if target is None:
74
- raise ValueError("The dataset must return non-empty targets.")
75
- if target.numel() != 1:
76
- raise ValueError("The dataset must return a single & scalar target.")
77
-
78
- class_idx = int(target.item())
90
+ class_idx = self._get_class_idx(idx)
79
91
  self._class_indices[class_idx].append(idx)
80
92
 
81
93
  if not self._replacement:
@@ -2,6 +2,7 @@
2
2
 
3
3
  from typing import Optional
4
4
 
5
+ import torch
5
6
  from torch.utils import data
6
7
  from typing_extensions import override
7
8
 
@@ -10,30 +11,36 @@ from eva.core.data.samplers.sampler import SamplerWithDataSource
10
11
 
11
12
 
12
13
  class RandomSampler(data.RandomSampler, SamplerWithDataSource[int]):
13
- """Samples elements randomly."""
14
+ """Samples elements randomly from a MapDataset."""
14
15
 
15
16
  data_source: datasets.MapDataset # type: ignore
16
17
 
17
18
  def __init__(
18
- self, replacement: bool = False, num_samples: Optional[int] = None, generator=None
19
+ self,
20
+ replacement: bool = False,
21
+ num_samples: Optional[int] = None,
22
+ seed: Optional[int] = None,
19
23
  ) -> None:
20
- """Initializes the random sampler.
24
+ """Initialize the random sampler.
21
25
 
22
26
  Args:
23
- data_source: dataset to sample from
24
- replacement: samples are drawn on-demand with replacement if ``True``, default=``False``
25
- num_samples: number of samples to draw, default=`len(dataset)`.
26
- generator: Generator used in sampling.
27
+ replacement: Samples are drawn on-demand with replacement if ``True``, default=``False``
28
+ num_samples: Number of samples to draw, default=``len(dataset)``.
29
+ seed: Optional seed for the random number generator.
27
30
  """
28
31
  self.replacement = replacement
29
32
  self._num_samples = num_samples
30
- self.generator = generator
33
+ self._generator = None
34
+
35
+ if seed is not None:
36
+ self._generator = torch.Generator()
37
+ self._generator.manual_seed(seed)
31
38
 
32
39
  @override
33
40
  def set_dataset(self, data_source: datasets.MapDataset) -> None:
34
41
  super().__init__(
35
42
  data_source,
36
43
  replacement=self.replacement,
37
- num_samples=self.num_samples,
38
- generator=self.generator,
44
+ num_samples=self._num_samples,
45
+ generator=self._generator,
39
46
  )
@@ -132,3 +132,24 @@ class Interface:
132
132
  n_runs=trainer.n_runs,
133
133
  verbose=trainer.n_runs > 1,
134
134
  )
135
+
136
+ def validate_test(
137
+ self,
138
+ trainer: eva_trainer.Trainer,
139
+ model: modules.ModelModule,
140
+ data: datamodules.DataModule,
141
+ ) -> None:
142
+ """Runs validation & test stages."""
143
+ if getattr(data.datasets, "val", None) is None:
144
+ raise ValueError("The provided data module does not contain a validation dataset.")
145
+ if getattr(data.datasets, "test", None) is None:
146
+ raise ValueError("The provided data module does not contain a test dataset.")
147
+
148
+ eva_trainer.run_evaluation_session(
149
+ base_trainer=trainer,
150
+ base_model=model,
151
+ datamodule=data,
152
+ stages=["validate", "test"],
153
+ n_runs=trainer.n_runs,
154
+ verbose=trainer.n_runs > 1,
155
+ )
@@ -5,6 +5,8 @@ from typing import Any, Dict
5
5
 
6
6
  from loguru import logger
7
7
 
8
+ from eva.core.utils import requirements
9
+
8
10
 
9
11
  def rename_active_run(name: str) -> None:
10
12
  """Renames the current run."""
@@ -12,7 +14,8 @@ def rename_active_run(name: str) -> None:
12
14
 
13
15
  if wandb.run:
14
16
  wandb.run.name = name
15
- wandb.run.save()
17
+ if requirements.below("wandb", "0.21.0"):
18
+ wandb.run.save()
16
19
  else:
17
20
  logger.warning("No active wandb run found that could be renamed.")
18
21
 
@@ -33,8 +33,8 @@ class ModelModule(pl.LightningModule):
33
33
  super().__init__()
34
34
 
35
35
  self._metrics = metrics or self.default_metrics
36
- self._postprocess = postprocess or self.default_postprocess
37
36
 
37
+ self.postprocess = postprocess or self.default_postprocess
38
38
  self.metrics = metrics_lib.MetricModule.from_schema(self._metrics)
39
39
 
40
40
  @property
@@ -133,7 +133,7 @@ class ModelModule(pl.LightningModule):
133
133
  Returns:
134
134
  The updated outputs.
135
135
  """
136
- self._postprocess(outputs)
136
+ self.postprocess(outputs)
137
137
  return memory.recursive_detach(outputs, to_cpu=self.metrics_device.type == "cpu")
138
138
 
139
139
  def _forward_and_log_metrics(
@@ -25,7 +25,7 @@ class BaseModel(nn.Module, Generic[InputType, OutputType]):
25
25
 
26
26
  self._output_transforms = transforms
27
27
 
28
- self._model: Callable[..., OutputType] | nn.Module
28
+ self.model: Callable[..., OutputType] | nn.Module
29
29
 
30
30
  @override
31
31
  def forward(self, tensor: InputType) -> OutputType:
@@ -43,7 +43,7 @@ class BaseModel(nn.Module, Generic[InputType, OutputType]):
43
43
  Args:
44
44
  tensor: The input tensor to the model.
45
45
  """
46
- return self._model(tensor)
46
+ return self.model(tensor)
47
47
 
48
48
  def _apply_transforms(self, tensor: OutputType) -> OutputType:
49
49
  if self._output_transforms is not None:
@@ -41,12 +41,12 @@ class ModelFromFunction(base.BaseModel[torch.Tensor, torch.Tensor]):
41
41
  self._arguments = arguments
42
42
  self._checkpoint_path = checkpoint_path
43
43
 
44
- self.load_model()
44
+ self.model = self.load_model()
45
45
 
46
46
  @override
47
- def load_model(self) -> None:
47
+ def load_model(self) -> nn.Module:
48
48
  class_path = jsonargparse.class_from_function(self._path, func_return=nn.Module)
49
49
  model = class_path(**self._arguments or {})
50
50
  if self._checkpoint_path is not None:
51
51
  _utils.load_model_weights(model, self._checkpoint_path)
52
- self._model = model
52
+ return model
@@ -52,12 +52,12 @@ class TorchHubModel(base.BaseModel[torch.Tensor, torch.Tensor]):
52
52
  self._trust_repo = trust_repo
53
53
  self._model_kwargs = model_kwargs or {}
54
54
 
55
- self.load_model()
55
+ self.model = self.load_model()
56
56
 
57
57
  @override
58
- def load_model(self) -> None:
58
+ def load_model(self) -> nn.Module:
59
59
  """Builds and loads the torch.hub model."""
60
- self._model: nn.Module = torch.hub.load(
60
+ model: nn.Module = torch.hub.load(
61
61
  repo_or_dir=self._repo_or_dir,
62
62
  model=self._model_name,
63
63
  trust_repo=self._trust_repo,
@@ -66,21 +66,23 @@ class TorchHubModel(base.BaseModel[torch.Tensor, torch.Tensor]):
66
66
  ) # type: ignore
67
67
 
68
68
  if self._checkpoint_path:
69
- _utils.load_model_weights(self._model, self._checkpoint_path)
69
+ _utils.load_model_weights(model, self._checkpoint_path)
70
70
 
71
71
  TorchHubModel.__name__ = self._model_name
72
72
 
73
+ return model
74
+
73
75
  @override
74
76
  def model_forward(self, tensor: torch.Tensor) -> torch.Tensor | List[torch.Tensor]:
75
77
  if self._out_indices is not None:
76
- if not hasattr(self._model, "get_intermediate_layers"):
78
+ if not hasattr(self.model, "get_intermediate_layers"):
77
79
  raise ValueError(
78
80
  "Only models with `get_intermediate_layers` are supported "
79
81
  "when using `out_indices`."
80
82
  )
81
83
 
82
84
  return list(
83
- self._model.get_intermediate_layers(
85
+ self.model.get_intermediate_layers( # type: ignore
84
86
  tensor,
85
87
  self._out_indices,
86
88
  reshape=True,
@@ -89,4 +91,4 @@ class TorchHubModel(base.BaseModel[torch.Tensor, torch.Tensor]):
89
91
  )
90
92
  )
91
93
 
92
- return self._model(tensor)
94
+ return self.model(tensor)
@@ -4,6 +4,7 @@ from typing import Any, Callable, Dict
4
4
 
5
5
  import torch
6
6
  import transformers
7
+ from torch import nn
7
8
  from typing_extensions import override
8
9
 
9
10
  from eva.core.models.wrappers import base
@@ -33,12 +34,10 @@ class HuggingFaceModel(base.BaseModel[torch.Tensor, torch.Tensor]):
33
34
  self._model_name_or_path = model_name_or_path
34
35
  self._model_kwargs = model_kwargs or {}
35
36
 
36
- self.load_model()
37
+ self.model = self.load_model()
37
38
 
38
39
  @override
39
- def load_model(self) -> None:
40
+ def load_model(self) -> nn.Module:
40
41
  # Use safetensors to avoid torch.load security vulnerability
41
42
  model_kwargs = {"use_safetensors": True, **self._model_kwargs}
42
- self._model = transformers.AutoModel.from_pretrained(
43
- self._model_name_or_path, **model_kwargs
44
- )
43
+ return transformers.AutoModel.from_pretrained(self._model_name_or_path, **model_kwargs)
@@ -30,21 +30,21 @@ class ONNXModel(base.BaseModel[torch.Tensor, torch.Tensor]):
30
30
  self._path = path
31
31
  self._device = device
32
32
 
33
- self.load_model()
33
+ self.model = self.load_model()
34
34
 
35
35
  @override
36
36
  def load_model(self) -> Any:
37
37
  if self._device == "cuda" and not torch.cuda.is_available():
38
38
  raise ValueError("Device is set to 'cuda', but CUDA is not available.")
39
39
  provider = "CUDAExecutionProvider" if self._device == "cuda" else "CPUExecutionProvider"
40
- self._model = ort.InferenceSession(self._path, providers=[provider]) # type: ignore
40
+ return ort.InferenceSession(self._path, providers=[provider]) # type: ignore
41
41
 
42
42
  @override
43
43
  def model_forward(self, tensor: torch.Tensor) -> torch.Tensor:
44
44
  # TODO: Use IO binding to avoid copying the tensor to CPU.
45
45
  # https://onnxruntime.ai/docs/api/python/api_summary.html#data-on-device
46
- if not isinstance(self._model, ort.InferenceSession):
46
+ if not isinstance(self.model, ort.InferenceSession):
47
47
  raise ValueError("Model is not loaded.")
48
- inputs = {self._model.get_inputs()[0].name: tensor.detach().cpu().numpy()}
49
- outputs = self._model.run(None, inputs)[0]
48
+ inputs = {self.model.get_inputs()[0].name: tensor.detach().cpu().numpy()}
49
+ outputs = self.model.run(None, inputs)[0]
50
50
  return torch.from_numpy(outputs).float().to(tensor.device)
@@ -8,6 +8,7 @@ from lightning.pytorch import loggers as pl_loggers
8
8
  from lightning.pytorch import trainer as pl_trainer
9
9
  from lightning.pytorch.utilities import argparse
10
10
  from lightning_fabric.utilities import cloud_io
11
+ from lightning_utilities.core.rank_zero import rank_zero_only
11
12
  from typing_extensions import override
12
13
 
13
14
  from eva.core import loggers as eva_loggers
@@ -30,6 +31,8 @@ class Trainer(pl_trainer.Trainer):
30
31
  default_root_dir: str = "logs",
31
32
  n_runs: int = 1,
32
33
  checkpoint_type: Literal["best", "last"] = "best",
34
+ accelerator: str = "auto",
35
+ devices: int = 1,
33
36
  **kwargs: Any,
34
37
  ) -> None:
35
38
  """Initializes the trainer.
@@ -44,9 +47,17 @@ class Trainer(pl_trainer.Trainer):
44
47
  n_runs: The amount of runs (fit and evaluate) to perform in an evaluation session.
45
48
  checkpoint_type: Wether to load the "best" or "last" checkpoint saved by the checkpoint
46
49
  callback for evaluations on validation & test sets.
50
+ accelerator: The accelerator to use for training (e.g. "cpu", "gpu").
51
+ devices: The number of devices (GPUs) to use for training.
47
52
  kwargs: Kew-word arguments of ::class::`lightning.pytorch.Trainer`.
48
53
  """
49
- super().__init__(*args, default_root_dir=default_root_dir, **kwargs)
54
+ super().__init__(
55
+ *args,
56
+ default_root_dir=default_root_dir,
57
+ accelerator=accelerator,
58
+ devices=devices,
59
+ **kwargs,
60
+ )
50
61
 
51
62
  self.checkpoint_type = checkpoint_type
52
63
  self.n_runs = n_runs
@@ -66,6 +77,7 @@ class Trainer(pl_trainer.Trainer):
66
77
  def log_dir(self) -> str | None:
67
78
  return self.strategy.broadcast(self._log_dir)
68
79
 
80
+ @rank_zero_only
69
81
  def init_logger_run(self, run_id: int | None) -> None:
70
82
  """Setup the loggers & log directories when starting a new run.
71
83