code-loader 1.0.87.dev5__tar.gz → 1.0.87.dev8__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.
Files changed (32) hide show
  1. {code_loader-1.0.87.dev5 → code_loader-1.0.87.dev8}/PKG-INFO +1 -1
  2. {code_loader-1.0.87.dev5 → code_loader-1.0.87.dev8}/code_loader/contract/mapping.py +3 -2
  3. {code_loader-1.0.87.dev5 → code_loader-1.0.87.dev8}/code_loader/inner_leap_binder/leapbinder.py +7 -2
  4. {code_loader-1.0.87.dev5 → code_loader-1.0.87.dev8}/code_loader/inner_leap_binder/leapbinder_decorators.py +5 -2
  5. {code_loader-1.0.87.dev5 → code_loader-1.0.87.dev8}/pyproject.toml +1 -1
  6. {code_loader-1.0.87.dev5 → code_loader-1.0.87.dev8}/LICENSE +0 -0
  7. {code_loader-1.0.87.dev5 → code_loader-1.0.87.dev8}/README.md +0 -0
  8. {code_loader-1.0.87.dev5 → code_loader-1.0.87.dev8}/code_loader/__init__.py +0 -0
  9. {code_loader-1.0.87.dev5 → code_loader-1.0.87.dev8}/code_loader/contract/__init__.py +0 -0
  10. {code_loader-1.0.87.dev5 → code_loader-1.0.87.dev8}/code_loader/contract/datasetclasses.py +0 -0
  11. {code_loader-1.0.87.dev5 → code_loader-1.0.87.dev8}/code_loader/contract/enums.py +0 -0
  12. {code_loader-1.0.87.dev5 → code_loader-1.0.87.dev8}/code_loader/contract/exceptions.py +0 -0
  13. {code_loader-1.0.87.dev5 → code_loader-1.0.87.dev8}/code_loader/contract/responsedataclasses.py +0 -0
  14. {code_loader-1.0.87.dev5 → code_loader-1.0.87.dev8}/code_loader/contract/visualizer_classes.py +0 -0
  15. {code_loader-1.0.87.dev5 → code_loader-1.0.87.dev8}/code_loader/default_losses.py +0 -0
  16. {code_loader-1.0.87.dev5 → code_loader-1.0.87.dev8}/code_loader/default_metrics.py +0 -0
  17. {code_loader-1.0.87.dev5 → code_loader-1.0.87.dev8}/code_loader/experiment_api/__init__.py +0 -0
  18. {code_loader-1.0.87.dev5 → code_loader-1.0.87.dev8}/code_loader/experiment_api/api.py +0 -0
  19. {code_loader-1.0.87.dev5 → code_loader-1.0.87.dev8}/code_loader/experiment_api/cli_config_utils.py +0 -0
  20. {code_loader-1.0.87.dev5 → code_loader-1.0.87.dev8}/code_loader/experiment_api/client.py +0 -0
  21. {code_loader-1.0.87.dev5 → code_loader-1.0.87.dev8}/code_loader/experiment_api/epoch.py +0 -0
  22. {code_loader-1.0.87.dev5 → code_loader-1.0.87.dev8}/code_loader/experiment_api/experiment.py +0 -0
  23. {code_loader-1.0.87.dev5 → code_loader-1.0.87.dev8}/code_loader/experiment_api/experiment_context.py +0 -0
  24. {code_loader-1.0.87.dev5 → code_loader-1.0.87.dev8}/code_loader/experiment_api/types.py +0 -0
  25. {code_loader-1.0.87.dev5 → code_loader-1.0.87.dev8}/code_loader/experiment_api/utils.py +0 -0
  26. {code_loader-1.0.87.dev5 → code_loader-1.0.87.dev8}/code_loader/experiment_api/workingspace_config_utils.py +0 -0
  27. {code_loader-1.0.87.dev5 → code_loader-1.0.87.dev8}/code_loader/inner_leap_binder/__init__.py +0 -0
  28. {code_loader-1.0.87.dev5 → code_loader-1.0.87.dev8}/code_loader/leaploader.py +0 -0
  29. {code_loader-1.0.87.dev5 → code_loader-1.0.87.dev8}/code_loader/leaploaderbase.py +0 -0
  30. {code_loader-1.0.87.dev5 → code_loader-1.0.87.dev8}/code_loader/utils.py +0 -0
  31. {code_loader-1.0.87.dev5 → code_loader-1.0.87.dev8}/code_loader/visualizers/__init__.py +0 -0
  32. {code_loader-1.0.87.dev5 → code_loader-1.0.87.dev8}/code_loader/visualizers/default_visualizers.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: code-loader
3
- Version: 1.0.87.dev5
3
+ Version: 1.0.87.dev8
4
4
  Summary:
5
5
  Home-page: https://github.com/tensorleap/code-loader
6
6
  License: MIT
@@ -24,6 +24,7 @@ class NodeMappingType(Enum):
24
24
  Input3 = 'Input3'
25
25
  Input4 = 'Input4'
26
26
  Input5 = 'Input5'
27
+ PredictionLabels = 'PredictionLabels'
27
28
 
28
29
 
29
30
  @dataclass
@@ -39,7 +40,6 @@ class NodeMapping:
39
40
  class NodeConnection:
40
41
  node: NodeMapping
41
42
  node_inputs: Optional[Dict[str, NodeMapping]]
42
- prediction_type_name: Optional[str] = None
43
43
 
44
44
 
45
45
  def leap_output(idx):
@@ -49,4 +49,5 @@ def leap_output(idx):
49
49
  node_mapping_type = NodeMappingType(f'Prediction{str(idx)}')
50
50
  dummy.node_mapping = NodeMapping('', node_mapping_type)
51
51
 
52
- return dummy
52
+ return dummy
53
+
@@ -12,7 +12,7 @@ from code_loader.contract.datasetclasses import SectionCallableInterface, InputH
12
12
  CustomMultipleReturnCallableInterfaceMultiArgs, DatasetBaseHandler, custom_latent_space_attribute, \
13
13
  RawInputsForHeatmap, VisualizerHandlerData, MetricHandlerData, CustomLossHandlerData, SamplePreprocessResponse
14
14
  from code_loader.contract.enums import LeapDataType, DataStateEnum, DataStateType, MetricDirection, DatasetMetadataType
15
- from code_loader.contract.mapping import NodeConnection
15
+ from code_loader.contract.mapping import NodeConnection, NodeMapping, NodeMappingType
16
16
  from code_loader.contract.responsedataclasses import DatasetTestResultPayload
17
17
  from code_loader.contract.visualizer_classes import map_leap_data_type_to_visualizer_class
18
18
  from code_loader.default_losses import loss_name_to_function
@@ -310,7 +310,7 @@ class LeapBinder:
310
310
  metric_handler_data = MetricHandlerData(name, regular_arg_names, direction, compute_insights)
311
311
  self.setup_container.metrics.append(MetricHandler(metric_handler_data, function))
312
312
 
313
- def add_prediction(self, name: str, labels: List[str], channel_dim: int = -1) -> None:
313
+ def add_prediction(self, name: str, labels: List[str], channel_dim: int = -1, prediction_index: Optional[int]=None) -> None:
314
314
  """
315
315
  Add prediction labels to the setup.
316
316
 
@@ -325,6 +325,11 @@ class LeapBinder:
325
325
  leap_binder.add_prediction(name='class_labels', labels=['cat', 'dog'])
326
326
  """
327
327
  self.setup_container.prediction_types.append(PredictionTypeHandler(name, labels, channel_dim))
328
+ if prediction_index is not None:
329
+ node_connection = NodeConnection(NodeMapping(name, NodeMappingType.PredictionLabels),
330
+ {'temp': NodeMapping('', NodeMappingType(f'Prediction{prediction_index}'))})
331
+
332
+ self.mapping_connections.append(node_connection)
328
333
 
329
334
  def set_ground_truth(self, function: SectionCallableInterface, name: str) -> None:
330
335
  """
@@ -296,7 +296,7 @@ def tensorleap_unlabeled_preprocess():
296
296
  return decorating_function
297
297
 
298
298
 
299
- def tensorleap_input_encoder(name: str, channel_dim=-1):
299
+ def tensorleap_input_encoder(name: str, channel_dim=-1, model_input_index=None):
300
300
  def decorating_function(user_function: SectionCallableInterface):
301
301
  for input_handler in leap_binder.setup_container.inputs:
302
302
  if input_handler.name == name:
@@ -335,7 +335,10 @@ def tensorleap_input_encoder(name: str, channel_dim=-1):
335
335
  _validate_result(result)
336
336
  return result
337
337
 
338
- inner.node_mapping = NodeMapping(name, NodeMappingType.Input)
338
+ node_mapping_type = NodeMappingType.Input
339
+ if model_input_index is not None:
340
+ node_mapping_type = NodeMappingType(f'Input{str(model_input_index)}')
341
+ inner.node_mapping = NodeMapping(name, node_mapping_type)
339
342
 
340
343
  return inner
341
344
 
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "code-loader"
3
- version = "1.0.87.dev5"
3
+ version = "1.0.87.dev8"
4
4
  description = ""
5
5
  authors = ["dorhar <doron.harnoy@tensorleap.ai>"]
6
6
  license = "MIT"