code-loader 1.0.166.dev1__tar.gz → 1.0.168__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.
- {code_loader-1.0.166.dev1 → code_loader-1.0.168}/PKG-INFO +1 -1
- {code_loader-1.0.166.dev1 → code_loader-1.0.168}/code_loader/inner_leap_binder/leapbinder_decorators.py +14 -14
- {code_loader-1.0.166.dev1 → code_loader-1.0.168}/pyproject.toml +1 -1
- {code_loader-1.0.166.dev1 → code_loader-1.0.168}/LICENSE +0 -0
- {code_loader-1.0.166.dev1 → code_loader-1.0.168}/README.md +0 -0
- {code_loader-1.0.166.dev1 → code_loader-1.0.168}/code_loader/__init__.py +0 -0
- {code_loader-1.0.166.dev1 → code_loader-1.0.168}/code_loader/contract/__init__.py +0 -0
- {code_loader-1.0.166.dev1 → code_loader-1.0.168}/code_loader/contract/datasetclasses.py +0 -0
- {code_loader-1.0.166.dev1 → code_loader-1.0.168}/code_loader/contract/enums.py +0 -0
- {code_loader-1.0.166.dev1 → code_loader-1.0.168}/code_loader/contract/exceptions.py +0 -0
- {code_loader-1.0.166.dev1 → code_loader-1.0.168}/code_loader/contract/mapping.py +0 -0
- {code_loader-1.0.166.dev1 → code_loader-1.0.168}/code_loader/contract/responsedataclasses.py +0 -0
- {code_loader-1.0.166.dev1 → code_loader-1.0.168}/code_loader/contract/visualizer_classes.py +0 -0
- {code_loader-1.0.166.dev1 → code_loader-1.0.168}/code_loader/default_losses.py +0 -0
- {code_loader-1.0.166.dev1 → code_loader-1.0.168}/code_loader/default_metrics.py +0 -0
- {code_loader-1.0.166.dev1 → code_loader-1.0.168}/code_loader/experiment_api/__init__.py +0 -0
- {code_loader-1.0.166.dev1 → code_loader-1.0.168}/code_loader/experiment_api/api.py +0 -0
- {code_loader-1.0.166.dev1 → code_loader-1.0.168}/code_loader/experiment_api/cli_config_utils.py +0 -0
- {code_loader-1.0.166.dev1 → code_loader-1.0.168}/code_loader/experiment_api/client.py +0 -0
- {code_loader-1.0.166.dev1 → code_loader-1.0.168}/code_loader/experiment_api/epoch.py +0 -0
- {code_loader-1.0.166.dev1 → code_loader-1.0.168}/code_loader/experiment_api/experiment.py +0 -0
- {code_loader-1.0.166.dev1 → code_loader-1.0.168}/code_loader/experiment_api/experiment_context.py +0 -0
- {code_loader-1.0.166.dev1 → code_loader-1.0.168}/code_loader/experiment_api/types.py +0 -0
- {code_loader-1.0.166.dev1 → code_loader-1.0.168}/code_loader/experiment_api/utils.py +0 -0
- {code_loader-1.0.166.dev1 → code_loader-1.0.168}/code_loader/experiment_api/workingspace_config_utils.py +0 -0
- {code_loader-1.0.166.dev1 → code_loader-1.0.168}/code_loader/inner_leap_binder/__init__.py +0 -0
- {code_loader-1.0.166.dev1 → code_loader-1.0.168}/code_loader/inner_leap_binder/leapbinder.py +0 -0
- {code_loader-1.0.166.dev1 → code_loader-1.0.168}/code_loader/leaploader.py +0 -0
- {code_loader-1.0.166.dev1 → code_loader-1.0.168}/code_loader/leaploaderbase.py +0 -0
- {code_loader-1.0.166.dev1 → code_loader-1.0.168}/code_loader/mixpanel_tracker.py +0 -0
- {code_loader-1.0.166.dev1 → code_loader-1.0.168}/code_loader/plot_functions/__init__.py +0 -0
- {code_loader-1.0.166.dev1 → code_loader-1.0.168}/code_loader/plot_functions/plot_functions.py +0 -0
- {code_loader-1.0.166.dev1 → code_loader-1.0.168}/code_loader/plot_functions/visualize.py +0 -0
- {code_loader-1.0.166.dev1 → code_loader-1.0.168}/code_loader/utils.py +0 -0
- {code_loader-1.0.166.dev1 → code_loader-1.0.168}/code_loader/visualizers/__init__.py +0 -0
- {code_loader-1.0.166.dev1 → code_loader-1.0.168}/code_loader/visualizers/default_visualizers.py +0 -0
|
@@ -413,6 +413,10 @@ def tensorleap_load_model(prediction_types: Optional[List[PredictionTypeHandler]
|
|
|
413
413
|
f"Expected input names: {[i.name for i in self.model.get_inputs()]}"
|
|
414
414
|
)
|
|
415
415
|
|
|
416
|
+
missing = [n for n in meta if n not in float_arrays_inputs]
|
|
417
|
+
if missing:
|
|
418
|
+
raise KeyError(f"Missing required input(s): {sorted(missing)}")
|
|
419
|
+
|
|
416
420
|
onnx_input_order = [i.name for i in self.model.get_inputs()]
|
|
417
421
|
provided_order = list(float_arrays_inputs.keys())
|
|
418
422
|
if provided_order != onnx_input_order:
|
|
@@ -430,17 +434,11 @@ def tensorleap_load_model(prediction_types: Optional[List[PredictionTypeHandler]
|
|
|
430
434
|
if want_dtype is None:
|
|
431
435
|
raise TypeError(f"Unsupported ONNX input type: {onnx_type}")
|
|
432
436
|
|
|
433
|
-
# Cast dtype if needed
|
|
434
437
|
if arr.dtype != want_dtype:
|
|
435
438
|
arr = arr.astype(want_dtype, copy=False)
|
|
436
439
|
|
|
437
440
|
coerced[name] = arr
|
|
438
441
|
|
|
439
|
-
# Verify required inputs are present
|
|
440
|
-
missing = [n for n in meta if n not in coerced]
|
|
441
|
-
if missing:
|
|
442
|
-
raise KeyError(f"Missing required input(s): {sorted(missing)}")
|
|
443
|
-
|
|
444
442
|
return coerced
|
|
445
443
|
|
|
446
444
|
# onnx runtime interface
|
|
@@ -1078,10 +1076,16 @@ def tensorleap_preprocess():
|
|
|
1078
1076
|
else f"{user_function.__name__}() validation failed: expected to return a single list[{PreprocessResponse.__name__}] object, "
|
|
1079
1077
|
f"but returned {len(result)} objects instead."
|
|
1080
1078
|
)
|
|
1079
|
+
assert len(result) >= 2, \
|
|
1080
|
+
(f'{user_function.__name__}() validation failed: '
|
|
1081
|
+
f'Expected at least 2 PreprocessResponse objects (training and validation), but got {len(result)}.')
|
|
1081
1082
|
for i, response in enumerate(result):
|
|
1082
1083
|
assert isinstance(response, PreprocessResponse), \
|
|
1083
1084
|
(f'{user_function.__name__}() validation failed: '
|
|
1084
1085
|
f'Element #{i} in the return list should be a PreprocessResponse. Got {type(response)}.')
|
|
1086
|
+
assert len(response) > 0, \
|
|
1087
|
+
(f'{user_function.__name__}() validation failed: '
|
|
1088
|
+
f'PreprocessResponse #{i} has length 0. Each PreprocessResponse must have at least one sample.')
|
|
1085
1089
|
assert len(set(result)) == len(result), \
|
|
1086
1090
|
(f'{user_function.__name__}() validation failed: '
|
|
1087
1091
|
f'The return list should not contain duplicate PreprocessResponse objects.')
|
|
@@ -1650,8 +1654,8 @@ def tensorleap_status_table():
|
|
|
1650
1654
|
code_mapping_failure = [0]
|
|
1651
1655
|
|
|
1652
1656
|
table = [
|
|
1653
|
-
{"name": "tensorleap_preprocess", "Added to integration": UNKNOWN},
|
|
1654
1657
|
{"name": "tensorleap_integration_test", "Added to integration": UNKNOWN},
|
|
1658
|
+
{"name": "tensorleap_preprocess", "Added to integration": UNKNOWN},
|
|
1655
1659
|
{"name": "tensorleap_input_encoder", "Added to integration": UNKNOWN},
|
|
1656
1660
|
{"name": "tensorleap_gt_encoder", "Added to integration": UNKNOWN},
|
|
1657
1661
|
{"name": "tensorleap_load_model", "Added to integration": UNKNOWN},
|
|
@@ -1735,12 +1739,8 @@ def tensorleap_status_table():
|
|
|
1735
1739
|
mandatory_ready_mess = "\nAll mandatory parts have been successfully set. If no errors accured, you can now push the project to the Tensorleap system or continue to the next optional reccomeded interface,adding: "
|
|
1736
1740
|
code_mapping_failure_mes = "Tensorleap_integration_test code flow failed, check raised exception."
|
|
1737
1741
|
|
|
1738
|
-
|
|
1739
|
-
|
|
1740
|
-
sorted_table = sorted(table, key=lambda row: status_order.get(row["Added to integration"], 3))
|
|
1741
|
-
|
|
1742
|
-
name_width = max(len(row["name"]) for row in sorted_table)
|
|
1743
|
-
status_width = max(len(row["Added to integration"]) for row in sorted_table)
|
|
1742
|
+
name_width = max(len(row["name"]) for row in table)
|
|
1743
|
+
status_width = max(len(row["Added to integration"]) for row in table)
|
|
1744
1744
|
|
|
1745
1745
|
header = f"{'Decorator Name'.ljust(name_width)} | {'Added to integration'.ljust(status_width)}"
|
|
1746
1746
|
sep = "-" * len(header)
|
|
@@ -1748,7 +1748,7 @@ def tensorleap_status_table():
|
|
|
1748
1748
|
print("\n" + header)
|
|
1749
1749
|
print(sep)
|
|
1750
1750
|
|
|
1751
|
-
for row in
|
|
1751
|
+
for row in table:
|
|
1752
1752
|
print(f"{row['name'].ljust(name_width)} | {row['Added to integration'].ljust(status_width)}")
|
|
1753
1753
|
|
|
1754
1754
|
# Determine next_step based on original table order (recommended integration order)
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{code_loader-1.0.166.dev1 → code_loader-1.0.168}/code_loader/contract/responsedataclasses.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{code_loader-1.0.166.dev1 → code_loader-1.0.168}/code_loader/experiment_api/cli_config_utils.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{code_loader-1.0.166.dev1 → code_loader-1.0.168}/code_loader/experiment_api/experiment_context.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{code_loader-1.0.166.dev1 → code_loader-1.0.168}/code_loader/inner_leap_binder/leapbinder.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{code_loader-1.0.166.dev1 → code_loader-1.0.168}/code_loader/plot_functions/plot_functions.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{code_loader-1.0.166.dev1 → code_loader-1.0.168}/code_loader/visualizers/default_visualizers.py
RENAMED
|
File without changes
|