I am testing this piece of code:
from transformers import BertTokenizer, BertModel, BertForMaskedLM
tokenizer = BertTokenizer.from_pretrained("hfl/chinese-roberta-wwm-ext")
model = BertForMaskedLM.from_pretrained("hfl/chinese-roberta-wwm-ext")
from transformers import pipeline
def check_model(model, tokenizer):
fill_mask = pipeline(
"fill-mask",
model=model,
tokenizer=tokenizer
)
print('Fill blank: ')
fill_mask("我喜欢 {nlp.tokenizer.mask_token}.")
print('Fill blank: ')
fill_mask("这个品牌的面膜 {nlp.tokenizer.mask_token}.")
print('Check model ...')
check_model(model, tokenizer)
But it prints out this error message:
raceback (most recent call last):
File "/Users/congminmin/nlp/embedding/transformer/bert_roberta_wwm_test.py", line 21, in <module>
check_model(model, tokenizer)
File "/Users/congminmin/nlp/embedding/transformer/bert_roberta_wwm_test.py", line 15, in check_model
fill_mask("我喜欢 {nlp.tokenizer.mask_token}.")
File "/Users/congminmin/.venv/wbkg/lib/python3.7/site-packages/transformers/pipelines/fill_mask.py", line 162, in __call__
self.ensure_exactly_one_mask_token(masked_index.numpy())
File "/Users/congminmin/.venv/wbkg/lib/python3.7/site-packages/transformers/pipelines/fill_mask.py", line 90, in ensure_exactly_one_mask_token
f"No mask_token ({self.tokenizer.mask_token}) found on the input",
transformers.pipelines.base.PipelineException: No mask_token ([MASK]) found on the input