Transformers
tobiges commited on
Commit
f449002
·
verified ·
1 Parent(s): 4c3e4f2

Upload processor

Browse files
Files changed (2) hide show
  1. processing_action_tokenizer.py +14 -7
  2. tokenizer.json +0 -0
processing_action_tokenizer.py CHANGED
@@ -1,12 +1,14 @@
1
  import logging
 
2
  from typing import ClassVar
3
 
4
  import numpy as np
5
  from scipy.fft import dct, idct
6
- from tokenizers import ByteLevelBPETokenizer
7
  from tokenizers.trainers import BpeTrainer
8
  from transformers.processing_utils import ProcessorMixin
9
  from transformers import PreTrainedTokenizerFast
 
10
 
11
 
12
  class UniversalActionProcessor(ProcessorMixin):
@@ -131,22 +133,27 @@ class UniversalActionProcessor(ProcessorMixin):
131
  yield string
132
 
133
  # Train BPE tokenizer
134
- bpe = ByteLevelBPETokenizer()
135
-
 
 
 
 
136
  # Set up the entire range of possible tokens as the initial alphabet
137
- alphabet = [chr(i) for i in range(max_token - min_token + 1)]
138
  trainer = BpeTrainer(
139
  vocab_size=vocab_size,
140
  min_frequency=2,
141
  show_progress=True,
142
  special_tokens=[],
143
- initial_alphabet=alphabet,
144
  max_token_length=256,
145
  )
 
146
 
147
  # Train the inner tokenizer (don't use ByteLevelBPETokenizer.train_from_iterator()
148
  # because it doesn't support custom alphabets)
149
- bpe._tokenizer.train_from_iterator(_token_iter(), trainer=trainer)
150
  # trainer.train_from_iterator(_token_iter(), trainer=trainer)
151
  # bpe.train_from_iterator(
152
  # _token_iter(),
@@ -157,7 +164,7 @@ class UniversalActionProcessor(ProcessorMixin):
157
  # )
158
 
159
  return cls(
160
- PreTrainedTokenizerFast(tokenizer_object=bpe, clean_up_tokenization_spaces=False),
161
  scale=scale,
162
  vocab_size=vocab_size,
163
  min_token=min_token,
 
1
  import logging
2
+ from sre_parse import Tokenizer
3
  from typing import ClassVar
4
 
5
  import numpy as np
6
  from scipy.fft import dct, idct
7
+ from tokenizers import ByteLevelBPETokenizer, AddedToken, Tokenizer, decoders, pre_tokenizers, processors, trainers
8
  from tokenizers.trainers import BpeTrainer
9
  from transformers.processing_utils import ProcessorMixin
10
  from transformers import PreTrainedTokenizerFast
11
+ from tokenizers.models import BPE
12
 
13
 
14
  class UniversalActionProcessor(ProcessorMixin):
 
133
  yield string
134
 
135
  # Train BPE tokenizer
136
+ # bpe = ByteLevelBPETokenizer()
137
+ tokenizer = Tokenizer(BPE())
138
+ tokenizer.pre_tokenizer = pre_tokenizers.ByteLevel()
139
+ tokenizer.decoder = decoders.ByteLevel()
140
+ tokenizer.post_processor = processors.ByteLevel()
141
+
142
  # Set up the entire range of possible tokens as the initial alphabet
143
+ # alphabet = [chr(i) for i in range(max_token - min_token + 1)]
144
  trainer = BpeTrainer(
145
  vocab_size=vocab_size,
146
  min_frequency=2,
147
  show_progress=True,
148
  special_tokens=[],
149
+ initial_alphabet=pre_tokenizers.ByteLevel.alphabet(),
150
  max_token_length=256,
151
  )
152
+ tokenizer.train_from_iterator(_token_iter(), trainer=trainer, length=len(dct_tokens))
153
 
154
  # Train the inner tokenizer (don't use ByteLevelBPETokenizer.train_from_iterator()
155
  # because it doesn't support custom alphabets)
156
+ # bpe._tokenizer.train_from_iterator(_token_iter(), trainer=trainer, length=len(dct_tokens))
157
  # trainer.train_from_iterator(_token_iter(), trainer=trainer)
158
  # bpe.train_from_iterator(
159
  # _token_iter(),
 
164
  # )
165
 
166
  return cls(
167
+ PreTrainedTokenizerFast(tokenizer_object=tokenizer, clean_up_tokenization_spaces=False),
168
  scale=scale,
169
  vocab_size=vocab_size,
170
  min_token=min_token,
tokenizer.json CHANGED
The diff for this file is too large to render. See raw diff