transformers/docs/source/pt/fast_tokenizers.md

2.9 KiB

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.