code-loader 1.0.215.dev1__tar.gz → 1.0.216__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 (37) hide show
  1. {code_loader-1.0.215.dev1 → code_loader-1.0.216}/PKG-INFO +1 -1
  2. {code_loader-1.0.215.dev1 → code_loader-1.0.216}/code_loader/contract/datasetclasses.py +3 -2
  3. {code_loader-1.0.215.dev1 → code_loader-1.0.216}/code_loader/contract/responsedataclasses.py +1 -0
  4. {code_loader-1.0.215.dev1 → code_loader-1.0.216}/code_loader/inner_leap_binder/leapbinder.py +11 -0
  5. {code_loader-1.0.215.dev1 → code_loader-1.0.216}/code_loader/leaploader.py +1 -0
  6. {code_loader-1.0.215.dev1 → code_loader-1.0.216}/pyproject.toml +1 -1
  7. {code_loader-1.0.215.dev1 → code_loader-1.0.216}/LICENSE +0 -0
  8. {code_loader-1.0.215.dev1 → code_loader-1.0.216}/README.md +0 -0
  9. {code_loader-1.0.215.dev1 → code_loader-1.0.216}/code_loader/__init__.py +0 -0
  10. {code_loader-1.0.215.dev1 → code_loader-1.0.216}/code_loader/contract/__init__.py +0 -0
  11. {code_loader-1.0.215.dev1 → code_loader-1.0.216}/code_loader/contract/enums.py +0 -0
  12. {code_loader-1.0.215.dev1 → code_loader-1.0.216}/code_loader/contract/exceptions.py +0 -0
  13. {code_loader-1.0.215.dev1 → code_loader-1.0.216}/code_loader/contract/mapping.py +0 -0
  14. {code_loader-1.0.215.dev1 → code_loader-1.0.216}/code_loader/contract/sim_config.py +0 -0
  15. {code_loader-1.0.215.dev1 → code_loader-1.0.216}/code_loader/contract/visualizer_classes.py +0 -0
  16. {code_loader-1.0.215.dev1 → code_loader-1.0.216}/code_loader/default_losses.py +0 -0
  17. {code_loader-1.0.215.dev1 → code_loader-1.0.216}/code_loader/default_metrics.py +0 -0
  18. {code_loader-1.0.215.dev1 → code_loader-1.0.216}/code_loader/experiment_api/__init__.py +0 -0
  19. {code_loader-1.0.215.dev1 → code_loader-1.0.216}/code_loader/experiment_api/api.py +0 -0
  20. {code_loader-1.0.215.dev1 → code_loader-1.0.216}/code_loader/experiment_api/cli_config_utils.py +0 -0
  21. {code_loader-1.0.215.dev1 → code_loader-1.0.216}/code_loader/experiment_api/client.py +0 -0
  22. {code_loader-1.0.215.dev1 → code_loader-1.0.216}/code_loader/experiment_api/epoch.py +0 -0
  23. {code_loader-1.0.215.dev1 → code_loader-1.0.216}/code_loader/experiment_api/experiment.py +0 -0
  24. {code_loader-1.0.215.dev1 → code_loader-1.0.216}/code_loader/experiment_api/experiment_context.py +0 -0
  25. {code_loader-1.0.215.dev1 → code_loader-1.0.216}/code_loader/experiment_api/types.py +0 -0
  26. {code_loader-1.0.215.dev1 → code_loader-1.0.216}/code_loader/experiment_api/utils.py +0 -0
  27. {code_loader-1.0.215.dev1 → code_loader-1.0.216}/code_loader/experiment_api/workingspace_config_utils.py +0 -0
  28. {code_loader-1.0.215.dev1 → code_loader-1.0.216}/code_loader/inner_leap_binder/__init__.py +0 -0
  29. {code_loader-1.0.215.dev1 → code_loader-1.0.216}/code_loader/inner_leap_binder/leapbinder_decorators.py +0 -0
  30. {code_loader-1.0.215.dev1 → code_loader-1.0.216}/code_loader/leaploaderbase.py +0 -0
  31. {code_loader-1.0.215.dev1 → code_loader-1.0.216}/code_loader/mixpanel_tracker.py +0 -0
  32. {code_loader-1.0.215.dev1 → code_loader-1.0.216}/code_loader/plot_functions/__init__.py +0 -0
  33. {code_loader-1.0.215.dev1 → code_loader-1.0.216}/code_loader/plot_functions/plot_functions.py +0 -0
  34. {code_loader-1.0.215.dev1 → code_loader-1.0.216}/code_loader/plot_functions/visualize.py +0 -0
  35. {code_loader-1.0.215.dev1 → code_loader-1.0.216}/code_loader/utils.py +0 -0
  36. {code_loader-1.0.215.dev1 → code_loader-1.0.216}/code_loader/visualizers/__init__.py +0 -0
  37. {code_loader-1.0.215.dev1 → code_loader-1.0.216}/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.215.dev1
3
+ Version: 1.0.216
4
4
  Summary:
5
5
  Home-page: https://github.com/tensorleap/code-loader
6
6
  License: MIT
@@ -84,13 +84,14 @@ class PreprocessResponse:
84
84
  (f"PreprocessResponse.sample_ids should be a list. Got: {type(self.sample_ids).__name__}. "
85
85
  f"Supported: {SUPPORTED_SAMPLE_IDS}. Convert it with .tolist() or list(...), "
86
86
  f"e.g. sample_ids=df.index.tolist().")
87
- self._grouped = len(self.sample_ids) > 0 and isinstance(self.sample_ids[0], list)
87
+ self._grouped = len(self.sample_ids) > 0 and isinstance(self.sample_ids[0], (list, tuple))
88
88
  if self._grouped:
89
89
  groups = cast(List[List[SampleId]], self.sample_ids)
90
90
  assert len(groups) >= 1, "Grouped PreprocessResponse must have at least one group."
91
91
  for group in groups:
92
92
  assert type(group) is list and len(group) > 0, \
93
- f"Each group in a grouped PreprocessResponse must be a non-empty list. Got: {type(group).__name__}"
93
+ (f"Each group in a grouped PreprocessResponse must be a non-empty list. Got: {type(group).__name__}. "
94
+ f"Convert each group with list(...).")
94
95
  first_type = type(groups[0][0])
95
96
  assert first_type in (str, np.str_, int), \
96
97
  f"Sample id should be of type str or int. Got: {first_type.__name__}"
@@ -168,6 +168,7 @@ class LeapAnalysisConfiguration:
168
168
  feature_flags: Optional[List[str]] = None
169
169
  deterministic_results: Optional[bool] = None # if true, results will be deterministic but will increase memory usage and runtime
170
170
  ignore_latent_spaces: Optional[List[str]] = None # names of latent spaces to skip during extraction; see LeapBinder.check for validation rules
171
+ use_additional_set_as_unlabeled_candidate: Optional[bool] = None # None = engine default (ON); False keeps additional samples out of Label Next / Unlabelled Data / aggressor fixing
171
172
 
172
173
 
173
174
  @dataclass
@@ -1133,6 +1133,7 @@ class LeapBinder:
1133
1133
  self.check_false_positive_custom_latent_spaces(preprocess_result)
1134
1134
  self.check_simulations()
1135
1135
  self.validate_ignore_latent_spaces()
1136
+ self.validate_use_additional_set_as_unlabeled_candidate()
1136
1137
  print("Successful!")
1137
1138
 
1138
1139
  def validate_autoregressive_setup(self) -> None:
@@ -1232,5 +1233,15 @@ class LeapBinder:
1232
1233
  f"tokens=['foreground']."
1233
1234
  )
1234
1235
 
1236
+ def validate_use_additional_set_as_unlabeled_candidate(self) -> None:
1237
+ if not self.leap_analysis_configuration:
1238
+ return
1239
+ value = self.leap_analysis_configuration.use_additional_set_as_unlabeled_candidate
1240
+ if value is not None and not isinstance(value, bool):
1241
+ raise Exception(
1242
+ f"leap_analysis_configuration.use_additional_set_as_unlabeled_candidate must be "
1243
+ f"True, False or None, got {value!r} ({type(value).__name__})."
1244
+ )
1245
+
1235
1246
  def set_batch_size_to_validate(self, batch_size: int) -> None:
1236
1247
  self.batch_size_to_validate = batch_size
@@ -447,6 +447,7 @@ class LeapLoader(LeapLoaderBase):
447
447
  if metadata_name not in m_names:
448
448
  raise Exception(f"Domain gap metadata '{metadata_name}' is not found in dataset metadata list.")
449
449
  global_leap_binder.validate_ignore_latent_spaces()
450
+ global_leap_binder.validate_use_additional_set_as_unlabeled_candidate()
450
451
  except DatasetScriptException as e:
451
452
  line_number, file_name, stacktrace = get_root_exception_file_and_line_number()
452
453
  general_error = f"Something went wrong. {repr(e.__cause__)} in file {file_name}, line_number: {line_number}\nStacktrace:\n{stacktrace}"
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "code-loader"
3
- version = "1.0.215.dev1"
3
+ version = "1.0.216"
4
4
  description = ""
5
5
  authors = ["dorhar <doron.harnoy@tensorleap.ai>"]
6
6
  license = "MIT"