code-loader 1.0.61.dev7__py3-none-any.whl → 1.0.61.dev9__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
code_loader/leaploader.py CHANGED
@@ -1,11 +1,12 @@
1
1
  # mypy: ignore-errors
2
2
  import importlib.util
3
+ import inspect
3
4
  import io
4
5
  import sys
5
6
  from contextlib import redirect_stdout
6
7
  from functools import lru_cache
7
8
  from pathlib import Path
8
- from typing import Dict, List, Iterable, Union, Any, Type
9
+ from typing import Dict, List, Iterable, Union, Any, Type, Optional
9
10
 
10
11
  import numpy as np
11
12
  import numpy.typing as npt
@@ -13,7 +14,7 @@ import numpy.typing as npt
13
14
  from code_loader.contract.datasetclasses import DatasetSample, DatasetBaseHandler, GroundTruthHandler, \
14
15
  PreprocessResponse, VisualizerHandler, LeapData, \
15
16
  PredictionTypeHandler, MetadataHandler, CustomLayerHandler, MetricHandler, VisualizerHandlerData, MetricHandlerData, \
16
- MetricCallableReturnType, CustomLossHandlerData, CustomLossHandler
17
+ MetricCallableReturnType, CustomLossHandlerData, CustomLossHandler, RawInputsForHeatmap
17
18
  from code_loader.contract.enums import DataStateEnum, TestingSectionEnum, DataStateType, DatasetMetadataType
18
19
  from code_loader.contract.exceptions import DatasetScriptException
19
20
  from code_loader.contract.responsedataclasses import DatasetIntegParseResult, DatasetTestResultPayload, \
@@ -70,7 +71,7 @@ class LeapLoader(LeapLoaderBase):
70
71
  self.exec_script()
71
72
  setup = global_leap_binder.setup_container
72
73
  return {
73
- metric_handler.name: metric_handler.metric_handler_data
74
+ metric_handler.metric_handler_data.name: metric_handler.metric_handler_data
74
75
  for metric_handler in setup.metrics
75
76
  }
76
77
 
@@ -79,7 +80,7 @@ class LeapLoader(LeapLoaderBase):
79
80
  self.exec_script()
80
81
  setup = global_leap_binder.setup_container
81
82
  return {
82
- metric_handler.name: metric_handler
83
+ metric_handler.metric_handler_data.name: metric_handler
83
84
  for metric_handler in setup.metrics
84
85
  }
85
86
 
@@ -88,7 +89,7 @@ class LeapLoader(LeapLoaderBase):
88
89
  self.exec_script()
89
90
  setup = global_leap_binder.setup_container
90
91
  return {
91
- visualizer_handler.name: visualizer_handler.visualizer_handler_data
92
+ visualizer_handler.visualizer_handler_data.name: visualizer_handler.visualizer_handler_data
92
93
  for visualizer_handler in setup.visualizers
93
94
  }
94
95
 
@@ -97,7 +98,7 @@ class LeapLoader(LeapLoaderBase):
97
98
  self.exec_script()
98
99
  setup = global_leap_binder.setup_container
99
100
  return {
100
- visualizer_handler.name: visualizer_handler
101
+ visualizer_handler.visualizer_handler_data.name: visualizer_handler
101
102
  for visualizer_handler in setup.visualizers
102
103
  }
103
104
 
@@ -106,7 +107,7 @@ class LeapLoader(LeapLoaderBase):
106
107
  self.exec_script()
107
108
  setup = global_leap_binder.setup_container
108
109
  return {
109
- custom_loss_handler.name: custom_loss_handler.custom_loss_handler_data
110
+ custom_loss_handler.custom_loss_handler_data.name: custom_loss_handler.custom_loss_handler_data
110
111
  for custom_loss_handler in setup.custom_loss_handlers
111
112
  }
112
113
 
@@ -115,7 +116,7 @@ class LeapLoader(LeapLoaderBase):
115
116
  self.exec_script()
116
117
  setup = global_leap_binder.setup_container
117
118
  return {
118
- custom_loss_handler.name: custom_loss_handler
119
+ custom_loss_handler.custom_loss_handler_data.name: custom_loss_handler
119
120
  for custom_loss_handler in setup.custom_loss_handlers
120
121
  }
121
122
 
@@ -251,6 +252,16 @@ class LeapLoader(LeapLoaderBase):
251
252
  return list(input_tensors_by_arg_name.values())[0]
252
253
  return heatmap_function(**input_tensors_by_arg_name)
253
254
 
255
+ def get_heatmap_visualizer_raw_vis_input_arg_name(self, visualizer_name: str) -> Optional[str]:
256
+ heatmap_function = self._visualizer_handler_by_name()[visualizer_name].heatmap_function
257
+ if heatmap_function is None:
258
+ return None
259
+
260
+ for arg_name, arg_type in inspect.getfullargspec(heatmap_function).annotations.items():
261
+ if arg_type == RawInputsForHeatmap:
262
+ return arg_name
263
+ return None
264
+
254
265
  def get_dataset_setup_response(self, handlers_test_payloads: List[DatasetTestResultPayload]) -> DatasetSetup:
255
266
  setup = global_leap_binder.setup_container
256
267
  assert setup.preprocess is not None
@@ -429,3 +440,4 @@ class LeapLoader(LeapLoaderBase):
429
440
 
430
441
  return id_type
431
442
 
443
+
@@ -2,7 +2,7 @@
2
2
 
3
3
  from abc import abstractmethod
4
4
 
5
- from typing import Dict, List, Union, Type
5
+ from typing import Dict, List, Union, Type, Optional
6
6
 
7
7
  import numpy as np
8
8
  import numpy.typing as npt
@@ -84,6 +84,10 @@ class LeapLoaderBase:
84
84
  def get_sample_id_type(self) -> Type:
85
85
  pass
86
86
 
87
+ @abstractmethod
88
+ def get_heatmap_visualizer_raw_vis_input_arg_name(self, visualizer_name: str) -> Optional[str]:
89
+ pass
90
+
87
91
  def is_custom_latent_space(self) -> bool:
88
92
  if not self.code_entry_name or not self.code_path:
89
93
  return False
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: code-loader
3
- Version: 1.0.61.dev7
3
+ Version: 1.0.61.dev9
4
4
  Summary:
5
5
  Home-page: https://github.com/tensorleap/code-loader
6
6
  License: MIT
@@ -20,12 +20,12 @@ code_loader/experiment_api/workingspace_config_utils.py,sha256=DLzXQCg4dgTV_YgaS
20
20
  code_loader/inner_leap_binder/__init__.py,sha256=koOlJyMNYzGbEsoIbXathSmQ-L38N_pEXH_HvL7beXU,99
21
21
  code_loader/inner_leap_binder/leapbinder.py,sha256=u7WF_nfXTe2c5pvcgVbBzJEf61zGzTGlhPNBa0usaVE,25226
22
22
  code_loader/inner_leap_binder/leapbinder_decorators.py,sha256=uuM_ht9HZ1GH2IabKeGQ_x9NmD3poK_h1Gt0NruwJuY,19704
23
- code_loader/leaploader.py,sha256=Cwc8jnG_AUEC1QN9AyzEsftkCcMaTcY-JqrDKJzkWS4,21571
24
- code_loader/leaploaderbase.py,sha256=waxwf5xQP8FhJjP7v7kRxDIRzyGu_26Z-glHWXyDt4g,2936
23
+ code_loader/leaploader.py,sha256=7qu1H-BenEv-yY-751KLGN44SUlogHr58yUa4r2JnK8,22211
24
+ code_loader/leaploaderbase.py,sha256=I1xwgGnDlvfyoOhlpKXXEuCqJUs0jqPzk3DTQaE6riQ,3080
25
25
  code_loader/utils.py,sha256=aw2i_fqW_ADjLB66FWZd9DfpCQ7mPdMyauROC5Nd51I,2197
26
26
  code_loader/visualizers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
27
27
  code_loader/visualizers/default_visualizers.py,sha256=VoqO9FN84yXyMjRjHjUTOt2GdTkJRMbHbXJ1cJkREkk,2230
28
- code_loader-1.0.61.dev7.dist-info/LICENSE,sha256=qIwWjdspQeSMTtnFZBC8MuT-95L02FPvzRUdWFxrwJY,1067
29
- code_loader-1.0.61.dev7.dist-info/METADATA,sha256=PnP3GQ_WtQt9i9McMeLePnK2TP-WongXzRT1RID9Zg4,893
30
- code_loader-1.0.61.dev7.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
31
- code_loader-1.0.61.dev7.dist-info/RECORD,,
28
+ code_loader-1.0.61.dev9.dist-info/LICENSE,sha256=qIwWjdspQeSMTtnFZBC8MuT-95L02FPvzRUdWFxrwJY,1067
29
+ code_loader-1.0.61.dev9.dist-info/METADATA,sha256=EubythMIskLTiw39cpn_Zw8mn-AgC22YXppTSCL3R6A,893
30
+ code_loader-1.0.61.dev9.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
31
+ code_loader-1.0.61.dev9.dist-info/RECORD,,