returnn 1.20250901.123052__py3-none-any.whl → 1.20260105.192646__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.
- returnn/PKG-INFO +2 -2
- returnn/_setup_info_generated.py +2 -2
- returnn/config.py +1 -1
- returnn/datasets/basic.py +29 -13
- returnn/datasets/distrib_files.py +61 -3
- returnn/datasets/generating.py +12 -21
- returnn/datasets/huggingface.py +434 -0
- returnn/datasets/lm.py +20 -0
- returnn/datasets/meta.py +179 -60
- returnn/datasets/multi_proc.py +1 -1
- returnn/datasets/postprocessing.py +597 -108
- returnn/datasets/text_dict.py +1 -1
- returnn/datasets/util/vocabulary.py +90 -0
- returnn/frontend/_backend.py +7 -0
- returnn/frontend/array_.py +54 -1
- returnn/frontend/attention.py +54 -20
- returnn/frontend/conv.py +273 -54
- returnn/frontend/decoder/transformer.py +36 -17
- returnn/frontend/encoder/conformer.py +1 -0
- returnn/frontend/encoder/transformer.py +2 -0
- returnn/frontend/loss.py +40 -1
- returnn/frontend/module.py +8 -1
- returnn/frontend/nested.py +9 -0
- returnn/native_op.cpp +80 -0
- returnn/sprint/cache.py +12 -13
- returnn/tensor/_dim_extra.py +51 -29
- returnn/tensor/_tensor_extra.py +6 -1
- returnn/tensor/utils.py +7 -4
- returnn/tf/frontend_layers/_backend.py +11 -2
- returnn/tf/frontend_low_level/_backend.py +15 -0
- returnn/tf/layers/basic.py +16 -38
- returnn/tf/native_op.py +11 -58
- returnn/tf/network.py +1 -1
- returnn/tf/util/basic.py +19 -0
- returnn/torch/data/returnn_dataset_wrapper.py +9 -3
- returnn/torch/engine.py +67 -2
- returnn/torch/frontend/_backend.py +119 -7
- returnn/torch/util/diagnose_gpu.py +65 -31
- returnn/torch/util/exception_helper.py +7 -1
- returnn/util/basic.py +6 -7
- returnn/util/better_exchook.py +4 -0
- returnn/util/collect_outputs_dict.py +79 -0
- returnn/util/debug.py +11 -2
- returnn/util/file_cache.py +42 -4
- returnn/util/task_system.py +1 -1
- {returnn-1.20250901.123052.dist-info → returnn-1.20260105.192646.dist-info}/METADATA +2 -2
- {returnn-1.20250901.123052.dist-info → returnn-1.20260105.192646.dist-info}/RECORD +50 -48
- {returnn-1.20250901.123052.dist-info → returnn-1.20260105.192646.dist-info}/LICENSE +0 -0
- {returnn-1.20250901.123052.dist-info → returnn-1.20260105.192646.dist-info}/WHEEL +0 -0
- {returnn-1.20250901.123052.dist-info → returnn-1.20260105.192646.dist-info}/top_level.txt +0 -0
returnn/util/file_cache.py
CHANGED
|
@@ -9,6 +9,7 @@ See https://github.com/rwth-i6/returnn/issues/1519 for initial discussion.
|
|
|
9
9
|
Main class is :class:`FileCache`.
|
|
10
10
|
"""
|
|
11
11
|
|
|
12
|
+
from __future__ import annotations
|
|
12
13
|
from typing import Any, Collection, Dict, Iterable, List, Optional, Tuple, Union
|
|
13
14
|
import errno
|
|
14
15
|
import os
|
|
@@ -143,12 +144,12 @@ class FileCache:
|
|
|
143
144
|
filenames = [filenames]
|
|
144
145
|
self._touch_files_thread.files_remove(fn_ for fn in filenames for fn_ in [fn, self._get_info_filename(fn)])
|
|
145
146
|
|
|
146
|
-
def cleanup(self, *, need_at_least_free_space_size: int = 0):
|
|
147
|
+
def cleanup(self, *, need_at_least_free_space_size: int = 0) -> CleanupResult:
|
|
147
148
|
"""
|
|
148
149
|
Cleanup cache directory.
|
|
149
150
|
"""
|
|
150
151
|
if not os.path.exists(self.cache_directory):
|
|
151
|
-
return
|
|
152
|
+
return CleanupResult(abort_reason="cache directory does not exist")
|
|
152
153
|
disk_usage = shutil.disk_usage(self.cache_directory)
|
|
153
154
|
want_free_space_size = max(
|
|
154
155
|
int(self._cleanup_disk_usage_wanted_multiplier * need_at_least_free_space_size),
|
|
@@ -164,7 +165,13 @@ class FileCache:
|
|
|
164
165
|
cur_time = time.time()
|
|
165
166
|
# If we have enough free space, and we did a full cleanup recently, we don't need to do anything.
|
|
166
167
|
if want_free_space_size <= disk_usage.free and cur_time - last_full_cleanup < 60 * 10:
|
|
167
|
-
return
|
|
168
|
+
return CleanupResult(
|
|
169
|
+
abort_reason=(
|
|
170
|
+
f"enough free space"
|
|
171
|
+
f" ({human_bytes_size(want_free_space_size)} < {human_bytes_size(disk_usage.free)})"
|
|
172
|
+
f" and recent cleanup ({(cur_time - last_full_cleanup) / 60:.1f} minutes ago)"
|
|
173
|
+
)
|
|
174
|
+
)
|
|
168
175
|
# immediately update the file's timestamp to reduce racyness between worker processes
|
|
169
176
|
# Path().touch() also creates the file if it doesn't exist yet
|
|
170
177
|
pathlib.Path(cleanup_timestamp_file).touch(exist_ok=True)
|
|
@@ -319,6 +326,8 @@ class FileCache:
|
|
|
319
326
|
except Exception as exc:
|
|
320
327
|
print(f"FileCache: Error while removing empty dir {root}: {type(exc).__name__}: {exc}")
|
|
321
328
|
|
|
329
|
+
return CleanupResult(freed=cur_expected_free - disk_usage.free)
|
|
330
|
+
|
|
322
331
|
def handle_cached_files_in_config(self, config: Any) -> Tuple[Any, List[str]]:
|
|
323
332
|
"""
|
|
324
333
|
:param config: some config, e.g. dict, or any nested structure
|
|
@@ -417,7 +426,21 @@ class FileCache:
|
|
|
417
426
|
orig_mtime_ns = os.stat(src_filename).st_mtime_ns
|
|
418
427
|
FileInfo(mtime_ns=orig_mtime_ns).save(info_file_name)
|
|
419
428
|
|
|
420
|
-
|
|
429
|
+
try:
|
|
430
|
+
_copy_with_prealloc(src_filename, dst_tmp_filename)
|
|
431
|
+
except Exception:
|
|
432
|
+
# Cleanup if it was created already.
|
|
433
|
+
# That avoids some of the ambiguity of the existence of the .copy file.
|
|
434
|
+
# https://github.com/rwth-i6/returnn/issues/1785
|
|
435
|
+
try:
|
|
436
|
+
os.remove(dst_tmp_filename)
|
|
437
|
+
except FileNotFoundError:
|
|
438
|
+
pass
|
|
439
|
+
try:
|
|
440
|
+
os.remove(info_file_name)
|
|
441
|
+
except FileNotFoundError: # not really expected here, but safe to ignore
|
|
442
|
+
pass
|
|
443
|
+
raise
|
|
421
444
|
os.rename(dst_tmp_filename, dst_filename)
|
|
422
445
|
|
|
423
446
|
@staticmethod
|
|
@@ -445,6 +468,21 @@ class FileCache:
|
|
|
445
468
|
return True
|
|
446
469
|
|
|
447
470
|
|
|
471
|
+
class CleanupResult:
|
|
472
|
+
"""
|
|
473
|
+
Result from :func:`FileCache.cleanup`.
|
|
474
|
+
"""
|
|
475
|
+
|
|
476
|
+
def __init__(self, *, freed: int = 0, abort_reason: Optional[str] = None):
|
|
477
|
+
self.freed = freed
|
|
478
|
+
self.abort_reason = abort_reason
|
|
479
|
+
|
|
480
|
+
def __repr__(self):
|
|
481
|
+
if self.abort_reason:
|
|
482
|
+
return f"CleanupResult(abort_reason={self.abort_reason})"
|
|
483
|
+
return f"CleanupResult(freed={human_bytes_size(self.freed)})"
|
|
484
|
+
|
|
485
|
+
|
|
448
486
|
def get_instance(config: Optional[Config] = None) -> FileCache:
|
|
449
487
|
"""
|
|
450
488
|
Returns a file cache instance potentially initialized by the global config.
|
returnn/util/task_system.py
CHANGED
|
@@ -671,7 +671,7 @@ class Pickler(_BasePickler):
|
|
|
671
671
|
return
|
|
672
672
|
# For some reason, Numpy fromstring/tostring is faster than Numpy loads/dumps.
|
|
673
673
|
self.save(make_numpy_ndarray_fromstring)
|
|
674
|
-
self.save((obj.
|
|
674
|
+
self.save((obj.tobytes(), str(obj.dtype), obj.shape))
|
|
675
675
|
self.write(pickle.REDUCE)
|
|
676
676
|
|
|
677
677
|
dispatch[numpy.ndarray] = save_ndarray
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: returnn
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.20260105.192646
|
|
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
|
|
@@ -36,7 +36,7 @@ Welcome to RETURNN
|
|
|
36
36
|
`RETURNN paper 2018 <https://arxiv.org/abs/1805.05225>`_.
|
|
37
37
|
|
|
38
38
|
RETURNN - RWTH extensible training framework for universal recurrent neural networks,
|
|
39
|
-
is a
|
|
39
|
+
is a PyTorch/TensorFlow-based implementation of modern recurrent neural network architectures.
|
|
40
40
|
It is optimized for fast and reliable training of recurrent neural networks in a multi-GPU environment.
|
|
41
41
|
|
|
42
42
|
The high-level features and goals of RETURNN are:
|
|
@@ -1,40 +1,41 @@
|
|
|
1
|
-
returnn/PKG-INFO,sha256=
|
|
1
|
+
returnn/PKG-INFO,sha256=jqFiOkEQgJcdKNaO9ISAulL31UxmgD3XbysYERiHCp0,5216
|
|
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=
|
|
7
|
-
returnn/config.py,sha256=
|
|
6
|
+
returnn/_setup_info_generated.py,sha256=DDcUMIhrwQNitCW-h7MYuVKCTHNiUEIm4-xXNzgxHV4,77
|
|
7
|
+
returnn/config.py,sha256=JK8EjDsUdyY2c90s0KY1rLD1kesVfz6vRT0gxy_AQ5I,29142
|
|
8
8
|
returnn/forward_iface.py,sha256=A_OJiaXsX4MlXQRzST86ylyxSUZbC402PQL1REcqHjM,911
|
|
9
9
|
returnn/learning_rate_control.py,sha256=ZvWryAn_tv9DhV8sh1LV3eE34Yltl3On3mYZAG4hR9s,34684
|
|
10
10
|
returnn/log.py,sha256=WoTDv4XDovgvgXa7iiav-nA8pb25lOEzndbnVrDLfUo,12319
|
|
11
|
-
returnn/native_op.cpp,sha256=
|
|
11
|
+
returnn/native_op.cpp,sha256=itGDV05Nqg59g37qXAt-Z4c-rX7eDRQFY9efDPjaVlg,38613
|
|
12
12
|
returnn/native_op.py,sha256=4_NnvfNxsM8GE_FsD6yOg6PZegqIdtJ3Sl1GdBWmFvg,244424
|
|
13
13
|
returnn/pretrain.py,sha256=MHiXJZqkQFmDVyaYsGpd_Acv20wxl7Pr6s6qJzAT2FI,22648
|
|
14
14
|
returnn/datasets/__init__.py,sha256=PvDlfDOaaopIeUIt0OSvHD2eHZkdkyE-sjMXf35EH5U,390
|
|
15
15
|
returnn/datasets/audio.py,sha256=Gmj7a08dnvYh7Z-G1TNapz42L50AIcDE9JeIZaO1s1M,23334
|
|
16
|
-
returnn/datasets/basic.py,sha256=
|
|
16
|
+
returnn/datasets/basic.py,sha256=s0Vjag5lJ5wGXKENN4KHwGtx7ZDiLdWAFIjFbiqAQsE,74159
|
|
17
17
|
returnn/datasets/bundle_file.py,sha256=KQNrS1MSf-4_idlK0c0KFwON-f5sEK0sWU15WpoMYpE,2380
|
|
18
18
|
returnn/datasets/cached.py,sha256=RyefRjSDdp-HveK-2vLy2C6BIHcpqQ_lNvUKlIa4QAI,25412
|
|
19
19
|
returnn/datasets/cached2.py,sha256=oJOq2lWRQpxm6kyUKW1w5qZBd4kdKEpwM7KY_QnXbq4,11922
|
|
20
|
-
returnn/datasets/distrib_files.py,sha256=
|
|
21
|
-
returnn/datasets/generating.py,sha256=
|
|
20
|
+
returnn/datasets/distrib_files.py,sha256=48edqdf7YpnPJ-TOis3Mz5U9A2DSxfiYT1HCMSti3zw,32718
|
|
21
|
+
returnn/datasets/generating.py,sha256=o9-JZ2s5QKssux6GcSaM3oivf_PE6nhSOeytRyGB7pQ,99574
|
|
22
22
|
returnn/datasets/hdf.py,sha256=v5sjBenURR9Z-g7AQ9tsL84yDSye5RtbLpym3M6HSDE,67833
|
|
23
|
-
returnn/datasets/
|
|
23
|
+
returnn/datasets/huggingface.py,sha256=ls9WMR6gUcMgGksl80g0An1az5Xjya_V3ojbbbsZqrU,20047
|
|
24
|
+
returnn/datasets/lm.py,sha256=CXl_g-Z28RWlBTzx35uC4r_GCwOP05LIsUp0iSi6JG4,100652
|
|
24
25
|
returnn/datasets/map.py,sha256=kOBJVZmwDhLsOplzDNByIfa0NRSUaMo2Lsy36lBvxrM,10907
|
|
25
|
-
returnn/datasets/meta.py,sha256=
|
|
26
|
-
returnn/datasets/multi_proc.py,sha256=
|
|
26
|
+
returnn/datasets/meta.py,sha256=hTtfwINIxP2S4JQ5IQXzvTh2MixwxzeF06pPTW36yl0,101456
|
|
27
|
+
returnn/datasets/multi_proc.py,sha256=BClXq0fActi1XQa4vcMhHmhYF0Q-fnnDzlIlbBM6_DM,22614
|
|
27
28
|
returnn/datasets/normalization_data.py,sha256=J3njQCMvWAbIAVPepO2L_Xdau9eWYB7Zyd6STeGzTbc,14615
|
|
28
29
|
returnn/datasets/numpy_dump.py,sha256=wl8bKIKAlff2HPJPtuu5wBg3TLOf16d2wLVB4lLAwTM,5158
|
|
29
|
-
returnn/datasets/postprocessing.py,sha256=
|
|
30
|
+
returnn/datasets/postprocessing.py,sha256=Yy7rSzpB8z6PkUTZsPE_AN9Di8FPdNn617JTCV7L-VI,42453
|
|
30
31
|
returnn/datasets/raw_wav.py,sha256=M7eTHp4CTtLQf3yPTiJY-mSJYgZNxkGV9IFN9J1dq_4,9144
|
|
31
32
|
returnn/datasets/sprint.py,sha256=JAs5dOmdteSOwA7YQcTF9KaTCtGfRjiyJUZClSr85pY,55502
|
|
32
33
|
returnn/datasets/stereo.py,sha256=PkowC91bZWihIYuIZgyGgPcNwgq5jBvyxxu1nER-VhM,17633
|
|
33
|
-
returnn/datasets/text_dict.py,sha256=
|
|
34
|
+
returnn/datasets/text_dict.py,sha256=xOWwZc5xGVg2Ic1Ezbm-uEcj_i7ajxqRfPn_TihQbzc,10009
|
|
34
35
|
returnn/datasets/util/__init__.py,sha256=rEKhSD6fyhDiQF-x7dUQMwa29JZu72SDm7mYcCcLghY,52
|
|
35
36
|
returnn/datasets/util/feature_extraction.py,sha256=axtXDb9wcNpOmyhmW3WJUj5xda29TKkKvOcGGvq7ExA,23923
|
|
36
37
|
returnn/datasets/util/strings.py,sha256=pP8pmXhArkssYqmPOLuxEG9gsko891ZxrWiai86qbLE,412
|
|
37
|
-
returnn/datasets/util/vocabulary.py,sha256=
|
|
38
|
+
returnn/datasets/util/vocabulary.py,sha256=994cHmRI3Yy8mHL79oCMrJITRIS9su11V2zizF5__Fo,31389
|
|
38
39
|
returnn/engine/__init__.py,sha256=br7hpn8i_hIBi2uTQfnN3BF9g5DREYa_mQi0_Nvlu6o,228
|
|
39
40
|
returnn/engine/base.py,sha256=0n4FtB_B2H3W_9KdoLr0P7YPER-hVkbk69pwFqsqmqw,18467
|
|
40
41
|
returnn/engine/batch.py,sha256=amXW8mGspuSQjo00JdisE2eOLy5Ij1weWWzkE-lXSJM,9912
|
|
@@ -75,20 +76,20 @@ returnn/extern/graph_editor/subgraph.py,sha256=q9o0zVBLDrTIidaXg5WG5daDW0mLbwv2J
|
|
|
75
76
|
returnn/extern/graph_editor/transform.py,sha256=qMGSenpbAnGqdG6QP6iWjlm6_ccySYJaZKOoAj1dbOM,29348
|
|
76
77
|
returnn/extern/graph_editor/util.py,sha256=HfRbyQPmQ6_n5-O-096n0KeJtllQXFtaurpeJS_URZ0,18706
|
|
77
78
|
returnn/frontend/__init__.py,sha256=2aS7nbxXniIrBp2DODl0xN0f3IJ_dX4Bi9ZlR7W5_DE,1472
|
|
78
|
-
returnn/frontend/_backend.py,sha256=
|
|
79
|
+
returnn/frontend/_backend.py,sha256=MVZn2HSkF3tsqchYvy2QM9pA4ILdKq07kj-_AAHGUy0,50942
|
|
79
80
|
returnn/frontend/_cache.py,sha256=Uao2xzfvVaKABk1fkxcpXzxKIGJaI9FwwlTvvoNUstk,8550
|
|
80
81
|
returnn/frontend/_numpy_backend.py,sha256=fZjks7p3dgxVZ6tSDazTTgBxNjJqXjfqgw_7mA7rDEE,9066
|
|
81
82
|
returnn/frontend/_random_journal.py,sha256=_ktP_mjgx8vtQQGX_DofdhewJj0aPiczefTWeemPkmo,5457
|
|
82
83
|
returnn/frontend/_utils.py,sha256=uVQldGHyYKIyhSEmumJ04ix5eP5tjZw4CEC0w6-zhyQ,12074
|
|
83
|
-
returnn/frontend/array_.py,sha256=
|
|
84
|
-
returnn/frontend/attention.py,sha256=
|
|
84
|
+
returnn/frontend/array_.py,sha256=O-q137hb7V-Rw1xWV2ezDyFYepVXQlnqWcPDZ_WLUN8,56660
|
|
85
|
+
returnn/frontend/attention.py,sha256=bFD9Ei6GxSi-BC1OfueDyTIE-51a3dKKZOWdSIbz7l8,46633
|
|
85
86
|
returnn/frontend/backend.py,sha256=iQ9w4xl8Ea7bgpb0VUaCKq50rV5Bl2E5J8Rhd-oqD_c,883
|
|
86
87
|
returnn/frontend/build_from_dict.py,sha256=rfWa2rjjhIR_kIQED_nMrygrQBunS6unegzWTLVbC98,3017
|
|
87
88
|
returnn/frontend/cond.py,sha256=gh6wg0aSbAJQfKRv4BQAu-EfPWtWPLFjgc8IaPPFmwg,1023
|
|
88
89
|
returnn/frontend/const.py,sha256=A5fP9w6Akv56d89pPvdoZaXvC9ZTYcexepnS9O2clOc,3945
|
|
89
90
|
returnn/frontend/container.py,sha256=wF3OlQN7WlOVmmdapUth_Unha3DVf6h1B7okBJAuJDA,8011
|
|
90
91
|
returnn/frontend/control_flow_ctx.py,sha256=v17CsNwRnZYe8GdMtGJt2ftibfxMCGK1i0l-GX5ILu0,699
|
|
91
|
-
returnn/frontend/conv.py,sha256=
|
|
92
|
+
returnn/frontend/conv.py,sha256=RbVyFGspn40VNT1B-KWWaDBBUhd7VFhKTN-V_SrwPlU,39514
|
|
92
93
|
returnn/frontend/device.py,sha256=Sjara0EmFLhu9O55cN_p6OwU0NgdNCCQjyAuQhiWpGw,1437
|
|
93
94
|
returnn/frontend/dims.py,sha256=_HDU-Kxn3pApicFkm0F4Fs-ZAuF1gKXG8rroQHCFQQI,13073
|
|
94
95
|
returnn/frontend/dropout.py,sha256=TjqZCKDIOBeHr14-NCemOm9m3p84LxQuPH1DvRAYg88,5028
|
|
@@ -100,11 +101,11 @@ returnn/frontend/init.py,sha256=bVB7bpghaY8DI_HL0mkB_9z95onWnIX2zlW4hlMYnRw,7494
|
|
|
100
101
|
returnn/frontend/label_smoothing.py,sha256=lxmaowNr61sCMzMewqHhu1r0CcklYfhLXlFnBu8DeAU,5676
|
|
101
102
|
returnn/frontend/linear.py,sha256=xRUjnkD3MTWDezSaYATBYJQ2fa1RhKMNrTuhC54hhVs,2252
|
|
102
103
|
returnn/frontend/loop.py,sha256=t-z6ke1X03I2aPUEqLYmVZWyMzfW3IedFvKUGc-TCX8,16160
|
|
103
|
-
returnn/frontend/loss.py,sha256=
|
|
104
|
+
returnn/frontend/loss.py,sha256=aSKzjhjIikeNJqzcUBBlaBTXILuAoW6wrmsExGtJJBY,8572
|
|
104
105
|
returnn/frontend/math_.py,sha256=A_RkZ5lH2uXMchfPIH3itraWtMNNCVckQHHpf7aIIZQ,17295
|
|
105
106
|
returnn/frontend/matmul.py,sha256=xkueyxzSDz8MsYaWxPSjmV2Yy-tcaiOQDXbFt1IQM2A,1944
|
|
106
|
-
returnn/frontend/module.py,sha256=
|
|
107
|
-
returnn/frontend/nested.py,sha256=
|
|
107
|
+
returnn/frontend/module.py,sha256=nt35I9xyHuH42qobLHGUFoNI5-mVieAtA36SqK6NhpY,11065
|
|
108
|
+
returnn/frontend/nested.py,sha256=PKsKWHwE2SI19DjZ9vRI8q4-ywIGMK3-TTUuqdXrVlM,15592
|
|
108
109
|
returnn/frontend/normalization.py,sha256=NrIIaZ3c2yf-WH2R9lPaL2TAq4IcNQc4OE5kFYdoihw,14139
|
|
109
110
|
returnn/frontend/parameter.py,sha256=zvrkhSYC1c_O9kVwgHvOtOnWNurl5J28lkS0i1LQpWU,10627
|
|
110
111
|
returnn/frontend/parametrizations.py,sha256=ptNgBw5IiPXVpB3QGse7AGAhdXp8X1rCqYUl2Mae8aI,2876
|
|
@@ -135,27 +136,27 @@ returnn/frontend/conversions/espnet_e_branchformer.py,sha256=Mmp3G6nySy0CqeHa-um
|
|
|
135
136
|
returnn/frontend/conversions/hf_llama.py,sha256=1WQOhQyUWwkAznaRqK2zpThP8XZbaomkaE8qMG_bZPY,9662
|
|
136
137
|
returnn/frontend/conversions/torch_nn.py,sha256=WAq_hs1tb5OC4iGmVemXvo3qba_e1MJXxRzG9pNK2HI,2204
|
|
137
138
|
returnn/frontend/decoder/__init__.py,sha256=A-koKyPVlXp_V_2bk6GKZ1Xfv4rYIcfxGMXQHkHZiOQ,41
|
|
138
|
-
returnn/frontend/decoder/transformer.py,sha256=
|
|
139
|
+
returnn/frontend/decoder/transformer.py,sha256=64Z1IY_WcDuj8Ti73BGwbT_grrEpxBl5mIsBZkqJzHQ,24650
|
|
139
140
|
returnn/frontend/encoder/__init__.py,sha256=0QGLlujRIKx3zBREeShza_-xhGIxj73zbd7t-g1m-ho,17
|
|
140
141
|
returnn/frontend/encoder/base.py,sha256=A759EwCYAmSi-kzXz1vaTjR2l59TvNGQlzaNdp3UOKs,2109
|
|
141
|
-
returnn/frontend/encoder/conformer.py,sha256=
|
|
142
|
+
returnn/frontend/encoder/conformer.py,sha256=FQYXdeNaE8ZCiexAVNPk5fiP3x1gEOTzTga5N0HBcHo,21370
|
|
142
143
|
returnn/frontend/encoder/conformer_v2.py,sha256=vAYdT8m2Zzg3IIZZafeccClFHU1_c9T-EgBOsHadQPA,7701
|
|
143
144
|
returnn/frontend/encoder/e_branchformer.py,sha256=SZdhpb90FaQdpzgvSOtFPLbLCa0NdycbB5Z4vMoY4TM,12279
|
|
144
|
-
returnn/frontend/encoder/transformer.py,sha256=
|
|
145
|
+
returnn/frontend/encoder/transformer.py,sha256=0-ku9A8r_w3USQd0aAQ0fdPvFILNWcGaGZ7g3SE-Xjo,11656
|
|
145
146
|
returnn/import_/__init__.py,sha256=L2dKxWCcn0fz_7H7OS-zw5i5Yrljjjh_d61dEcFP_JY,243
|
|
146
147
|
returnn/import_/common.py,sha256=0cmvyd7NtMLH55IskEoSDtkcMwChxLhauV2UZ4mK68I,8148
|
|
147
148
|
returnn/import_/git.py,sha256=IXBVOybQAHf5OlMfVY6oZ-7eiDYPG0OR7MyDJKcVHSM,13961
|
|
148
149
|
returnn/import_/import_.py,sha256=q_NQRbfK5TsALakUxixE0SCqDccfGh6wkquCmJ-3s6w,798
|
|
149
150
|
returnn/sprint/__init__.py,sha256=bKRS04_tJdp-z6Rmv4Fm3hGD9M3UVRcXtvcS8VG12KA,64
|
|
150
|
-
returnn/sprint/cache.py,sha256=
|
|
151
|
+
returnn/sprint/cache.py,sha256=9QxVIUoDXo2WGkenof7vuh8vqBXShf0Dr4twiLsygaQ,34976
|
|
151
152
|
returnn/sprint/control.py,sha256=FFjpvoktLgp4ETxaMVKrwiegnAQLW5lD_VF4OG3ttUw,31133
|
|
152
153
|
returnn/sprint/error_signals.py,sha256=FvXscTpbLWKRKsK3slPT6QfU5FytLUNblB7Ogup_L7k,23348
|
|
153
154
|
returnn/sprint/extern_interface.py,sha256=l-v1X-Yg0UpTFe7Y3c4FwWOqpSNuv9Oy5EzqlKWUMlE,12055
|
|
154
155
|
returnn/sprint/interface.py,sha256=1j5SB0V8hSW8A5song9ciZtcBnZoKKfNipk9ezOIMuA,36491
|
|
155
156
|
returnn/tensor/README.md,sha256=X6BqcRLrPLPnwF9yR69uqIFrMnNluj9pBkOPHwNgzuo,501
|
|
156
157
|
returnn/tensor/__init__.py,sha256=on6j5PEOQpck50UcsR4nJzJSDmoVy34z1Oq4efv6Ax0,154
|
|
157
|
-
returnn/tensor/_dim_extra.py,sha256=
|
|
158
|
-
returnn/tensor/_tensor_extra.py,sha256=
|
|
158
|
+
returnn/tensor/_dim_extra.py,sha256=tHE3N6hUKqbzedJ8RNhn9aJHxvhTQuI9JckCLsPbKKI,116776
|
|
159
|
+
returnn/tensor/_tensor_extra.py,sha256=1UPNisRAbljkvfMcrEXaPAF-2Dz7AdgC3jAKVVAnAO8,165084
|
|
159
160
|
returnn/tensor/_tensor_mixin_base.py,sha256=H5z86I0NejxrSgMH1c5oXQzBqS6L9HpvP4y7oegBaSc,643
|
|
160
161
|
returnn/tensor/_tensor_op_overloads.py,sha256=HklwuTBjy7mH_665VKaCUdu-oC3aa7Uz1ZQiCz4jeZc,5448
|
|
161
162
|
returnn/tensor/control_flow_ctx.py,sha256=L9e32AfYDUDgsEDHL07thSFyYFqwhyVSqzE_bM03Y4M,5252
|
|
@@ -163,7 +164,7 @@ returnn/tensor/dim.py,sha256=652DlcSe6o6l5OyY5xt9Yigij_Xry-ToG9AemMX3roY,4208
|
|
|
163
164
|
returnn/tensor/marked_dim.py,sha256=Ae2hQIb5QixRU2gDhQEm0tmYt8TmomWoGERB414jR8o,1884
|
|
164
165
|
returnn/tensor/tensor.py,sha256=IIHbDu0D_aX8U4LKTm5ThD_fuoGhn98B9EyvVBsPJ3E,9083
|
|
165
166
|
returnn/tensor/tensor_dict.py,sha256=-20YPbXfRDE9WurkfQM-Mw6H8ouaBGL_90SDmK0b4cw,7534
|
|
166
|
-
returnn/tensor/utils.py,sha256=
|
|
167
|
+
returnn/tensor/utils.py,sha256=GoA4J7Cm8Q1e-NjkGEvCPMOqa4-KdCUjyGLnGTAPlDk,9957
|
|
167
168
|
returnn/tf/__init__.py,sha256=X4g2LFCFTl0uiybMRkfBY8AYkgMa6HX0vVxxTk0nMiE,88
|
|
168
169
|
returnn/tf/compat.py,sha256=NkAkdlR37m2d9qh3i33sIfEGilOaFBeCofAQpQwnZpY,1632
|
|
169
170
|
returnn/tf/data_pipeline.py,sha256=iNkNHv5PiGcudlajG8eO336rPD3hya5kWMDrjhWa4jA,36632
|
|
@@ -171,13 +172,13 @@ returnn/tf/distributed.py,sha256=PCLspuNg4XP4ZX3Q444IlohUJEy0Dc8rp8YlmDqVbEc,151
|
|
|
171
172
|
returnn/tf/engine.py,sha256=nhAMSEVUIf6Onm8jaRkT2CuY5XbOV5CEeWyOMUk67kY,146610
|
|
172
173
|
returnn/tf/horovod.py,sha256=Dpv_3wZxB8q8Gqk6xah4iJ4vKGKWWg1-7PPhpSMPlec,5404
|
|
173
174
|
returnn/tf/hyper_param_tuning.py,sha256=IfVRYYz-oSwOa2E7-vwh-pnWL4j-StHHbSYv7VbvcPE,31619
|
|
174
|
-
returnn/tf/native_op.py,sha256=
|
|
175
|
-
returnn/tf/network.py,sha256=
|
|
175
|
+
returnn/tf/native_op.py,sha256=LuwPj-0lMBDZeP9q79cI1FuIYudnMavUlKsTQWMrkl4,77382
|
|
176
|
+
returnn/tf/network.py,sha256=ZBo5qXOZHBJLjv2E8y9APeiRIpz5KEQdc6GN3rl6LBM,224668
|
|
176
177
|
returnn/tf/sprint.py,sha256=Yqjh0-6sCWHpdDPQCzHKx7TwQCOjJyjfd0KHtnYdd-8,5471
|
|
177
178
|
returnn/tf/updater.py,sha256=RcvoGnjBcObbLfLHH_mDRSY2lTeLyNoAFsZpHUiIgRY,72036
|
|
178
179
|
returnn/tf/frontend_layers/README.md,sha256=P4vVl_EK-4jT55m40mq-K4Nr9yFY0tJR5fmDzTHSDFE,1096
|
|
179
180
|
returnn/tf/frontend_layers/__init__.py,sha256=MGUn7rv6fOefbtkX-5pq6fC1T6Y5h0oh1uOPSEcv1_I,506
|
|
180
|
-
returnn/tf/frontend_layers/_backend.py,sha256=
|
|
181
|
+
returnn/tf/frontend_layers/_backend.py,sha256=tsCUuDGOXlEAPNXAz4dH-pxsKtEe_vKZRp3hfHvEr7k,47709
|
|
181
182
|
returnn/tf/frontend_layers/_utils.py,sha256=ijByaDOqPDod5mZC9EoTkt8PHBEODXHsWbkwDOF9XW4,4205
|
|
182
183
|
returnn/tf/frontend_layers/cond.py,sha256=bGd_g2tzpKXO218Xk-so59vFPJF-jF_ZvoZIU-1qBzw,14832
|
|
183
184
|
returnn/tf/frontend_layers/config_entry_points.py,sha256=t01RWOiaZohzuqPXX-MLV0P5yCOfE0dz-9dZ77_pK4c,5751
|
|
@@ -190,16 +191,16 @@ returnn/tf/frontend_layers/masked_computation.py,sha256=I_TW0Qm4Yl_wPZ6TkuK7a-wB
|
|
|
190
191
|
returnn/tf/frontend_layers/parameter_assign.py,sha256=B_7kgobRyFtExiuSy2MsVGpAR36-jdG-xKABGc6EUGM,5103
|
|
191
192
|
returnn/tf/frontend_layers/prev_tensor_ref.py,sha256=EqTAanOgYAhl8o2fMylN52mfReH9heAQFdzn9CwqAX4,2282
|
|
192
193
|
returnn/tf/frontend_low_level/__init__.py,sha256=34469k3KzMUIGowxReOZnbf6WdTjxY73Gp1a4WqDN1M,62
|
|
193
|
-
returnn/tf/frontend_low_level/_backend.py,sha256=
|
|
194
|
+
returnn/tf/frontend_low_level/_backend.py,sha256=Hv838I2eyOP2qVNWs5DJxseyxUbAET2lm0ZZcbW_CsE,24991
|
|
194
195
|
returnn/tf/layers/__init__.py,sha256=Ngu-X84nWFgz7ndDu88DqoZ-5lUMMTQWH4g7N8pSoCg,72
|
|
195
196
|
returnn/tf/layers/base.py,sha256=sUxEfh6WxaHWHG7O3cfxB6gG6YpEHkFKUJVayKvTBSI,152968
|
|
196
|
-
returnn/tf/layers/basic.py,sha256=
|
|
197
|
+
returnn/tf/layers/basic.py,sha256=ujn8ltTgEK4GDL8Y9CmtVSKXSnCCGdfx30-vGphBWFA,614275
|
|
197
198
|
returnn/tf/layers/rec.py,sha256=3f6M_5aAMPvx7aAHdPV3VSFRHf7tjpp8lrXSzmk1I5c,548435
|
|
198
199
|
returnn/tf/layers/segmental_model.py,sha256=wUyDZGr-eTVIIQWcsHLML0wtOxuWn_NFKOIrUKQcvoI,21515
|
|
199
200
|
returnn/tf/layers/signal_processing.py,sha256=vRlkN7k7otk9_Qdv0qr_l6V0VT5Q6dO2MxwZWb2HH2M,52693
|
|
200
201
|
returnn/tf/layers/variable.py,sha256=G1dIEoq0iQsXp-uOAUPTaBKHSOQfx7Sn-spD8MRv0HM,11446
|
|
201
202
|
returnn/tf/util/__init__.py,sha256=mEg5jNVbQBLO2TGwO4Ff2F5qQN5_Zg4hAAQfX5taeec,92
|
|
202
|
-
returnn/tf/util/basic.py,sha256=
|
|
203
|
+
returnn/tf/util/basic.py,sha256=ezK-XBKQcscVKmCL43wsieiUZntHUVOZwhDZtVItOqg,304088
|
|
203
204
|
returnn/tf/util/data.py,sha256=AlSa0r_IaXtjKG1q1vxUybFazpjt4lUX8LYq0STJv-w,29471
|
|
204
205
|
returnn/tf/util/gradient_checkpoint.py,sha256=_1NGAmNZ5NiGhFYVRWvBV5yejt-EZWbbvxNWHbESp5Q,7426
|
|
205
206
|
returnn/tf/util/ken_lm.py,sha256=R60UAoywriuDIeQ2Hk3Vm_waf2Hxxc88ofzEw6X6Sd4,17313
|
|
@@ -207,16 +208,16 @@ returnn/tf/util/open_fst.py,sha256=sZRDw4TbxvhGqpGdUJWy1ebvlZm4_RPhygpRw9uLAOQ,1
|
|
|
207
208
|
returnn/torch/README.md,sha256=jzJ2FpOHW02vxN69yKaV97C9LI-hmvjBglKfdZXIDdc,85
|
|
208
209
|
returnn/torch/__init__.py,sha256=MHEUyNHB20Vy89uKAqZoj6FxJKF1Gq3HW-i6ra1pNcI,24
|
|
209
210
|
returnn/torch/distributed.py,sha256=_lyJR71HIoCHpMi5GztGM7YwrX54Am8zSkjnDkE1Lbk,7524
|
|
210
|
-
returnn/torch/engine.py,sha256=
|
|
211
|
+
returnn/torch/engine.py,sha256=XaJhVpF181sf8M1iXAs3u0zr37VVUG3SW81-DIZgg3g,81280
|
|
211
212
|
returnn/torch/updater.py,sha256=nNd1mBPQyvIB096BEFi0KKmRI-U3jnRETzb743p2B9c,32064
|
|
212
213
|
returnn/torch/data/__init__.py,sha256=6cLNEi8KoGI12PF6akN7mI_mtjlx-0hcQAfMYoExwik,132
|
|
213
214
|
returnn/torch/data/extern_data.py,sha256=5al706ZaYtHWLp5VH2vS-rW69YXP3NHyOFRKY0WY714,7810
|
|
214
215
|
returnn/torch/data/pipeline.py,sha256=HgIL0jQsPcgvh_SPC4wQ6BzclmrnpFja-UiboF_GPN4,29459
|
|
215
216
|
returnn/torch/data/queued_data_iter.py,sha256=PoOsGHdHVZjTmcyfq_ZOw--P6hyfTdmAWIRGq_Z_nLM,888
|
|
216
|
-
returnn/torch/data/returnn_dataset_wrapper.py,sha256=
|
|
217
|
+
returnn/torch/data/returnn_dataset_wrapper.py,sha256=fMahf05G0SPYm6HxSQpVm8JhsIHons-i1Ce4aQv4IjM,8332
|
|
217
218
|
returnn/torch/data/tensor_utils.py,sha256=-Teqi--LLbt6q_5mDRdoHZHmPgSdC83W706ukif_YiU,1284
|
|
218
219
|
returnn/torch/frontend/__init__.py,sha256=AA48HZnC17ASuKA0EWy8loZ-Bib_yUtqF4T1wYvjst4,62
|
|
219
|
-
returnn/torch/frontend/_backend.py,sha256=
|
|
220
|
+
returnn/torch/frontend/_backend.py,sha256=e55BNxK4mAxl6nxK0mBR0IVkJUEFZ9wVJCvaIwAfT6A,107824
|
|
220
221
|
returnn/torch/frontend/_rand.py,sha256=1JgIkV2XmpgJD86zXZ-NCAe-QuoP2swr6NaS1oz3Qa8,1830
|
|
221
222
|
returnn/torch/frontend/bridge.py,sha256=c_mVBCBo29sjm8Bhxarv00szwGPgxjwoIqAHOmceGQw,7842
|
|
222
223
|
returnn/torch/frontend/raw_ops.py,sha256=lF0h-KtYYsdaaqQADylVZp9qzPskOOXA4MfmYDyx5IU,296
|
|
@@ -227,18 +228,19 @@ returnn/torch/util/README.md,sha256=AW-6ueWhgcwDcm57md6sm227QXNkvLnlRLwaH7NlS-w,
|
|
|
227
228
|
returnn/torch/util/__init__.py,sha256=AOXYUjzPm0XrzFJCPAXo9Jj_FvqD1XH3FfKtho80Vl8,26
|
|
228
229
|
returnn/torch/util/array_.py,sha256=ell3VZvn01SLtF9Pw2fvPzFNO-XDQ7tSB9VCrVSKmSA,2556
|
|
229
230
|
returnn/torch/util/debug_inf_nan.py,sha256=fmzSSTJJyLf7i5yDWRHLeDI0gxvadeqLE8RxMuSHx_4,6398
|
|
230
|
-
returnn/torch/util/diagnose_gpu.py,sha256=
|
|
231
|
-
returnn/torch/util/exception_helper.py,sha256=
|
|
231
|
+
returnn/torch/util/diagnose_gpu.py,sha256=_yswLmwR8Q2rCsv2jI5FUQNBT__453jBmiWYwazdu20,6808
|
|
232
|
+
returnn/torch/util/exception_helper.py,sha256=54IzlsXYp6E_rEEWIpgppkFid9stb-2PZVRU8d5mFNE,4497
|
|
232
233
|
returnn/torch/util/gradient_checkpoint.py,sha256=iLy-FB65DC8O6LxzmMvFjnSdpIVpko87ppIvRKAbtpQ,27995
|
|
233
234
|
returnn/torch/util/module.py,sha256=MXHIrF9Isu575DDJIa81212ULKwdqu1oOLxDVZecVSk,1693
|
|
234
235
|
returnn/torch/util/scaled_gradient.py,sha256=C5e79mpqtxdtw08OTSy413TSBSlOertRisc-ioiFIaU,3191
|
|
235
236
|
returnn/util/__init__.py,sha256=UIG1qw4idqhW71BV60ha7h9PktxvEVcBIu0lYRossK8,336
|
|
236
|
-
returnn/util/basic.py,sha256=
|
|
237
|
-
returnn/util/better_exchook.py,sha256=
|
|
237
|
+
returnn/util/basic.py,sha256=rFeg3XwjNcNDbBgjkhisStbjTFA8CEfIrdwHjfdkJKw,143212
|
|
238
|
+
returnn/util/better_exchook.py,sha256=hOKazwv2q2-d0XMfxkJXMbLZyNTtraV3jPHplFcrMsg,71014
|
|
238
239
|
returnn/util/bpe.py,sha256=LWFhICZsEOnMwNws0lybPNzKRX6rSr8yKCvP65vjl9Y,19656
|
|
239
|
-
returnn/util/
|
|
240
|
+
returnn/util/collect_outputs_dict.py,sha256=CjpsftoMgmvyE4wNKTO6F-QQ_44QHXcOZIXMUMQVZ-8,2637
|
|
241
|
+
returnn/util/debug.py,sha256=0ED4etMKG9lVqU0HPKEiCK-HoS8hBgnQza444QCE6ec,28576
|
|
240
242
|
returnn/util/debug_helpers.py,sha256=0EINLK4uLtoSt5_kHs1M2NIFpMd0S7i4c4rx90U4fJk,2914
|
|
241
|
-
returnn/util/file_cache.py,sha256=
|
|
243
|
+
returnn/util/file_cache.py,sha256=8xE4zMQi38g7ZIGwNohd13_CgjzpIs18ILxFCKttzxE,29439
|
|
242
244
|
returnn/util/fsa.py,sha256=k2lJ8tyf_g44Xk1EPVLwDwpP4spoMTqIigDVOWocQHY,59177
|
|
243
245
|
returnn/util/literal_py_to_pickle.py,sha256=3dnjWPeeiDT2xp4bRDgIf9yddx7b1AG7mOKEn_jiSl8,2173
|
|
244
246
|
returnn/util/lru_cache.py,sha256=7Q5H3a8b07E8e1iB7PA9jCpRnxMJZOFS2KO07cy0gqk,11446
|
|
@@ -250,11 +252,11 @@ returnn/util/py-to-pickle.cpp,sha256=ByU4cwy5MGEihaoYiRo1sSsJfYn10_riDwVqSHRLwp8
|
|
|
250
252
|
returnn/util/py_ext_mod_compiler.py,sha256=I1w9laIPqJbQGb2lFp-3llBjORS-217ZGIbPCp6PIes,1708
|
|
251
253
|
returnn/util/result_with_reason.py,sha256=6jS7caYrZADrb8o-CpQnTfskZb3fTNMcKU-JlnIh6Kg,359
|
|
252
254
|
returnn/util/sig_proc.py,sha256=Tjz0VOAVyqu2qDCF5HZ1JjALjcFsHcNkcd96WgZeKfE,7265
|
|
253
|
-
returnn/util/task_system.py,sha256=
|
|
255
|
+
returnn/util/task_system.py,sha256=7Dz7Nvi_1-o5pDv9OZYdAnlJw6OSvgbYUmQ72P0Fgkw,26002
|
|
254
256
|
returnn/util/train_proc_manager.py,sha256=Pjht28k6uz6BNQ47uW6Gf880iyq5q4wx7P_K2tmoAM8,3266
|
|
255
257
|
returnn/util/watch_memory.py,sha256=BR5P2kvBN6UI81cE0_1WAA6Hd1SByLbBaiDxvLhPOew,4213
|
|
256
|
-
returnn-1.
|
|
257
|
-
returnn-1.
|
|
258
|
-
returnn-1.
|
|
259
|
-
returnn-1.
|
|
260
|
-
returnn-1.
|
|
258
|
+
returnn-1.20260105.192646.dist-info/LICENSE,sha256=ywBD_U2aD4vpuoIgNAsjIGBYydl0tVKll3De0Z8s77c,11041
|
|
259
|
+
returnn-1.20260105.192646.dist-info/METADATA,sha256=jqFiOkEQgJcdKNaO9ISAulL31UxmgD3XbysYERiHCp0,5216
|
|
260
|
+
returnn-1.20260105.192646.dist-info/WHEEL,sha256=iAkIy5fosb7FzIOwONchHf19Qu7_1wCWyFNR5gu9nU0,91
|
|
261
|
+
returnn-1.20260105.192646.dist-info/top_level.txt,sha256=Lsn4WZc5Pbfk0-xDQOgnFCxOoqxL4CyeM3N1TFbJncw,8
|
|
262
|
+
returnn-1.20260105.192646.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|