code-loader 1.0.56__tar.gz → 1.0.57__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 (29) hide show
  1. {code_loader-1.0.56 → code_loader-1.0.57}/PKG-INFO +1 -1
  2. {code_loader-1.0.56 → code_loader-1.0.57}/code_loader/inner_leap_binder/leapbinder_decorators.py +21 -11
  3. {code_loader-1.0.56 → code_loader-1.0.57}/pyproject.toml +1 -1
  4. {code_loader-1.0.56 → code_loader-1.0.57}/LICENSE +0 -0
  5. {code_loader-1.0.56 → code_loader-1.0.57}/README.md +0 -0
  6. {code_loader-1.0.56 → code_loader-1.0.57}/code_loader/__init__.py +0 -0
  7. {code_loader-1.0.56 → code_loader-1.0.57}/code_loader/code_inegration_processes_manager.py +0 -0
  8. {code_loader-1.0.56 → code_loader-1.0.57}/code_loader/contract/__init__.py +0 -0
  9. {code_loader-1.0.56 → code_loader-1.0.57}/code_loader/contract/datasetclasses.py +0 -0
  10. {code_loader-1.0.56 → code_loader-1.0.57}/code_loader/contract/enums.py +0 -0
  11. {code_loader-1.0.56 → code_loader-1.0.57}/code_loader/contract/exceptions.py +0 -0
  12. {code_loader-1.0.56 → code_loader-1.0.57}/code_loader/contract/responsedataclasses.py +0 -0
  13. {code_loader-1.0.56 → code_loader-1.0.57}/code_loader/contract/visualizer_classes.py +0 -0
  14. {code_loader-1.0.56 → code_loader-1.0.57}/code_loader/experiment_api/__init__.py +0 -0
  15. {code_loader-1.0.56 → code_loader-1.0.57}/code_loader/experiment_api/api.py +0 -0
  16. {code_loader-1.0.56 → code_loader-1.0.57}/code_loader/experiment_api/cli_config_utils.py +0 -0
  17. {code_loader-1.0.56 → code_loader-1.0.57}/code_loader/experiment_api/client.py +0 -0
  18. {code_loader-1.0.56 → code_loader-1.0.57}/code_loader/experiment_api/epoch.py +0 -0
  19. {code_loader-1.0.56 → code_loader-1.0.57}/code_loader/experiment_api/experiment.py +0 -0
  20. {code_loader-1.0.56 → code_loader-1.0.57}/code_loader/experiment_api/experiment_context.py +0 -0
  21. {code_loader-1.0.56 → code_loader-1.0.57}/code_loader/experiment_api/types.py +0 -0
  22. {code_loader-1.0.56 → code_loader-1.0.57}/code_loader/experiment_api/utils.py +0 -0
  23. {code_loader-1.0.56 → code_loader-1.0.57}/code_loader/experiment_api/workingspace_config_utils.py +0 -0
  24. {code_loader-1.0.56 → code_loader-1.0.57}/code_loader/inner_leap_binder/__init__.py +0 -0
  25. {code_loader-1.0.56 → code_loader-1.0.57}/code_loader/inner_leap_binder/leapbinder.py +0 -0
  26. {code_loader-1.0.56 → code_loader-1.0.57}/code_loader/leaploader.py +0 -0
  27. {code_loader-1.0.56 → code_loader-1.0.57}/code_loader/utils.py +0 -0
  28. {code_loader-1.0.56 → code_loader-1.0.57}/code_loader/visualizers/__init__.py +0 -0
  29. {code_loader-1.0.56 → code_loader-1.0.57}/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.56
3
+ Version: 1.0.57
4
4
  Summary:
5
5
  Home-page: https://github.com/tensorleap/code-loader
6
6
  License: MIT
@@ -52,20 +52,30 @@ def tensorleap_custom_metric(name: str, direction: Optional[MetricDirection] = M
52
52
  f'Metric has returned unsupported type. Supported types are List[float], '
53
53
  f'List[List[ConfusionMatrixElement]], NDArray[np.float32]. ')
54
54
 
55
- if isinstance(result, list):
56
- if isinstance(result[0], list):
57
- assert isinstance(result[0][0], ConfusionMatrixElement), \
58
- f'{supported_types_message}Got List[List[{type(result[0][0])}]].'
55
+ def _validate_single_metric(single_metric_result):
56
+ if isinstance(single_metric_result, list):
57
+ if isinstance(single_metric_result[0], list):
58
+ assert isinstance(single_metric_result[0][0], ConfusionMatrixElement), \
59
+ f'{supported_types_message}Got List[List[{type(single_metric_result[0][0])}]].'
60
+ else:
61
+ assert isinstance(single_metric_result[0], float), f'{supported_types_message}Got List[{type(single_metric_result[0])}].'
59
62
  else:
60
- assert isinstance(result[0], float), f'{supported_types_message}Got List[{type(result[0])}].'
63
+ assert isinstance(single_metric_result, np.ndarray), f'{supported_types_message}Got {type(single_metric_result)}.'
64
+ assert len(single_metric_result.shape) == 1, (f'tensorleap_custom_metric validation failed: '
65
+ f'The return shape should be 1D. Got {len(single_metric_result.shape)}D.')
61
66
 
67
+ if leap_binder.batch_size_to_validate:
68
+ assert len(single_metric_result) == leap_binder.batch_size_to_validate, \
69
+ f'tensorleap_custom_metrix validation failed: The return len should be as the batch size.'
70
+
71
+ if isinstance(result, dict):
72
+ for key, value in result.items():
73
+ assert isinstance(key, str), \
74
+ (f'tensorleap_custom_metric validation failed: '
75
+ f'Keys in the return dict should be of type str. Got {type(key)}.')
76
+ _validate_single_metric(value)
62
77
  else:
63
- assert isinstance(result, np.ndarray), f'{supported_types_message}Got {type(result)}.'
64
- assert len(result.shape) == 1, (f'tensorleap_custom_metric validation failed: '
65
- f'The return shape should be 1D. Got {len(result.shape)}D.')
66
- if leap_binder.batch_size_to_validate:
67
- assert len(result) == leap_binder.batch_size_to_validate, \
68
- f'tensorleap_custom_metrix validation failed: The return len should be as the batch size.'
78
+ _validate_single_metric(result)
69
79
 
70
80
  def inner(*args, **kwargs):
71
81
  _validate_input_args(*args, **kwargs)
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "code-loader"
3
- version = "1.0.56"
3
+ version = "1.0.57"
4
4
  description = ""
5
5
  authors = ["dorhar <doron.harnoy@tensorleap.ai>"]
6
6
  license = "MIT"
File without changes
File without changes