huggingface tokenizer错误
如果继承了Tokenizer例如mTokenizer(GPT2Tokenizer),在__init__中加入了一些新tokens,这样在save之后from_pretrained时不能用mTokenizer.from_pretrained,会报错。
AssertionError: Non-consecutive added token '<|b_img|>' found. Should have index 50317 but has index 50257 in saved vocabulary.
这是因为from_pretrained调用时是先初始化实例,再从本地文件中加载词表,因此mTokenizer初始化时会加入新tokens,而从本地词表中又会再加一次,导致了重复。最好的做法是把加新tokens的过程移出__init__。