code-loader 1.0.171__tar.gz → 1.0.172.dev1__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 (36) hide show
  1. {code_loader-1.0.171 → code_loader-1.0.172.dev1}/PKG-INFO +1 -1
  2. {code_loader-1.0.171 → code_loader-1.0.172.dev1}/code_loader/contract/datasetclasses.py +31 -2
  3. {code_loader-1.0.171 → code_loader-1.0.172.dev1}/pyproject.toml +1 -1
  4. {code_loader-1.0.171 → code_loader-1.0.172.dev1}/LICENSE +0 -0
  5. {code_loader-1.0.171 → code_loader-1.0.172.dev1}/README.md +0 -0
  6. {code_loader-1.0.171 → code_loader-1.0.172.dev1}/code_loader/__init__.py +0 -0
  7. {code_loader-1.0.171 → code_loader-1.0.172.dev1}/code_loader/contract/__init__.py +0 -0
  8. {code_loader-1.0.171 → code_loader-1.0.172.dev1}/code_loader/contract/enums.py +0 -0
  9. {code_loader-1.0.171 → code_loader-1.0.172.dev1}/code_loader/contract/exceptions.py +0 -0
  10. {code_loader-1.0.171 → code_loader-1.0.172.dev1}/code_loader/contract/mapping.py +0 -0
  11. {code_loader-1.0.171 → code_loader-1.0.172.dev1}/code_loader/contract/responsedataclasses.py +0 -0
  12. {code_loader-1.0.171 → code_loader-1.0.172.dev1}/code_loader/contract/visualizer_classes.py +0 -0
  13. {code_loader-1.0.171 → code_loader-1.0.172.dev1}/code_loader/default_losses.py +0 -0
  14. {code_loader-1.0.171 → code_loader-1.0.172.dev1}/code_loader/default_metrics.py +0 -0
  15. {code_loader-1.0.171 → code_loader-1.0.172.dev1}/code_loader/experiment_api/__init__.py +0 -0
  16. {code_loader-1.0.171 → code_loader-1.0.172.dev1}/code_loader/experiment_api/api.py +0 -0
  17. {code_loader-1.0.171 → code_loader-1.0.172.dev1}/code_loader/experiment_api/cli_config_utils.py +0 -0
  18. {code_loader-1.0.171 → code_loader-1.0.172.dev1}/code_loader/experiment_api/client.py +0 -0
  19. {code_loader-1.0.171 → code_loader-1.0.172.dev1}/code_loader/experiment_api/epoch.py +0 -0
  20. {code_loader-1.0.171 → code_loader-1.0.172.dev1}/code_loader/experiment_api/experiment.py +0 -0
  21. {code_loader-1.0.171 → code_loader-1.0.172.dev1}/code_loader/experiment_api/experiment_context.py +0 -0
  22. {code_loader-1.0.171 → code_loader-1.0.172.dev1}/code_loader/experiment_api/types.py +0 -0
  23. {code_loader-1.0.171 → code_loader-1.0.172.dev1}/code_loader/experiment_api/utils.py +0 -0
  24. {code_loader-1.0.171 → code_loader-1.0.172.dev1}/code_loader/experiment_api/workingspace_config_utils.py +0 -0
  25. {code_loader-1.0.171 → code_loader-1.0.172.dev1}/code_loader/inner_leap_binder/__init__.py +0 -0
  26. {code_loader-1.0.171 → code_loader-1.0.172.dev1}/code_loader/inner_leap_binder/leapbinder.py +0 -0
  27. {code_loader-1.0.171 → code_loader-1.0.172.dev1}/code_loader/inner_leap_binder/leapbinder_decorators.py +0 -0
  28. {code_loader-1.0.171 → code_loader-1.0.172.dev1}/code_loader/leaploader.py +0 -0
  29. {code_loader-1.0.171 → code_loader-1.0.172.dev1}/code_loader/leaploaderbase.py +0 -0
  30. {code_loader-1.0.171 → code_loader-1.0.172.dev1}/code_loader/mixpanel_tracker.py +0 -0
  31. {code_loader-1.0.171 → code_loader-1.0.172.dev1}/code_loader/plot_functions/__init__.py +0 -0
  32. {code_loader-1.0.171 → code_loader-1.0.172.dev1}/code_loader/plot_functions/plot_functions.py +0 -0
  33. {code_loader-1.0.171 → code_loader-1.0.172.dev1}/code_loader/plot_functions/visualize.py +0 -0
  34. {code_loader-1.0.171 → code_loader-1.0.172.dev1}/code_loader/utils.py +0 -0
  35. {code_loader-1.0.171 → code_loader-1.0.172.dev1}/code_loader/visualizers/__init__.py +0 -0
  36. {code_loader-1.0.171 → code_loader-1.0.172.dev1}/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.171
3
+ Version: 1.0.172.dev1
4
4
  Summary:
5
5
  Home-page: https://github.com/tensorleap/code-loader
6
6
  License: MIT
@@ -1,6 +1,6 @@
1
1
  import warnings
2
2
  from dataclasses import dataclass, field
3
- from typing import Any, Callable, List, Optional, Dict, Union, Type, Literal
3
+ from typing import Any, Callable, Iterable, List, Optional, Dict, Union, Type, Literal, Tuple
4
4
  import re
5
5
  import numpy as np
6
6
  import numpy.typing as npt
@@ -165,6 +165,36 @@ class MetricHandlerData:
165
165
  compute_insights: Optional[Union[bool, Dict[str, bool]]] = None
166
166
 
167
167
 
168
+ def normalize_metric_handler_settings(
169
+ direction: Union[None, MetricDirection, Dict[str, MetricDirection]],
170
+ compute_insights: Optional[Union[bool, Dict[str, bool]]],
171
+ result_keys: Iterable[str],
172
+ ) -> Tuple[Union[None, MetricDirection, Dict[str, MetricDirection]], Optional[Union[bool, Dict[str, bool]]]]:
173
+ ordered_result_keys = list(result_keys)
174
+ if not ordered_result_keys:
175
+ return direction, compute_insights
176
+
177
+ normalized_direction = direction
178
+ if isinstance(direction, MetricDirection):
179
+ normalized_direction = {key: direction for key in ordered_result_keys}
180
+ elif isinstance(direction, dict):
181
+ normalized_direction = {
182
+ key: direction.get(key, MetricDirection.Downward)
183
+ for key in ordered_result_keys
184
+ }
185
+
186
+ normalized_compute_insights = compute_insights
187
+ if isinstance(compute_insights, bool):
188
+ normalized_compute_insights = {key: compute_insights for key in ordered_result_keys}
189
+ elif isinstance(compute_insights, dict):
190
+ normalized_compute_insights = {
191
+ key: compute_insights.get(key, True)
192
+ for key in ordered_result_keys
193
+ }
194
+
195
+ return normalized_direction, normalized_compute_insights
196
+
197
+
168
198
  @dataclass
169
199
  class MetricHandler:
170
200
  metric_handler_data: MetricHandlerData
@@ -272,4 +302,3 @@ class DatasetSample:
272
302
  state: DataStateEnum
273
303
  custom_latent_space: Optional[npt.NDArray[np.float32]] = None
274
304
  instance_masks: Optional[Dict[str, ElementInstance]] = None
275
-
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "code-loader"
3
- version = "1.0.171"
3
+ version = "1.0.172.dev1"
4
4
  description = ""
5
5
  authors = ["dorhar <doron.harnoy@tensorleap.ai>"]
6
6
  license = "MIT"