MCPcopy Create free account
hub / github.com/zai-org/CodeGeeX / HgfTokenizerWrapper

Class HgfTokenizerWrapper

codegeex/megatron/tokenizer/tokenizer.py:217–258  ·  view source on GitHub ↗

Wrapper for Hugging Face tokenizer.

Source from the content-addressed store, hash-verified

215
216
217class HgfTokenizerWrapper(AbstractTokenizer):
218 """Wrapper for Hugging Face tokenizer."""
219
220 def __init__(
221 self,
222 tokenizer,
223 ws_start: int = None,
224 ws_len: int = None,
225 ):
226 super(HgfTokenizerWrapper, self).__init__(tokenizer.__class__.__name__)
227 self.tokenizer = tokenizer
228 self.ws_start = ws_start
229 self.ws_len = ws_len
230
231 def tokenize(self, text):
232 if self.ws_start:
233 text = encode_whitespaces(text, self.ws_start, self.ws_len)
234 input_ids = self.tokenizer(text, is_split_into_words=False).input_ids
235
236 return input_ids
237
238 def detokenize(self, token_ids):
239 text = self.tokenizer.decode(token_ids, skip_special_tokens=False)
240 if self.ws_start:
241 text = decode_whitespaces(text, self.ws_start, self.ws_len)
242 return text
243
244 @property
245 def eod(self):
246 return self.tokenizer.eos_token_id
247
248 @property
249 def inv_vocab(self):
250 return len(self.tokenizer.decoder)
251
252 @property
253 def vocab(self):
254 return self.tokenizer.vocab
255
256 @property
257 def vocab_size(self):
258 return len(self.vocab)

Callers 1

build_hgf_tokenizerFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected