CPM-Bee icon indicating copy to clipboard operation
CPM-Bee copied to clipboard

[BUG]text 中含有"<"时 tokenizer 报错,

Open uloveqian2021 opened this issue 2 years ago • 1 comments

运行下面的代码会报错,经过测试是因为含有"<" """ from cpm_live.models import CPMBeeTorch, CPMBeeConfig from cpm_live.tokenizers import CPMBeeTokenizer config = CPMBeeConfig.from_json_file("config/cpm-bee-10b.json") tokenizer = CPMBeeTokenizer() print(tokenizer._special_tokens) text = "if 成绩 < 60" tokens = tokenizer.tokenize(text) """

File "text_generation.py", line 28, in tokens = tokenizer.tokenize(text) File "/root/CPM-Bee/src/cpm_live/tokenizers/bee.py", line 143, in tokenize raise ValueError("Unexpected end of text {}".format(text)) ValueError: Unexpected end of text if 成绩 < 60

uloveqian2021 avatar May 30 '23 11:05 uloveqian2021

输入里的<需要替换为<<(除了<mask_0><sep>等特殊字符),我们稍后会更新下README。

zh-zheng avatar May 30 '23 12:05 zh-zheng

这样处理是否合理?很多代码相关的出现 < 频率很高,转义就改变含义了。还有一些html类的 有” <body> </a></li>“ 等,要写很多规则来判断是否转义

yssAI avatar Jun 06 '23 06:06 yssAI

这样处理是否合理?很多代码相关的出现 < 频率很高,转义就改变含义了。还有一些html类的 有”

“ 等,要写很多规则来判断是否转义

这些html无需判断直接转义即可,模型实际看到的不是<<,而是原始的<,不存在改变含义的情况。

zh-zheng avatar Jun 07 '23 02:06 zh-zheng

这样处理是否合理?很多代码相关的出现 < 频率很高,转义就改变含义了。还有一些html类的 有” “ 等,要写很多规则来判断是否转义

这些html无需判断直接转义即可,模型实际看到的不是<<,而是原始的<,不存在改变含义的情况。

要是代码中出现的左移操作<<要替换成<<<<吗?

yqli2420 avatar Jun 12 '23 02:06 yqli2420

这样处理是否合理?很多代码相关的出现 < 频率很高,转义就改变含义了。还有一些html类的 有” “ 等,要写很多规则来判断是否转义

这些html无需判断直接转义即可,模型实际看到的不是<<,而是原始的<,不存在改变含义的情况。

要是代码中出现的左移操作<<要替换成<<<<吗?

是的

zh-zheng avatar Jun 13 '23 05:06 zh-zheng