code-loader 1.0.132__py3-none-any.whl → 1.0.133__py3-none-any.whl

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.

Potentially problematic release.


This version of code-loader might be problematic. Click here for more details.

@@ -21,12 +21,22 @@ class NodeMappingType(Enum):
21
21
  Prediction1 = 'Prediction1'
22
22
  Prediction2 = 'Prediction2'
23
23
  Prediction3 = 'Prediction3'
24
+ Prediction4 = 'Prediction4'
25
+ Prediction5 = 'Prediction5'
26
+ Prediction6 = 'Prediction6'
27
+ Prediction7 = 'Prediction7'
28
+ Prediction8 = 'Prediction8'
29
+ Prediction9 = 'Prediction9'
24
30
  Input0 = 'Input0'
25
31
  Input1 = 'Input1'
26
32
  Input2 = 'Input2'
27
33
  Input3 = 'Input3'
28
34
  Input4 = 'Input4'
29
35
  Input5 = 'Input5'
36
+ Input6 = 'Input6'
37
+ Input7 = 'Input7'
38
+ Input8 = 'Input8'
39
+ Input9 = 'Input9'
30
40
  PredictionLabels = 'PredictionLabels'
31
41
 
32
42
 
@@ -39,6 +49,7 @@ class NodeMapping:
39
49
  arg_names: Optional[List[str]] = None
40
50
 
41
51
 
52
+
42
53
  @dataclass
43
54
  class NodeConnection:
44
55
  node: NodeMapping
@@ -69,6 +69,11 @@ def integration_test():
69
69
 
70
70
  return decorating_function
71
71
 
72
+ def _safe_get_item(key):
73
+ try:
74
+ return NodeMappingType[f'Input{str(key)}']
75
+ except ValueError:
76
+ raise Exception(f'Tensorleap currently supports models with no more then 10 inputs')
72
77
 
73
78
  def tensorleap_load_model(prediction_types: Optional[List[PredictionTypeHandler]] = None):
74
79
  for i, prediction_type in enumerate(prediction_types):
@@ -159,15 +164,20 @@ def tensorleap_load_model(prediction_types: Optional[List[PredictionTypeHandler]
159
164
  f'Expected key to be an int, got {type(key)} instead.'
160
165
 
161
166
  ret = TempMapping()
162
- ret.node_mapping = NodeMapping('', NodeMappingType(f'Prediction{str(key)}'))
167
+ try:
168
+ ret.node_mapping = NodeMapping('', NodeMappingType(f'Prediction{str(key)}'))
169
+ except ValueError as e:
170
+ raise Exception(f'Tensorleap currently supports models with no more then 10 active predictions,'
171
+ f' {key} not supported.')
163
172
  return ret
164
173
 
165
174
  class ModelPlaceholder:
175
+
166
176
  # keras interface
167
177
  def __call__(self, arg):
168
178
  if isinstance(arg, list):
169
179
  for i, elem in enumerate(arg):
170
- elem.node_mapping.type = NodeMappingType[f'Input{str(i)}']
180
+ elem.node_mapping.type = _safe_get_item(i)
171
181
  else:
172
182
  arg.node_mapping.type = NodeMappingType.Input0
173
183
 
@@ -182,14 +192,14 @@ def tensorleap_load_model(prediction_types: Optional[List[PredictionTypeHandler]
182
192
  if isinstance(input_key, NodeMappingType):
183
193
  elem.node_mapping.type = input_key
184
194
  else:
185
- elem.node_mapping.type = NodeMappingType[f'Input{str(i)}']
195
+ elem.node_mapping.type = _safe_get_item(i)
186
196
 
187
197
  return ModelOutputPlaceholder()
188
198
 
189
199
  def get_inputs(self):
190
200
  class FollowIndex:
191
201
  def __init__(self, index):
192
- self.name = NodeMappingType[f'Input{str(i)}']
202
+ self.name = _safe_get_item(index)
193
203
 
194
204
  class FollowInputIndex:
195
205
  def __init__(self):
@@ -8,11 +8,13 @@ import uuid
8
8
  from typing import Optional, Dict, Any
9
9
  import mixpanel # type: ignore[import]
10
10
 
11
+ TRACKING_VERSION = '1'
12
+
11
13
 
12
14
  class MixpanelTracker:
13
15
  """Handles Mixpanel event tracking for code-loader."""
14
16
 
15
- def __init__(self, token: str = "f1bf46fb339d8c2930cde8c1acf65491"):
17
+ def __init__(self, token: str = "0c1710c9656bbfb1056bb46093e23ca1"):
16
18
  self.token = token
17
19
  self.mp = mixpanel.Mixpanel(token)
18
20
  self._user_id: Optional[str] = None
@@ -106,6 +108,8 @@ class MixpanelTracker:
106
108
  device_id = self._get_or_create_device_id()
107
109
 
108
110
  properties = {
111
+ 'tracking_version': TRACKING_VERSION,
112
+ 'service': 'code-loader',
109
113
  'whoami': whoami,
110
114
  '$device_id': device_id, # Always use device_id for $device_id
111
115
  'python_version': f"{sys.version_info.major}.{sys.version_info.minor}.{sys.version_info.micro}",
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: code-loader
3
- Version: 1.0.132
3
+ Version: 1.0.133
4
4
  Summary:
5
5
  Home-page: https://github.com/tensorleap/code-loader
6
6
  License: MIT
@@ -4,7 +4,7 @@ code_loader/contract/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hS
4
4
  code_loader/contract/datasetclasses.py,sha256=u0gfDDy02skhFG3ejJOxqxCnykhAcBPGJfv8Bi4s9eQ,8966
5
5
  code_loader/contract/enums.py,sha256=GEFkvUMXnCNt-GOoz7NJ9ecQZ2PPDettJNOsxsiM0wk,1622
6
6
  code_loader/contract/exceptions.py,sha256=jWqu5i7t-0IG0jGRsKF4DjJdrsdpJjIYpUkN1F4RiyQ,51
7
- code_loader/contract/mapping.py,sha256=e11h_sprwOyE32PcqgRq9JvyahQrPzwqgkhmbQLKLQY,1165
7
+ code_loader/contract/mapping.py,sha256=sWJhpng-IkOzQnWQdMT5w2ZZ3X1Z_OOzSwCLXIS7oxE,1446
8
8
  code_loader/contract/responsedataclasses.py,sha256=6-5DJkYBdXb3UB1eNidTTPPBIYxMjEoMdYDkp9VhH8o,4223
9
9
  code_loader/contract/visualizer_classes.py,sha256=Wz9eItmoRaKEHa3p0aW0Ypxx4_xUmaZyLBznnTuxwi0,15425
10
10
  code_loader/default_losses.py,sha256=NoOQym1106bDN5dcIk56Elr7ZG5quUHArqfP5-Nyxyo,1139
@@ -21,17 +21,17 @@ code_loader/experiment_api/utils.py,sha256=XZHtxge12TS4H4-8PjV3sKuhp8Ud6ojAiIzTZ
21
21
  code_loader/experiment_api/workingspace_config_utils.py,sha256=DLzXQCg4dgTV_YgaSbeTVzq-2ja_SQw4zi7LXwKL9cY,990
22
22
  code_loader/inner_leap_binder/__init__.py,sha256=koOlJyMNYzGbEsoIbXathSmQ-L38N_pEXH_HvL7beXU,99
23
23
  code_loader/inner_leap_binder/leapbinder.py,sha256=Q3D9yVM-GNEJfYRFvMV__BoZbcWOgnWKhrZXAv6Tu7o,33232
24
- code_loader/inner_leap_binder/leapbinder_decorators.py,sha256=GNvckEpiFHpz3wf4S-e_js5u1WhUY6ntqqyjFCAdo_0,49478
24
+ code_loader/inner_leap_binder/leapbinder_decorators.py,sha256=WnHy5tdSwPI3RRFMcIHG_SYw0vaqE7t5URyhEtO635E,49896
25
25
  code_loader/leaploader.py,sha256=85XUWd7Y8kup76xeqefgd8db7pGaeHMhE7QlmYlNFMw,29747
26
26
  code_loader/leaploaderbase.py,sha256=LIFcC6xo6V_iiGN3BjibXETu_l84EWM_WIOKAvkfTiM,4458
27
- code_loader/mixpanel_tracker.py,sha256=mJaJvs8Pc5w3FEmSSObFIMVekcs5pKdM3iZmN4wVFqA,4822
27
+ code_loader/mixpanel_tracker.py,sha256=l9z_szKKQ7apEbdNZpGH1TKAiT_TsBHb9AQnePaWTyo,4942
28
28
  code_loader/plot_functions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
29
29
  code_loader/plot_functions/plot_functions.py,sha256=VyVWxd7R3lALIo2z8oZlYybbN0Ip6G0OiKNTNZ77xHk,14557
30
30
  code_loader/plot_functions/visualize.py,sha256=gsBAYYkwMh7jIpJeDMPS8G4CW-pxwx6LznoQIvi4vpo,657
31
31
  code_loader/utils.py,sha256=gXENTYpjdidq2dx0gVbXlErPeHoNs-4TYAZbLRe0y2c,2712
32
32
  code_loader/visualizers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
33
33
  code_loader/visualizers/default_visualizers.py,sha256=onRnLE_TXfgLN4o52hQIOOhUcFexGlqJ3xSpQDVLuZM,2604
34
- code_loader-1.0.132.dist-info/LICENSE,sha256=qIwWjdspQeSMTtnFZBC8MuT-95L02FPvzRUdWFxrwJY,1067
35
- code_loader-1.0.132.dist-info/METADATA,sha256=LznX_8RDqvRcsffXTU_q_1zXqqpyUosLei2w2VlRIMU,1090
36
- code_loader-1.0.132.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
37
- code_loader-1.0.132.dist-info/RECORD,,
34
+ code_loader-1.0.133.dist-info/LICENSE,sha256=qIwWjdspQeSMTtnFZBC8MuT-95L02FPvzRUdWFxrwJY,1067
35
+ code_loader-1.0.133.dist-info/METADATA,sha256=sVL_5pQ8RbASfejYdoE9Y4zvfAqxbzqInMVlnzw3TIY,1090
36
+ code_loader-1.0.133.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
37
+ code_loader-1.0.133.dist-info/RECORD,,