Closed yifanjun closed 2 years ago
我的transformers
版本是4.15.0。通过查看BertTokenizer
类的__init__()
源码可知,ids_to_tokens
不在vocab
里面。
self.vocab = load_vocab(vocab_file)
self.ids_to_tokens = collections.OrderedDict([(ids, tok) for tok, ids in self.vocab.items()])
可能我问了个很蠢的问题,但我确实不知道怎么处理。 在进行第五步训练时,会报错,说 "models/rl.model.py"第499行: AttributeError: 'collections.OrderedDict' object has no attribute 'ids_to_tokens' 不太明白是不是因为版本原因。除了pytorch是1.9.0+cu111,其他的包我尝试都换成readme中的版本。请问有人遇到过这个问题么?
能提供详细的Error Log吗?
我的
transformers
版本是4.15.0。通过查看BertTokenizer
类的__init__()
源码可知,ids_to_tokens
不在vocab
里面。self.vocab = load_vocab(vocab_file) self.ids_to_tokens = collections.OrderedDict([(ids, tok) for tok, ids in self.vocab.items()])
感谢,很有用。下面给出具体方案:
在src/models/rl_model.py
中,做出以下修改:
from nltk import collections
__inti__()
方法中,在self.vocab=vocab
之后添加self.ids_to_tokens=collections.OrderedDict([(ids, tok) for tok, ids in self.vocab.items()])
words = [self.ids_to_tokens[w] for w in words]
可能我问了个很蠢的问题,但我确实不知道怎么处理。 在进行第五步训练时,会报错,说 "models/rl.model.py"第499行: AttributeError: 'collections.OrderedDict' object has no attribute 'ids_to_tokens' 不太明白是不是因为版本原因。除了pytorch是1.9.0+cu111,其他的包我尝试都换成readme中的版本。请问有人遇到过这个问题么?