returnn 1.20250922.113348__py3-none-any.whl → 1.20250922.155846__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 returnn might be problematic. Click here for more details.

returnn/PKG-INFO CHANGED
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: returnn
3
- Version: 1.20250922.113348
3
+ Version: 1.20250922.155846
4
4
  Summary: The RWTH extensible training framework for universal recurrent neural networks
5
5
  Home-page: https://github.com/rwth-i6/returnn/
6
6
  Author: Albert Zeyer
@@ -1,2 +1,2 @@
1
- version = '1.20250922.113348'
2
- long_version = '1.20250922.113348+git.58aca86'
1
+ version = '1.20250922.155846'
2
+ long_version = '1.20250922.155846+git.2334ec6'
@@ -66,6 +66,13 @@ class Backend(Generic[T]):
66
66
  """
67
67
  raise NotImplementedError
68
68
 
69
+ @staticmethod
70
+ def should_pickle_tensor(raw_tensor: T) -> bool:
71
+ """
72
+ :return: whether the tensor should be included in a pickle or set to `None`.
73
+ """
74
+ return True
75
+
69
76
  @staticmethod
70
77
  def cond(pred: Tensor, true_fn: Callable, false_fn: Callable):
71
78
  """
@@ -588,7 +588,12 @@ class _TensorMixin(_TensorMixinBase):
588
588
 
589
589
  def __getstate__(self):
590
590
  d = {k: getattr(self, k) for k in self.__slots__}
591
- d["_raw_tensor"] = None # do not store the TF tensors
591
+ if (
592
+ self._raw_tensor is not None
593
+ and self._raw_backend is not None
594
+ and not self._raw_backend.should_pickle_tensor(self._raw_tensor)
595
+ ):
596
+ d["_raw_tensor"] = None
592
597
  return d
593
598
 
594
599
  def __setstate__(self, state):
@@ -45,6 +45,13 @@ class ReturnnLayersBackend(Backend[Layer]):
45
45
  """executing eagerly"""
46
46
  return False
47
47
 
48
+ @staticmethod
49
+ def should_pickle_tensor(raw_tensor: Layer) -> bool:
50
+ """
51
+ :return: whether the tensor should be included in a pickle or set to `None`.
52
+ """
53
+ return False
54
+
48
55
  @staticmethod
49
56
  def get_tensor_dependencies(x: Tensor[Layer]) -> Sequence[Tensor]:
50
57
  """get tensor inputs"""
@@ -38,6 +38,21 @@ class TFBackend(Backend[tf.Tensor]):
38
38
  """
39
39
  return tf.executing_eagerly()
40
40
 
41
+ @staticmethod
42
+ def should_pickle_tensor(raw_tensor: tf.Tensor) -> bool:
43
+ """
44
+ :return: whether the tensor should be included in a pickle or set to `None`.
45
+ """
46
+
47
+ from tensorflow.python.framework.ops import EagerTensor
48
+
49
+ # Can not pickle symbolic TF tensors.
50
+ #
51
+ # See for discussion:
52
+ # - https://github.com/rwth-i6/returnn/issues/1541
53
+ # - https://github.com/rwth-i6/returnn/issues/1763
54
+ return isinstance(raw_tensor, EagerTensor)
55
+
41
56
  @staticmethod
42
57
  def get_dtype_name_raw(raw_tensor: tf.Tensor) -> str:
43
58
  """
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: returnn
3
- Version: 1.20250922.113348
3
+ Version: 1.20250922.155846
4
4
  Summary: The RWTH extensible training framework for universal recurrent neural networks
5
5
  Home-page: https://github.com/rwth-i6/returnn/
6
6
  Author: Albert Zeyer
@@ -1,9 +1,9 @@
1
- returnn/PKG-INFO,sha256=yjd51TVi0Vvo8Lo1bBB-F7W0hCfoxTh1i0v99AvZXNA,5215
1
+ returnn/PKG-INFO,sha256=_tLrRBsotctlK2JO9venoFFVIKDm_CaT1s_KtSjmCf0,5215
2
2
  returnn/__init__.py,sha256=biBtRsM0WZ406vShaeH-9WFoqJ8XwTbn6g0EeFJ7l8E,1012
3
3
  returnn/__main__.py,sha256=lHyZcu_0yc9f7Vf_Kfdy9PmeU0T76XVXnpalHi5WKro,31740
4
4
  returnn/__old_mod_loader__.py,sha256=nvsNY-xELdS_IPNkv66Q9Rmvg4dbGW0-EBRDcCmctos,7654
5
5
  returnn/__setup__.py,sha256=22kQn2fh11iPM0hLb2Fy5sLmoU1JGvmDxXRYuRgQkwU,4659
6
- returnn/_setup_info_generated.py,sha256=6M0SlSD1yybvdTWNxhdgFMkjax6-M7S_y0SlOJpHQy4,77
6
+ returnn/_setup_info_generated.py,sha256=doToEY43Ijf3bmda-mfSLIIrU58QQanqyQOyZQfp8hw,77
7
7
  returnn/config.py,sha256=3tmKhB6FnQZaNdtcYsiB61JnEY--iZ2qmJ4yq0b6tE0,29140
8
8
  returnn/forward_iface.py,sha256=A_OJiaXsX4MlXQRzST86ylyxSUZbC402PQL1REcqHjM,911
9
9
  returnn/learning_rate_control.py,sha256=ZvWryAn_tv9DhV8sh1LV3eE34Yltl3On3mYZAG4hR9s,34684
@@ -75,7 +75,7 @@ returnn/extern/graph_editor/subgraph.py,sha256=q9o0zVBLDrTIidaXg5WG5daDW0mLbwv2J
75
75
  returnn/extern/graph_editor/transform.py,sha256=qMGSenpbAnGqdG6QP6iWjlm6_ccySYJaZKOoAj1dbOM,29348
76
76
  returnn/extern/graph_editor/util.py,sha256=HfRbyQPmQ6_n5-O-096n0KeJtllQXFtaurpeJS_URZ0,18706
77
77
  returnn/frontend/__init__.py,sha256=2aS7nbxXniIrBp2DODl0xN0f3IJ_dX4Bi9ZlR7W5_DE,1472
78
- returnn/frontend/_backend.py,sha256=39l5MC1DaT0MPklMM8HXAW9nqisIIZQ9g2QSHOOtPQE,50741
78
+ returnn/frontend/_backend.py,sha256=MVZn2HSkF3tsqchYvy2QM9pA4ILdKq07kj-_AAHGUy0,50942
79
79
  returnn/frontend/_cache.py,sha256=Uao2xzfvVaKABk1fkxcpXzxKIGJaI9FwwlTvvoNUstk,8550
80
80
  returnn/frontend/_numpy_backend.py,sha256=fZjks7p3dgxVZ6tSDazTTgBxNjJqXjfqgw_7mA7rDEE,9066
81
81
  returnn/frontend/_random_journal.py,sha256=_ktP_mjgx8vtQQGX_DofdhewJj0aPiczefTWeemPkmo,5457
@@ -155,7 +155,7 @@ returnn/sprint/interface.py,sha256=1j5SB0V8hSW8A5song9ciZtcBnZoKKfNipk9ezOIMuA,3
155
155
  returnn/tensor/README.md,sha256=X6BqcRLrPLPnwF9yR69uqIFrMnNluj9pBkOPHwNgzuo,501
156
156
  returnn/tensor/__init__.py,sha256=on6j5PEOQpck50UcsR4nJzJSDmoVy34z1Oq4efv6Ax0,154
157
157
  returnn/tensor/_dim_extra.py,sha256=N9qkz-1WZZY0XbpFjLg4aaNie3NfadvmanHcTOFoKeg,116154
158
- returnn/tensor/_tensor_extra.py,sha256=gbSl6HMtn8WFYloanew_RaNNwx3eCpnKv3UfCkntJiQ,164923
158
+ returnn/tensor/_tensor_extra.py,sha256=1UPNisRAbljkvfMcrEXaPAF-2Dz7AdgC3jAKVVAnAO8,165084
159
159
  returnn/tensor/_tensor_mixin_base.py,sha256=H5z86I0NejxrSgMH1c5oXQzBqS6L9HpvP4y7oegBaSc,643
160
160
  returnn/tensor/_tensor_op_overloads.py,sha256=HklwuTBjy7mH_665VKaCUdu-oC3aa7Uz1ZQiCz4jeZc,5448
161
161
  returnn/tensor/control_flow_ctx.py,sha256=L9e32AfYDUDgsEDHL07thSFyYFqwhyVSqzE_bM03Y4M,5252
@@ -177,7 +177,7 @@ returnn/tf/sprint.py,sha256=Yqjh0-6sCWHpdDPQCzHKx7TwQCOjJyjfd0KHtnYdd-8,5471
177
177
  returnn/tf/updater.py,sha256=RcvoGnjBcObbLfLHH_mDRSY2lTeLyNoAFsZpHUiIgRY,72036
178
178
  returnn/tf/frontend_layers/README.md,sha256=P4vVl_EK-4jT55m40mq-K4Nr9yFY0tJR5fmDzTHSDFE,1096
179
179
  returnn/tf/frontend_layers/__init__.py,sha256=MGUn7rv6fOefbtkX-5pq6fC1T6Y5h0oh1uOPSEcv1_I,506
180
- returnn/tf/frontend_layers/_backend.py,sha256=pxeX7g4nbGXot5gyqp32ajhOfVmBdaUNlSq4ZQsV9xM,47331
180
+ returnn/tf/frontend_layers/_backend.py,sha256=ZHfmVD8uN0yeyqXFPxYxpnfBbjIpGQl9ykKKW9hxdD0,47537
181
181
  returnn/tf/frontend_layers/_utils.py,sha256=ijByaDOqPDod5mZC9EoTkt8PHBEODXHsWbkwDOF9XW4,4205
182
182
  returnn/tf/frontend_layers/cond.py,sha256=bGd_g2tzpKXO218Xk-so59vFPJF-jF_ZvoZIU-1qBzw,14832
183
183
  returnn/tf/frontend_layers/config_entry_points.py,sha256=t01RWOiaZohzuqPXX-MLV0P5yCOfE0dz-9dZ77_pK4c,5751
@@ -190,7 +190,7 @@ returnn/tf/frontend_layers/masked_computation.py,sha256=I_TW0Qm4Yl_wPZ6TkuK7a-wB
190
190
  returnn/tf/frontend_layers/parameter_assign.py,sha256=B_7kgobRyFtExiuSy2MsVGpAR36-jdG-xKABGc6EUGM,5103
191
191
  returnn/tf/frontend_layers/prev_tensor_ref.py,sha256=EqTAanOgYAhl8o2fMylN52mfReH9heAQFdzn9CwqAX4,2282
192
192
  returnn/tf/frontend_low_level/__init__.py,sha256=34469k3KzMUIGowxReOZnbf6WdTjxY73Gp1a4WqDN1M,62
193
- returnn/tf/frontend_low_level/_backend.py,sha256=JwwRRIGnElqBC4bTImdB7w3U1u_SJESeZHYLmq86wog,24479
193
+ returnn/tf/frontend_low_level/_backend.py,sha256=Hv838I2eyOP2qVNWs5DJxseyxUbAET2lm0ZZcbW_CsE,24991
194
194
  returnn/tf/layers/__init__.py,sha256=Ngu-X84nWFgz7ndDu88DqoZ-5lUMMTQWH4g7N8pSoCg,72
195
195
  returnn/tf/layers/base.py,sha256=sUxEfh6WxaHWHG7O3cfxB6gG6YpEHkFKUJVayKvTBSI,152968
196
196
  returnn/tf/layers/basic.py,sha256=PMYNoMq8qH41QhWhJPg5Uc409GZHkcnecouorg9sqJY,615466
@@ -253,8 +253,8 @@ returnn/util/sig_proc.py,sha256=Tjz0VOAVyqu2qDCF5HZ1JjALjcFsHcNkcd96WgZeKfE,7265
253
253
  returnn/util/task_system.py,sha256=y4sMVXQ25Qd2z0rx03uOlXlkE-jbCYC1Sjfn-XlraVU,26003
254
254
  returnn/util/train_proc_manager.py,sha256=Pjht28k6uz6BNQ47uW6Gf880iyq5q4wx7P_K2tmoAM8,3266
255
255
  returnn/util/watch_memory.py,sha256=BR5P2kvBN6UI81cE0_1WAA6Hd1SByLbBaiDxvLhPOew,4213
256
- returnn-1.20250922.113348.dist-info/LICENSE,sha256=ywBD_U2aD4vpuoIgNAsjIGBYydl0tVKll3De0Z8s77c,11041
257
- returnn-1.20250922.113348.dist-info/METADATA,sha256=yjd51TVi0Vvo8Lo1bBB-F7W0hCfoxTh1i0v99AvZXNA,5215
258
- returnn-1.20250922.113348.dist-info/WHEEL,sha256=iAkIy5fosb7FzIOwONchHf19Qu7_1wCWyFNR5gu9nU0,91
259
- returnn-1.20250922.113348.dist-info/top_level.txt,sha256=Lsn4WZc5Pbfk0-xDQOgnFCxOoqxL4CyeM3N1TFbJncw,8
260
- returnn-1.20250922.113348.dist-info/RECORD,,
256
+ returnn-1.20250922.155846.dist-info/LICENSE,sha256=ywBD_U2aD4vpuoIgNAsjIGBYydl0tVKll3De0Z8s77c,11041
257
+ returnn-1.20250922.155846.dist-info/METADATA,sha256=_tLrRBsotctlK2JO9venoFFVIKDm_CaT1s_KtSjmCf0,5215
258
+ returnn-1.20250922.155846.dist-info/WHEEL,sha256=iAkIy5fosb7FzIOwONchHf19Qu7_1wCWyFNR5gu9nU0,91
259
+ returnn-1.20250922.155846.dist-info/top_level.txt,sha256=Lsn4WZc5Pbfk0-xDQOgnFCxOoqxL4CyeM3N1TFbJncw,8
260
+ returnn-1.20250922.155846.dist-info/RECORD,,