rxnn 0.1.70__py3-none-any.whl → 0.1.72__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.
rxnn/training/dataset.py CHANGED
@@ -75,14 +75,30 @@ class BaseDataset(Dataset):
75
75
  return self.__class__(subset, self.tokenizer, max_seq_len=self.max_seq_len, hf_field=self.hf_field, **kwargs)
76
76
 
77
77
  def pre_tokenize(self, verbose: bool = False, log_interval: int = 10_000):
78
+ """
79
+ Pre-tokenizes all the items in the dataset, for faster training. Training with pre-tokenized
80
+ dataset could be even 2x faster.
81
+
82
+ !! This method has extremely high memory usage, when used with HuggingFace datasets,
83
+ because of converting it to list. Additionally, for the most optimal performance,
84
+ pre-tokenized items are in reversed order - it shouldn't matter for training, as
85
+ items are shuffled then by DataLoader, but you should keep that in mind in case
86
+ of reproducibility.
87
+
88
+ :param(bool) verbose:
89
+ :param(int) log_interval: Interval of verbose logs
90
+ """
78
91
  if not self.is_pre_tokenized:
79
92
  num_texts = len(self.texts)
93
+ txts = self.texts if isinstance(self.texts, list) else self.texts.to_list()
94
+ del self.texts
95
+ self.texts = None
80
96
  for index in range(num_texts):
81
- self.inputs.append(self.texts.pop())
97
+ self.inputs.append(txts.pop() if isinstance(txts, list) else txts.pop()[self.hf_field])
82
98
  if verbose and index % log_interval == 0:
83
99
  print(f'Processed {index + 1}/{num_texts}')
84
100
  self.is_pre_tokenized = True
85
- self.texts = None
101
+
86
102
 
87
103
  @classmethod
88
104
  def from_hf_hub(
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: rxnn
3
- Version: 0.1.70
3
+ Version: 0.1.72
4
4
  Summary: RxNN: Reactive Neural Networks Platform
5
5
  License: Apache-2.0
6
6
  Keywords: deep-learning,ai,machine-learning
@@ -12,7 +12,7 @@ rxnn/training/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
12
12
  rxnn/training/base.py,sha256=xPMA2Bg9-oUZvSZg67ls2p7Gk9pZ9IHUiIJwUzSe2K8,11766
13
13
  rxnn/training/bml.py,sha256=S1ZaXTybzeJH7uVFamCr4TPl2bLyZ5xmn_lSsjThTiM,19162
14
14
  rxnn/training/callbacks.py,sha256=_YfMKY_eFdc-tubhO9nYH2PXDZDQwlSI74FVOoCXpQg,22108
15
- rxnn/training/dataset.py,sha256=6agBToOjWzJITVbvkrw8HnQYjVYcLPGIKmJqsE3YYRs,11535
15
+ rxnn/training/dataset.py,sha256=_Cjm2UMyTlSvfFcW0sKcpncfyfQ7taY2z8ulTQBMtwQ,12347
16
16
  rxnn/training/scheduler.py,sha256=ow6oALzWjWQmHSpcJEjv6tg4g4CDMvr73TypxfcefMc,712
17
17
  rxnn/training/tokenizer.py,sha256=umaLByMBx_NMrQElA45HLm9gkuzyKWDTFaKVd-CjXl0,8344
18
18
  rxnn/transformers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -25,7 +25,7 @@ rxnn/transformers/moe.py,sha256=j6jEx6Ip0zttlUZKKn82azxo95lkLZs-H2GLSMD88hY,5859
25
25
  rxnn/transformers/positional.py,sha256=2l38RS0Dini3f6Z3LUHr3XwWzg1UK7fO2C6wazWDAYU,4292
26
26
  rxnn/transformers/sampler.py,sha256=poWBpxg1iuK5gEJtxHkk5VVfS9V48hs2Olqdhy_Gw8c,6548
27
27
  rxnn/utils.py,sha256=d5U8i5ukovgDyqiycc2AoxObTz_eF_bgo2MKvdtJ98s,467
28
- rxnn-0.1.70.dist-info/LICENSE,sha256=C8coDFIUYuOcke4JLPwTqahQUCyXyGq6WOaigOkx8tY,11275
29
- rxnn-0.1.70.dist-info/METADATA,sha256=SCUi7IVRCNjC8hvQRipBdcmTaU-3_Jgch7ddi5sgS-o,16579
30
- rxnn-0.1.70.dist-info/WHEEL,sha256=fGIA9gx4Qxk2KDKeNJCbOEwSrmLtjWCwzBz351GyrPQ,88
31
- rxnn-0.1.70.dist-info/RECORD,,
28
+ rxnn-0.1.72.dist-info/LICENSE,sha256=C8coDFIUYuOcke4JLPwTqahQUCyXyGq6WOaigOkx8tY,11275
29
+ rxnn-0.1.72.dist-info/METADATA,sha256=rChGGtYmLdNaBS60ivjRKyzcaF05HBvNYoStu7L9dSE,16579
30
+ rxnn-0.1.72.dist-info/WHEEL,sha256=fGIA9gx4Qxk2KDKeNJCbOEwSrmLtjWCwzBz351GyrPQ,88
31
+ rxnn-0.1.72.dist-info/RECORD,,
File without changes
File without changes