Usando os Tokenizers do š¤ Tokenizers
O PreTrainedTokenizerFast
depende da biblioteca š¤ Tokenizers. O Tokenizer obtido da biblioteca š¤ Tokenizers pode ser carregado facilmente pelo š¤ Transformers.
Antes de entrar nos detalhes, vamos comeƧar criando um tokenizer fictĆcio em algumas linhas:
>>> from tokenizers import Tokenizer
>>> from tokenizers.models import BPE
>>> from tokenizers.trainers import BpeTrainer
>>> from tokenizers.pre_tokenizers import Whitespace
>>> tokenizer = Tokenizer(BPE(unk_token="[UNK]"))
>>> trainer = BpeTrainer(special_tokens=["[UNK]", "[CLS]", "[SEP]", "[PAD]", "[MASK]"])
>>> tokenizer.pre_tokenizer = Whitespace()
>>> files = [...]
>>> tokenizer.train(files, trainer)
Agora temos um tokenizer treinado nos arquivos que foram definidos. NĆ³s podemos continuar usando nessa execuĆ§Ć£o ou salvar em um arquivo JSON para re-utilizar no futuro.
Carregando diretamente de um objeto tokenizer
Vamos ver como aproveitar esse objeto tokenizer na biblioteca š¤ Transformers. A classe PreTrainedTokenizerFast
permite uma instanciaĆ§Ć£o fĆ”cil, aceitando o objeto tokenizer instanciado como um argumento:
>>> from transformers import PreTrainedTokenizerFast
>>> fast_tokenizer = PreTrainedTokenizerFast(tokenizer_object=tokenizer)
Esse objeto pode ser utilizado com todos os mĆ©todos compartilhados pelos tokenizers dos š¤ Transformers! VĆ” para a pĆ”gina do tokenizer para mais informaƧƵes.
Carregando de um arquivo JSON
Para carregar um tokenizer de um arquivo JSON vamos primeiro comeƧar salvando nosso tokenizer:
>>> tokenizer.save("tokenizer.json")
A pasta para qual salvamos esse arquivo pode ser passada para o mĆ©todo de inicializaĆ§Ć£o do PreTrainedTokenizerFast
usando o tokenizer_file
parĆ¢metro:
>>> from transformers import PreTrainedTokenizerFast
>>> fast_tokenizer = PreTrainedTokenizerFast(tokenizer_file="tokenizer.json")
Esse objeto pode ser utilizado com todos os mĆ©todos compartilhados pelos tokenizers dos š¤ Transformers! VĆ” para a pĆ”gina do tokenizer para mais informaƧƵes.